Hi, Could you please mark sys-boot/raspberrypi-firmware-1.20190215 ~arm64 ? Thanks
Hi arm64 team, Could you please review this keywording request? The version 1.20190709 enabled booting RPi4.
src_install() { insinto /boot cd boot || die doins bootcode.bin fixup*.dat start*elf doins *.dtb doins -r overlays That doins *.dtb line will break an arm64 install. The 32 bit and 64 bit .dtb files have the same name but different content. The error is not fatal. A 64 bit install with a 32 bit dtb only boots on one core, so its noticed. I'm not sure if the overlays differ between arm32 and arm64. They are all built with the kernel anyway so the dtb and dto files from the 64 bit kernel should be used in place of the 32 bit files provided by the Raspberry Pi Foundation. The bug has 1.20190709 in the title and 1.20190215 in the opening report. The both do the same with doins *.dtb and doins -r overlays. <nit> The Pi4 does not use bootcode.bin, even if its present. It has firmware instead. We probably don't want a USE=Pi4 flag though.</nit> Until the Raspberry Pi Foundation provide 64 bit kernel related bits and pieces, this ebuild should not install the overlays or device tree binaries on arm64. It could contain an ewarn for 64 bit users though.
Thanks for looking at this, Roy! I can change the ebuild to follow the example of Sakaki's sys-boot/rpi3-64bit-firmware, which results in the installation which works well on arm64. It uses the same RPi Foundation repo as the source, but doesn't install *.dtb, and has an option to not install overlays/.
Andrey, That would get my ACK. Do it and commit it as it will be ~arm64. I don't have commit access.
Slowly working. These two commits set the approach. Will instantiate non-9999 ebuild from 9999 later. https://github.com/andrey-utkin/gentoo/commit/7348ab91510c5c59aa7a62d38a0ef3fd1d9e0443 https://github.com/andrey-utkin/gentoo/commit/f38e41a3e68923b652b9e937dad7a5414e9fd9e5 News item pending, for users of raspberrypi-firmware but not -image.
This works. bootcode.bin fixup*.dat and start*elf run on the GPU, which is common to all the Pis so far. That's arch agnostic. This bit gets ~arm and ~arm64 keywords. The kernel, its modules, dtb and device tree overlays go with the kernel. Thats ~arm only as there is no Pi Foundation arm64 kernel. Yet. 32 bit Pi users then need both. 64 bit pi users need the firmware ebuild only There is another way, thats maybe simpler for users. Leave the existing ebuild as is and keep it 32 bit only. Add another ebuild that does not install the kernel bits and pieces. And a third way ... In one ebuild. The profile will set either the arm or arm64 USE flags. USE=arm gets everything USE=arm64 does not get the kernel elements. Both of these avoid a news item. Both require no special user action. USE=arm64 could generate an ewarn about the missing kernel. That's the systems design. I'm not qualified on ebuilds and you are doing the work. Keep up the good work and do it your way.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/data/gentoo-news.git/commit/?id=70ccc4b634856aa9bcc568162765d19d39bc8d50 commit 70ccc4b634856aa9bcc568162765d19d39bc8d50 Author: Andrey Utkin <andrey_utkin@gentoo.org> AuthorDate: 2019-11-25 23:14:44 +0000 Commit: Andrey Utkin <andrey_utkin@gentoo.org> CommitDate: 2019-12-03 13:28:26 +0000 2019-11-25-rpi-firmware-dtb-files: add news item Bug: https://bugs.gentoo.org/685412 Signed-off-by: Andrey Utkin <andrey_utkin@gentoo.org> .../2019-11-25-rpi-firmware-dtb-files.en.txt | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+)
Forgot to refer to this bug in the ebuild work. Here are the commits which have been pushed a minute ago: f524aeeb2101 sys-kernel/raspberrypi-image: add new version 4.19.75_p20190925 f4d574d2cd56 sys-boot/raspberrypi-firmware: add new version 1.20190925 b8e400e247f9 sys-kernel/raspberrypi-image: install device tree blobs 1618c312961d sys-boot/raspberrypi-firmware: don't install device tree blobs Forgot to do what Roy proposed, to put ~arm64 into sys-boot/raspberrypi-firmware-1.20190925 . I would love some practical testing on arm64 from someone (so far I have only tested an upgrade on 32-bit arm). Then we'll keyword sys-boot/raspberrypi-firmware-1.20190925 actually.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c90506d8deb77f96a62ba99c0f4d9dfb3ac2a91d commit c90506d8deb77f96a62ba99c0f4d9dfb3ac2a91d Author: Andrey Utkin <andrey_utkin@gentoo.org> AuthorDate: 2019-12-30 22:31:50 +0000 Commit: Andrey Utkin <andrey_utkin@gentoo.org> CommitDate: 2019-12-30 22:33:04 +0000 sys-boot/raspberrypi-firmware: add ~arm64 keyword Per approval of the approach by neddyseagoon, as expressed in the link given below. Acked-by: Roy Bamford <neddyseagoon@gentoo.org> Link: https://bugs.gentoo.org/685412#c4 Closes: https://bugs.gentoo.org/685412 Package-Manager: Portage-2.3.66, Repoman-2.3.16 Signed-off-by: Andrey Utkin <andrey_utkin@gentoo.org> sys-boot/raspberrypi-firmware/raspberrypi-firmware-1.20190925.ebuild | 2 +- sys-boot/raspberrypi-firmware/raspberrypi-firmware-9999.ebuild | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)