On Mon, May 04, 2020 at 01:26:35PM +0300, Doron Behar wrote:
I hope this question fits to this List.
Today I learned that my distro's `linux-unfree-firmware` package is 491 Mb in size. I'm pretty sure my hardware doesn't need all of these files. Maybe different Linux distros call this package differently, but I'm talking about the firmware files that come from: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/
I think I can reduce this disk usage if I'll only know what files I can exclude from there.
Is there any official documentation, that states exactly what files from That git repo are needed per device / computer model? Perhaps the official documentation of my Computer's hardware will state that? There's a Linux from scratch webpage[1] that gives some info for popular hardware, but I'm wondering if there's a bit more "official" information available somewhere.
[1]: http://linuxfromscratch.org/blfs/view/svn/postlfs/firmware.html
The kernel macro MODULE_FIRMWARE() will show the firmware file that a specific kernel module needs. So if you look a the output of modinfo for all of the modules that your system needs, you will see a "firmware" line that shows the name that your hardware needs for that specific driver/module. Just take those specific files and put them on your disk and you should be fine. Note, I think tools that generate initrd images can do this automatically, so perhaps you should look at what they do as an example for this. Hope this helps, greg k-h