Besides the availability of a device driver, some hardware also requires so-called firmware or microcode to be loaded into the device before it can become operational. This is most common for network interface cards (especially wireless NICs), but for example some USB devices and even some hard disk controllers also require firmware.
With many graphics cards, basic functionality is available without additional firmware, but the use of advanced features requires an appropriate firmware file to be installed in the system.
On many older devices which require firmware to work, the firmware file was permanently placed in an EEPROM/Flash chip on the device itself by the manufacturer. Nowadays most new devices do not have the firmware embedded this way anymore, so the firmware file must be uploaded into the device by the host operating system every time the system boots.
In most cases firmware is non-free according to the criteria used by the Debian GNU/Linux project and thus cannot be included in the main distribution. If the device driver itself is included in the distribution and if Debian GNU/Linux legally can distribute the firmware, it will often be available as a separate package from the non-free-firmware section of the archive (prior to Debian GNU/Linux 12.0: from the non-free section).
However, this does not mean that such hardware cannot be used during
installation. Starting with Debian GNU/Linux 12.0, following the 2022 General
Resolution about non-free firmware, official installation
images can include non-free firmware packages. By default, debian-installer
will
detect required firmware (based on kernel logs and modalias
information), and install the relevant packages if they are found on
an installation medium (e.g. on the netinst). The package manager gets
automatically configured with the matching components so that those
packages get security updates. This usually means that the
non-free-firmware component gets enabled, in addition to main.
Users who wish to disable firmware lookup entirely can do so by
setting the firmware=never
boot parameter.
It's an alias for the longer
hw-detect/firmware-lookup=never
form.
Unless firmware lookup is disabled entirely, debian-installer
still supports
loading firmware files or packages containing firmware from a
removable medium, such as a USB stick. See Section 6.4, “Loading Missing Firmware” for detailed information on how to load
firmware files or packages during the installation.
Note that debian-installer
is less likely to prompt for firmware files now that
non-free firmware packages can be included on installation images.
If the debian-installer
prompts for a firmware file and you do not have this firmware
file available or do not want to install a non-free firmware file on your
system, you can try to proceed without loading the firmware. There are
several cases where a driver prompts for additional firmware because it may
be needed under certain circumstances, but the device does work without it
on most systems (this e.g. happens with certain network cards using the tg3
driver).