{"action":"created","issue":{"url":"https://api.github.com/repos/westeri/meta-acpi/issues/7","repository_url":"https://api.github.com/repos/westeri/meta-acpi","labels_url":"https://api.github.com/repos/westeri/meta-acpi/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/westeri/meta-acpi/issues/7/comments","events_url":"https://api.github.com/repos/westeri/meta-acpi/issues/7/events","html_url":"https://github.com/westeri/meta-acpi/pull/7","id":292590782,"number":7,"title":"acpi-tables.bb extended with package generation and scripts","user":{"login":"htot","id":16038284,"avatar_url":"https://avatars0.githubusercontent.com/u/16038284?v=4","gravatar_id":"","url":"https://api.github.com/users/htot","html_url":"https://github.com/htot","followers_url":"https://api.github.com/users/htot/followers","following_url":"https://api.github.com/users/htot/following{/other_user}","gists_url":"https://api.github.com/users/htot/gists{/gist_id}","starred_url":"https://api.github.com/users/htot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/htot/subscriptions","organizations_url":"https://api.github.com/users/htot/orgs","repos_url":"https://api.github.com/users/htot/repos","events_url":"https://api.github.com/users/htot/events{/privacy}","received_events_url":"https://api.github.com/users/htot/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-01-29T22:53:46Z","updated_at":"2018-02-04T11:02:42Z","closed_at":"2018-02-01T17:12:09Z","author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/westeri/meta-acpi/pulls/7","html_url":"https://github.com/westeri/meta-acpi/pull/7","diff_url":"https://github.com/westeri/meta-acpi/pull/7.diff","patch_url":"https://github.com/westeri/meta-acpi/pull/7.patch"},"body":"@andy-shev This is on top of the patches I added earlier to include edison sample tables.\r\n\r\nHeads up - I rebased today on westeri/meta-acpi/master.\r\n\r\nI extended the original recipe with building a package (the package type is selected elsewhere in the config, YP default is ipk but we use deb). This does not change anything to the generated cpio. \r\n\r\nThe generated package sits harmless in the YP build system and is only installed when added to the system image edison-image.bb using IMAGE_INSTALL += \"acpi-tables\" or better IMAGE_INSTALL_append as I learned from @alext-mkrs.\r\n\r\nThis also installs a systemd service that can be enabled to start on boot and executes a script that copies all acpi-tables to configfs.\r\n\r\nAdditional aml's can also be copied manually to /kernel/firmware/acpi/ and will be loaded into the kernel on the next reboot. Also I think users should be able to easily bbappend the recipy to add their own asl tables for inclusion into their system image.\r\n\r\nI tested this by manually building `'bitbake acpi-tables'`, copying the `acpi-tables_1.0-r0_amd64.deb` over to edison and install using `'dpkg -i acpi-tables_1.0-r0_amd64.deb'`\r\n\r\nWith this extension to the meta-acpi layer and configfs enabled in the kernel we have acpi support working for edison. Functionally nothing else is needed. I hope @alext-mkrs is willing to review this.\r\n\r\nAlso this same method should work on the other supported platforms as well when configfs is enabled, it is independent of the boot loader and kernel image generation.\r\n"},"comment":{"url":"https://api.github.com/repos/westeri/meta-acpi/issues/comments/362898523","html_url":"https://github.com/westeri/meta-acpi/pull/7#issuecomment-362898523","issue_url":"https://api.github.com/repos/westeri/meta-acpi/issues/7","id":362898523,"user":{"login":"alext-mkrs","id":6135723,"avatar_url":"https://avatars2.githubusercontent.com/u/6135723?v=4","gravatar_id":"","url":"https://api.github.com/users/alext-mkrs","html_url":"https://github.com/alext-mkrs","followers_url":"https://api.github.com/users/alext-mkrs/followers","following_url":"https://api.github.com/users/alext-mkrs/following{/other_user}","gists_url":"https://api.github.com/users/alext-mkrs/gists{/gist_id}","starred_url":"https://api.github.com/users/alext-mkrs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alext-mkrs/subscriptions","organizations_url":"https://api.github.com/users/alext-mkrs/orgs","repos_url":"https://api.github.com/users/alext-mkrs/repos","events_url":"https://api.github.com/users/alext-mkrs/events{/privacy}","received_events_url":"https://api.github.com/users/alext-mkrs/received_events","type":"User","site_admin":false},"created_at":"2018-02-04T11:02:42Z","updated_at":"2018-02-04T11:02:42Z","author_association":"CONTRIBUTOR","body":"Okay, so let me try to summarize our discussions here and in https://github.com/alext-mkrs/meta-acpi/pull/1 and propose the next steps.\r\n\r\n1. `meta-acpi` is rather *not* envisioned as a BSP-type layer. It ideally shouldn't be building kernel or U-Boot, or anything similar, directly. It should depend on respective BSP layers like `meta-intel` for that. It should only focus on adding ACPI functionality and contain only ACPI-related full recipes/overrides/appends. Those should be written so as to detect which `MACHINE` we build for right now, and - if it's supported by `meta-acpi` - build respective ACPI tables and whatever else is needed to enable ACPI on that specific machine;\r\n    1. To that end, given that `meta-intel`'s kernel is new enough these days, we want to remove kernel-building recipes from `meta-acpi` (disable by default - as a first step);\r\n    1. There's an open question of what to do with U-Boot, as there's no support for it in `meta-intel` right now and builds may be quite board-specific. However if the main idea described above is implemented, for `meta-acpi` it will be \"don't care\" - it should just provide necessary overrides/appends to build an ACPI-enabled U-Boot _if_ it is enabled in the BSP layer in use (the list of supported ones should be explicit);\r\n1. We want to add Edison machine support to the layer, along with the respective ACPI table samples;\r\n\r\nSo my proposal is to create a set of records in this repo's issues tracker for:\r\n1. Kernel build removal (making it optional and switched off by default);\r\n1. Adding Edison `MACHINE` support - only sample ACPI tables and a way to bundle/activate them. Maybe in a way @htot proposed, loading through configfs + systemd service to do that. Alternative is loading from initramfs, but it's not clear whether that's possible (initial tests were unsuccessful). If systemd way is used - the recipe must use Yocto's `systemd` class to do proper build-time feature detection and unit file deployment without doing all of that manually;\r\n1. Adding U-Boot overrides/appends for enabling ACPI build (and removing this piece from `meta-intel-edison`), just for Edison as the first step;\r\n1. Adding kernel overrides/appends for enabling ACPI build (and removing this piece from `meta-intel-edison`), just for Edison as the first step;\r\n1. Adding kernel overrides/appends for enabling ACPI build (and removing this piece from `meta-intel-edison`) for the rest of the boards supported by `meta-acpi` (longer-term one);\r\n\r\nDoes that make sense? What do you think? If we are in a consensus, I'll create those trackers and we'll be able to discuss specific technical solutions for those there, picking stuff from this PR and https://github.com/alext-mkrs/meta-acpi/pull/1."}}
{"actor":{"display_login":"alext-mkrs"}}