How to find firmware for your devices
Devices requires two things to work. First is the device drivers, and
in Linux, "device drivers" is called as "kernel modules". Some devices,
in addition to the drivers, also require what is called as "firmware".
This "firmware" is basically the operating system for the
microcontroller used in the device. Not all devices require firmware,
and some can optionally use a firmware but can work without it.
Fatdog comes with a large collection of firmware, but there are
always some specialised devices that we may have not included the
firmware for. If you know you have the correct drivers but your devices
are still not working, this is probably the case.
To check, open terminal and type "dmesg | grep -i firmware". If you
see any indication that a firmware is not found, that's probably it and
you need to hunt the firmware.
There are many places for firmware and unfortunately there isn't a
single central repository for it. You just need to search for it. And
then these links can become stale, disappear, or gets replaced. That's
part of the fun, of course.
The links listed below are current as of 1 September 2020.
- Your number one stop should be "linux-firmware". This has the
largest collection of firmware (most of it should already be in Fatdog,
but we may miss a few). All free-licensed firmware should be here: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
- ALSA firmware: most soundcard doesn't need firmware, but some do.
If your card is one of those, you may be able to find it here: https://www.alsa-project.org/main/index.php/Main_Page (look for alsa-firmware).
- Debian also has a lot of collection of non-free firmware blobs: https://packages.debian.org/source/sid/firmware-nonfree and http://deb.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-nonfree_20200721.orig.tar.xz
- ath10k firmware old and new: https://github.com/kvalo/ath10k-firmware
- Intel Wifi firmware old and new: https://www.intel.com/content/www/us/en/support/articles/000005511/network-and-i-o/wireless.html
- Libertas (Marvell) Wifi firmware: https://packages.debian.org/sid/firmware-libertas
- Netronome LAN / Wifi firmware: https://fedora.pkgs.org/31/fedora-updates-x86_64/netronome-firmware-20200721-110.fc31.noarch.rpm.html
- Silicon Labs Wifi firmware (rs9113_wlan_qspi.rps) https://github.com/SiliconLabs/RS911X-nLink-OSD/tree/master/Firmware
- Some rare firmware for realtek Wifi chips: https://github.com/lwfinger/rtl8723au_bt/
- Firmware for TV Tuner using Siano chips: https://debian.pkgs.org/sid/debian-nonfree-armhf/firmware-siano_20200721-1_all.deb.html
- Other IPTV firmwares: https://packages.debian.org/sid/firmware-ivtv
- xc3028L-v36.fw: http://www.steventoth.net/linux/hvr1400/xc3028L-v36.fw
- xc3028-v27.fw: http://www.steventoth.net/linux/hvr1500/xc3028-v27.fw
- http://www.steventoth.net/linux/ has firmwares for other obscure devices too.
- comedi/jr3pci.idm: http://www.comedi.org/download/comedi-nonfree-firmware-2007.06.22.tar.gz