edison-fw / meta-intel-edison

Here is the meta-intel-edison that builds, tries to stay up to date. Master is based on Yocto Poky Gatesgarth LTS 5.10.yy vanilla kernels. It builds a 32bit kernel (Gatesgarth branch 64bit) with ACPI enabled and corresponding rootfs. Telegram group: https://t.me/IntelEdison Web-site:
https://edison-fw.github.io/meta-intel-edison/
MIT License
60 stars 37 forks source link

Pyro64 acpi #16

Closed htot closed 6 years ago

htot commented 6 years ago
  1. This builds acpi enabled u-boot and kernel.
  2. The updated u-boot 2018.01 will build for x86_64 without needing multilib so just bitbake u-boot is enough.
  3. I think if we add a DEPENDS in edison-image.conf it will build automatically.
  4. You can easily build either u-boot or kernel without acpi, I put the hashes in the comments in the recipe.
  5. You can disable by setting in u-boot acpi=off on the kernel command line
  6. You can boot your earlier kernel with the acpi u-boot, but then you must set acpi=off
  7. New acpi kernel also boots on non-acpi u-boot.
  8. Bluetooth should work without btattach (currently systemd service)

Problems:

  1. bluetooth doesn't work and creates an oops, have not identified why not, acc. to @andy-shev it should work
  2. i2c is weird, maybe it needs the asl from meta-acpi, or there is a bug

Todo:

  1. Figure out how to create asl package and install into initramfs
andy-shev commented 6 years ago

Personally I don't think it's a good idea to support ACPI stuff in main branch. ACPI is quite experimental and may break things. I would definitely not recommend to use it right now for anything, except development and testing.

htot commented 6 years ago

I think it might make sense to put put master branch -> legacy, pyro64->master and keep pyro64 and pyro64-acpi as experimental

andy-shev commented 6 years ago

Up to you, my concern is to not mix ACPI vs. non-ACPI stuff for now.

htot commented 6 years ago

@alext-mkrs can we create a variable for the conf file that enables the build of acpi enabled kernel, u-boot and installs aml, while by default no acpi?

alext-mkrs commented 6 years ago

Yes, I think there's a way to do that, but I'll need to look up specific variables/classes to use, I'm not near tye computer right now - will look into that tomorrow or over the wekend.

htot commented 6 years ago

I am currently trying this:

SRCREV ??= "${@bb.utils.contains('DISTRO_FEATURES', 'acpi', '47fcae6e94a42b34d4a0d491b88dda3607261070', '35488d97cc867fdf020aed23eb8d62ab3a273c74', d)}"
LINUX_VERSION_EXTENSION ??= "${@bb.utils.contains('DISTRO_FEATURES', 'acpi', '-edison-acpi-${LINUX_KERNEL_TYPE}', '-edison-no-acpi-${LINUX_KERNEL_TYPE}', d)}"

with 'acpi' added to DISTRO_FEATURES in poky-edison.conf

htot commented 6 years ago

I hope to have tackled the acpi/no-acpi selection and for no-acpi retrieving u-boot from upstream.

alext-mkrs commented 6 years ago

...github didn't fully refresh the page before my last comment, so I didn't see you went the direct assignment way with LINUX_VERSION_EXTENSION - that looks ok to me. I'll test this PR today and report back.

alext-mkrs commented 6 years ago

Non-acpi builds fine (kernel, u-boot and image), checking the acpi one now.

alext-mkrs commented 6 years ago

ACPI-enabled build ok as well, haven't yet tried to run those.

htot commented 6 years ago

This PR is getting quite messy with comments. Shall I close it and reopen a new?

alext-mkrs commented 6 years ago

There's a better way - just squash all your commits created by now and force-push to the same branch. GH will update the PR and mark all the inline comments as obsolete + hide them by default.

htot commented 6 years ago

I'll rewrite the history

htot commented 6 years ago

Rearranged and squashed some commits. No functional changes intended.

htot commented 6 years ago

Thanks for reviewing!

alext-mkrs commented 6 years ago

My pleasure. Sorry I wasn't able to check out the post-squashing version yet, but as that's just housekeeping, it should be ok.