[PATCH][RFC] request_firmware examples and MODULE_FIRMWARE

From: Victor Hugo
Date: Mon Sep 04 2006 - 05:53:02 EST


Hi Everyone,

I'm trying to become the firmware loader maintainer (request_firmware) and I felt the first thing I should do is update the incomplete example driver under Documentaion/firmware_class/. The example (firmware_sample_driver.c) doesn't work out of box and needs tweaking just to get it to compile. I've added two files which use request_firmware and the asynchronous request_firmware_nowait.

The next step would be to update the documentation to make hotplug/ udev functionality a little more clear. Hopefully I can get this in the next couple of days.

Also, I'd like to comment on Jon Masters push to include the MODULE_FIRMWARE api addition. I strongly believe that policy should not be included in driver code, in this case it's in the form of a filename.

The firmware loader currently needs a filename passed to it so it can then pass the $FIRMWARE environment variable to the hotplug script. This is ok if you provide a generic filename like "firmware.bin" and then let the hotplug script worry about version numbers, i.e. "firmware-x.y.z.bin"

MODULE_FIRMWARE should be used to provide the generic filenames and which order the files should be loaded (request_firmware can be called various times), but I think its bad to have to change the driver everytime a new firmware version is released.

That said, here's the patch...

Attachment: firmware_examples.patch
Description: Binary data