2.2. Dispositivos que requieren firmware

Además de la disponibilidad de un controlador de dispositivo, algún hardware también requiere el llamado firmware o microcode, que se debe cargar en el dispositivo antes de ser funcional. Esto es muy común para tarjetas de interfaz red (especialmente NIC inalámbricas), aunque algunos dispositivos USB e incluso ciertos controladores de discos duros también requieren firmware.

Con muchas tarjetas gráficas, la funcionalidad básica está disponible sin firmware adicional, pero el uso de funciones avanzadas requiere la instalación de un archivo de firmware adecuado en el sistema.

En muchos dispositivos antiguos que requieren «firmware» para su funcionamiento, los ficheros de «firmware» se almacenaban por el fabricante de forma permanente en un procesador EEPROM/Flash en el mismo dispositivo. Actualmente, la mayoría de dispositivos no integran el «firmware» de esta forma, y por ello el fichero de «firmware» si debe cargar en el dispositivo por el sistema operativo anfitrión durante cada arranque del sistema.

En la mayoría de los casos el firmware no es libre según los criterios utilizados por el proyecto Debian GNU/Linux y por lo tanto no puede ser incluido en la distribución principal. Si el controlador del dispositivo se incluye en la distribución y si Debian GNU/Linux puede distribuir legalmente el firmware, a menudo estará disponible como un paquete separado en la sección de firmware no libre del archivo (antes de Debian GNU/Linux 12.0: en la sección no libre).

Sin embargo, esto no significa que dicho hardware no pueda utilizarse durante la instalación. A partir de Debian GNU/Linux 12.0, siguiendo Resolución general 2022 sobre firmware no libre, las imágenes de instalación oficiales pueden incluir paquetes de firmware no libre. Por defecto, debian-installer detectará el firmware requerido (basado en los registros del kernel y la información de modalias), e instalará los paquetes relevantes si se encuentran en un medio de instalación (por ejemplo, en el netinst). El gestor de paquetes se configura automáticamente con los componentes correspondientes para que esos paquetes reciban las actualizaciones de seguridad. Esto normalmente significa que el componente no-libre-firmware se habilita, además del principal.

Los usuarios que deseen desactivar por completo la búsqueda de firmware pueden hacerlo estableciendo el parámetro de arranque firmware=never. Es un alias para la forma más larga hw-detect/firmware-lookup=never.

A menos que la búsqueda de firmware se deshabilite por completo, debian-installer aún admite la carga de archivos de firmware o paquetes que contengan firmware desde un medio extraíble, como una memoria USB. Consulte Sección 6.4, “Carga de Firmware adicional” para obtener información detallada sobre cómo cargar archivos o paquetes de firmware durante la instalación. Tenga en cuenta que debian-installer es menos probable que solicite archivos de firmware ahora que se pueden incluir paquetes de firmware no libres en las imágenes de instalación.

Puede intentar continuar sin cargar el firmware si debian-installer solicita un fichero de «firmware», y no dispone de ese fichero, o si no desea instalar un fichero de «firmware» no libre en su sistema. Hay varios casos en los que el controlador solicita «firmware» adicional por ser necesario en determinadas circunstancias, pero el dispositivo puede funcionar sin él en la mayoría de sistemas (esto ocurre, por ejemplo, con algunas tarjetas de red que utilizan el controlador tg3).