libertas firmware naming confusing

Johannes Berg
2009-05-22T08:02:44Z

[-- Attachment #1: Type: text/plain, Size: 1776 bytes --]

Hi,

I noticed yesterday that you updated the page at
http://wireless.kernel.org/en/users/Drivers/libertas to say the
following two things about firmware:

USB
* The Linux firmware tree contains libertas/usb8388_v5.bin and
libertas/usb8388_v9.bin. The firmware image must be placed
in /lib/firmware/usb8688.bin. The firmware image can also be
downloaded from OLPC's libertas firmware page.

GSPI
* The GSPI firmware is available in the Linux firmware tree. Copy
libertas/gspi8686_v9_helper.bin
to /lib/firmware/libertas/gspi8686_hlp.bin and
libertas/gspi8686_v9.bin
to /lib/firmware/libertas/gspi8686.bin.

This runs counter to the entire idea of the linux-firmware tree that the
tree is a drop-in for /lib/firmware/ (or wherever you need it on your
distribution) -- the tree should always contain the exact filenames as
required by the kernel drivers. Maybe this needs to be clarified more.
Additionally, if there's a need for different versions of a firmware,
then the driver should detect which one is required for the device, if
it's for different features it should select a good default and possibly
give the option to override it.

In this case, I suspect two things are needed:
1) rename the GSPI firmware files in the linux-firmware tree to match
what the driver loads, and document outside the filename what
version they are;
2) in the USB case change the driver to load libertas/usb8688.bin
instead of just usb8688.bin and move one of the versions to that
filename in the linux-firmware tree.

The current situation is very stupid -- users can find the firmware in a
proper repository but it doesn't work out of the box!

johannes

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 801 bytes --]