In sintesi: sullo ZimaBoard originale potrebbe essere necessario regolare la porta root PCIe prima che compaia un HBA LSI
Il risultato utile del test sull’hardware reale è specifico: un HBA LSI della classe SAS2008 non veniva riconosciuto e la relativa option ROM non si caricava finché non sono state modificate le impostazioni PCIe nel BIOS dello ZimaBoard originale. Dopo aver regolato la porta root utilizzata dallo slot, sono diventati visibili sia il firmware dell’HBA sia i dischi collegati. Considera queste impostazioni una soluzione alternativa di compatibilità per la scheda originale, non una procedura universale per ZimaBoard 2 o per ogni HBA.
Inizia distinguendo tre diversi livelli di errore
Un HBA può presentare problemi in tre punti: il firmware non enumera mai la scheda, Linux vede il dispositivo PCIe ma il driver non si associa, oppure il driver viene caricato ma non compare alcun disco collegato. Verificali in quest’ordine.
lspci -nn
dmesg | grep -i -E 'mpt|sas|scsi|pcie'
lsblk -o NAME,SIZE,MODEL,TRAN
Il sottosistema SCSI di Linux descrive il livello dei driver di archiviazione, mentre l’ispezione dei dispositivi PCI è il modo più rapido per verificare se la scheda esiste effettivamente sul bus PCIe.
Applica la soluzione alternativa del BIOS solo quando la scheda manca a livello PCIe
Sullo ZimaBoard originale, il percorso testato era BIOS → Chipset → South Cluster Configuration → PCI Express Configuration. Nel caso riuscito sono state abilitate le opzioni PCIe pertinenti, quindi la PCI Express Root Port 3 è stata impostata su ASPM Auto, PCIe Speed Gen 2 e Transmit Half Swing Enabled. In seguito, un altro proprietario ha confermato che le stesse modifiche alla Port 3 facevano comparire un HBA LSI SAS2008.
Annota ogni valore originale prima di modificare le impostazioni del firmware. Se la Port 3 non corrisponde al percorso fisico utilizzato dalla revisione della tua scheda o dal tuo adattatore, modificare alla cieca le porte 4–6 aggiunge variabili senza dimostrare nulla.
L’option ROM dell’HBA non è necessaria per usare semplicemente i dischi dati
Il caso di partenza sottolineava anche che il BIOS dell’HBA si caricava finalmente e poteva mostrare i dischi collegati tra le opzioni di avvio. È utile se vuoi avviare il sistema tramite l’HBA, ma un HBA destinato esclusivamente all’archiviazione non deve necessariamente eseguire la propria option ROM. Se Linux rileva il driver dell’HBA e i dischi collegati, puoi utilizzare quei dischi anche senza accedere a una schermata di configurazione dell’HBA.
Questa distinzione evita un vicolo cieco comune: trascorrere ore ad abilitare le funzioni della ROM di avvio quando l’obiettivo reale è soltanto rendere disponibili i dischi a ZimaOS.
Usa la modalità HBA o IT quando ZimaOS deve vedere le singole unità
Per RAID gestiti dal software, ZFS o il monitoraggio diretto dello stato dei dischi, il sistema operativo dovrebbe normalmente vedere ogni unità fisica. Il firmware RAID hardware, che nasconde molti dischi dietro un unico volume virtuale, modifica la visibilità dei dati SMART e il modello di ripristino. Sulle schede LSI/Broadcom, verifica che il firmware operi in una modalità pass-through/orientata all’HBA adatta al tuo progetto di archiviazione prima di creare l’array.
Non eseguire il flashing del firmware dell’HBA solo perché lo ha fatto un altro proprietario di un SAS2008. Il modello esatto del controller, il firmware OEM e la revisione della scheda sono importanti.
Verifica ogni disco prima di creare il RAID
lsblk -o NAME,SIZE,MODEL,SERIAL
smartctl -a /dev/sdX
cat /proc/mdstat
Assicurati che ogni disco collegato abbia il modello e la capacità previsti. Un membro mancante, una dimensione del settore errata o un cavo SAS instabile sono problemi distinti dall’enumerazione PCIe. Non creare mai un nuovo RAID solo per verificare se l’HBA funziona, se quei dischi contengono dati.
Non applicare i valori del BIOS dello ZimaBoard originale a ZimaBoard 2
ZimaBoard 2 appartiene a una generazione hardware diversa. Usa il firmware e il comportamento PCIe specifici della piattaforma invece di copiare i valori dei menu South Cluster da un articolo del 2024 relativo alla scheda originale. L’hardware di ZimaBoard 2 è il riferimento pertinente. Se ti servono semplicemente più porte dati SATA anziché funzioni SAS/HBA, l’espansione SATA PCIe potrebbe ridurre la complessità.
Quando l’HBA continua a non comparire
Prova la scheda su un altro computer sicuramente funzionante, rimuovi i dispositivi PCIe non necessari, aggiorna solo il firmware corretto della scheda e dell’HBA e raccogli l’output di lspci -nn insieme ai messaggi del kernel. Se Linux non vede mai la funzione PCI, resta al livello del firmware/PCIe. Se il bus PCI la vede ma non compaiono dischi, passa a verificare associazione del driver, firmware dell’HBA, cablaggio e alimentazione dei dischi.
Domande frequenti
Perché il mio LSI SAS2008 è invisibile su ZimaBoard?
Su alcuni sistemi ZimaBoard originali, le impostazioni del firmware della porta root PCIe impedivano la corretta enumerazione dell’HBA. Dimostra il problema con lspci prima di modificare i valori del BIOS.
Mi serve la schermata del BIOS dell’HBA?
Non per il normale utilizzo dei dischi dati, se Linux rileva già il controller e i dischi. L’option ROM è principalmente utile per la configurazione dal lato HBA o per avviare il sistema tramite il controller.
Un HBA dovrebbe usare la modalità IT?
Un firmware pass-through/orientato all’HBA è generalmente più semplice quando ZimaOS, mdadm o ZFS devono gestire direttamente i singoli dischi.
Posso usare le stesse impostazioni del BIOS su ZimaBoard 2?
Non darlo per scontato. ZimaBoard 2 è basato su hardware diverso e dovrebbe utilizzare il comportamento del firmware e le informazioni di supporto aggiornate propri della piattaforma.
Perché lspci vede l’HBA ma lsblk non mostra dischi?
Il problema si sposta al di sotto del livello di enumerazione PCIe: controlla l’associazione del driver, la modalità del firmware dell’HBA, i cavi SAS/SATA, gli expander, l’alimentazione delle unità e la compatibilità dei dischi collegati.
