Firmware taken out of all-firmware to separate PETs
---------------------------------------------------

The directories inside /lib/modules/all-firmware are the "firmware" needed by modems.
Actually, this can be any data-files, scripts, configuration or even binary-executables.

This "firmware" has been kept in the Woof repository, however the Fossil Version
Control System Sqlite repository is not the most appropriate place.

So, I am in the process of taking them out, to separate PETs. A Woof developer would
include these PETs in the package-list, so they will be built-in to the build of Puppy.

Note, the developer would of course choose an appropriate list of firmware PETs to
include. For example, the "hsfmodem" analog modem firmware might not have an appropriate
kernel driver in recent kernels. Though, the Woof build script '3builddistro' can
detect this situation and suggest to remove innapropriate firmware.

These firmware PETs are named "firmware_linux_module_*" to make it unambiguous what
they are for. The "*" part is the name of the directory inside /lib/modules/all-firmware,
for example "firmware_linux_module_b43".

Firmware removed from Woof, now PETS
------------------------------------

b43       (20120920)
dgcmodem  "
hsfmodem  "
b43legacy "
brcm      "
wl        "

Further technical notes
-----------------------

A "firmware_linux_module_*" PET will have files that get installed, just like any PET.
However, the location /lib/modules/all-firmware is special, as files in here only get
installed if matching kernel modules are loaded, meaning that the appropriate hardware
is present.

This keeps files out of the way and not potentially causing conflicts in the system.

To see how a directory inside /lib/modules/all-firmware gets installed, see script
/sbin/pup_event_backend_modprobe.

Regards,
Barry Kauler
Sept. 2012
