2.2. Dispositivi che richiedono un firmware

Oltre alla disponibilità di un driver, alcuni dispositivi richiedono anche un cosiddetto firmware o microcodice da caricare nel dispositivo prima che sia completamente operativo. Questo è molto comune per le schede di rete (in particolare i NIC wireless) ma anche alcuni dispositivi USB e alcuni controller per dischi fissi richiedono un firmware. Su molte schede grafiche le funzionalità di base sono disponibili senza firmware agguntivi ma per usare le funzionalità avanzate è necessario che un appropriato file con firmware sia installato nel sistema.

Su molti dei vecchi dispositivi che richiedono un firmware per funzionare, il firmware è memorizzato nel chip EEPROM/Flash sul dispositivo dal costruttore. Oggigiorno la maggior parte dei dispositivi non incorporano più il firmware in questo modo, il firmware deve essere caricato sul dispositivo dal sistema operativo a ogni avvio del sistema.

In molti casi il firmware è considerato non-libero in base ai criteri usati dal progetto Debian GNU/kFreeBSD e quindi non può essere incluso nella distribuzione principale o nel sistema d'installazione. Se il driver del dispositivo è incluso nella distribuzione e se Debian GNU/kFreeBSD può distribuire legalmente il firmware, spesso è disponibile in un pacchetto separato della sezione non-free dell'archivio.

Questo non vuol dire che questo hardware non può essere usato durante l'installazione. A partire da Debian GNU/kFreeBSD 5.0, debian-installer supporta il caricamento dei file con il firmware o dei pacchetti contenenti il firmware da un supporto removibile come una chiavetta USB. Si veda Sezione 6.4, «Caricare i firmware mancanti» per le istruzioni dettagliate su come caricare i file o i pacchetti con il firmware durante l'installazione.

Qualora debian-installer richieda l'installazione di un file di firmware ma tale file non è disponibile oppure non si vuole installare un firmware non-free sul proprio sistema, è possibile continuare senza caricare il firmware. Ci sono molti casi in cui il driver richiede il firmware perché in alcune circostanze potrebbe essere necessario ma il dispositivo funziona anche senza (per esempio questo accade su alcune schede di rete con il driver tg3).