bootstrap-managarm
bootstrap-managarm copied to clipboard
bootstrap, sys-firmware: Add various linux-firmware packages
Why do we need linux-firmware on managarm?
One nitpick: amd-ucode is the only package not prefixed with linux-firmware
. Is there a particular reason for this?
Why do we need linux-firmware on managarm?
I plan on attempting to bring up a Radeon card, which would require firmware files from the amdgpu
(and maybe the radeon
) folder.
(For context, the nvidia card I was writing a driver for broke, so that plan has died)
In addition, there really is no point in not adding packages for other drivers such as i915. @no92 is also working on a intel GPU driver, which may require firmware files from the i915
folder.
The amd-ucode package was made simply because I could, and loading microcode at some point would probably be a good idea :meme:
One nitpick: amd-ucode is the only package not prefixed with
linux-firmware
. Is there a particular reason for this?
Convention; most distributions do this, probably because the intel equivalent (which is not made with linux-firmware) is called intel-ucode
Legality question, can we redistribute this as a binary package? Or would that pose issues? @ArsenArsen @avdgrinten. This in connection to xbbs obviously.
Legality question, can we redistribute this as a binary package? Or would that pose issues? @ArsenArsen @avdgrinten
As far as I know, it is presumed that all (or at least most) files in linux-firmware are at least redistributable. The files I picked out with the packages are all redistributable.
some of them, see https://gitweb.gentoo.org/repo/gentoo.git/tree/sys-kernel/linux-firmware/linux-firmware-20230804.ebuild (specifically, stuff affected by the bindist and redistributable flags).
Bump here again, an intel-lil GPU driver would benefit from having the GuC and HuC firmware blobs, which we would need to supply. Loading CPU microcode would also be interesting to do at some point.
As mentioned before, all packages created here only contain firmware files which are redistributable.