You are not logged in.

#1 2016-01-02 23:39:33

markus_03
Member
Registered: 2016-01-02
Posts: 10

Find firmware blobs

Hi,

I am looking for a way to find loaded firmware blobs on a system.

As far as I understand, there are some drivers in the linux kernel that contain binary blobs to function correctly.
However, if I am not mistaken, those are only loaded if I am actually using hardware that requires the specific firmware blobs.

So I am trying to find out if that is the case on a specific maschine.

Does anyonw know a way to find this information?

Thanks

Offline

#2 2016-01-03 00:47:59

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,523
Website

Re: Find firmware blobs

I don't know if there are better ways, but the following will show the license and filename of every loaded module:

modinfo $(lsmod | cut -d' ' -f 1) | awk '/filename/{fn=$2;} /license/{print $2, fn;}'

Anything with a GPL license (all on my system) should not be able to have binary blobs, so you could filter those out.  Perhaps other licenses would be filtered out as well.

But I'm not sure that the kernel itself is blob-free - but if you are only interested in those loaded as modules, this should do it.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#3 2016-01-03 02:08:06

markus_03
Member
Registered: 2016-01-02
Posts: 10

Re: Find firmware blobs

Trilby wrote:

I don't know if there are better ways, but the following will show the license and filename of every loaded module:

modinfo $(lsmod | cut -d' ' -f 1) | awk '/filename/{fn=$2;} /license/{print $2, fn;}'

Anything with a GPL license (all on my system) should not be able to have binary blobs, so you could filter those out.  Perhaps other licenses would be filtered out as well.

But I'm not sure that the kernel itself is blob-free - but if you are only interested in those loaded as modules, this should do it.


It says GPL for all modules on my system as well, however I am not sure that says something, as a GPL driver might still require binary blobs even though it has a GPL license.

Also the (vanilla) kernel is not considered blob-free but depending on who you ask, the modules are a part of the kernel.

When looking at distros that use linux-libre, which removes all binary-blobs, it seems they remove some modules so if you consider the modules to not be a part of the kernel, then the kernel is probably blob-free.

Maybe I should try to get a list of non free moduls from the linux-libre project and compare them to my list of loaded modules.

Last edited by markus_03 (2016-01-03 04:19:41)

Offline

#4 2016-01-03 13:23:34

Head_on_a_Stick
Member
From: London
Registered: 2014-02-20
Posts: 7,732
Website

Re: Find firmware blobs

Parabola supply a blob-free Arch kernel.
https://www.parabola.nu/packages/?sort= … =&flagged=

Offline

#5 2016-01-03 17:42:21

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: Find firmware blobs

firmware blobs are in the linux-firmware package, check it's licenses folder.
if your hardware doesn't have it's own specific license, it should be GPL2 or GPL3 .

If you have an intel processor, also look at intel-ucode.

Last edited by Lone_Wolf (2016-01-03 17:42:43)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#6 2016-01-03 23:24:15

markus_03
Member
Registered: 2016-01-02
Posts: 10

Re: Find firmware blobs

Head_on_a_Stick wrote:

Parabola supply a blob-free Arch kernel.
https://www.parabola.nu/packages/?sort= … =&flagged=


Thats for the info, I didn't know that one.

However I don't really care about blob-free software. I would just like to detect the use of those blobs.

Offline

Board footer

Powered by FluxBB