What is the minimal set of firmware files I need for my hardware?

Greg KH greg at kroah.com
Mon May 4 06:45:55 EDT 2020


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



More information about the Kernelnewbies mailing list