Alla pagina dell'indice

Guida in linea per diagnostica DOS

Questo capitolo fornisce le seguenti informazioni:

Introduzione

Prerequisiti

Elenco delle funzioni

Descrizione delle funzioni

Test diagnostici

Messaggi di errore


Introduzione

Questo documento fornisce le informazioni su come utilizzare il programma di utilità di diagnostica per DOS su Broadcom NetXtreme™ Ethernet Controller.

È possibile immettere tutti i comandi dal prompt di DOS o CLI (Command Line Interface). Quando un programma viene eseguito senza parametri, viene inserita la modalità CLI. In caso contrario, il parametro verrà usato come comando che deve essere eseguito e al completamento esce dal programma.

In modalità CLI, supponendo che nel sistema vi siano tre periferiche, tutte le informazioni sulle periferiche vengono visualizzate prima di ogni prompt, come illustrato nel seguente esempio:

C Brd:Rv    Bus   PCI Spd Base Irq EEP     MAC          Fmw     Configuration
- ------- ------- --- --- ---- -- ---- ------------ ----------- --------------
0 5702:A2 02:0A:0 32  33  FEAF  3 128K 0010180416DB 5702-v2.24a PW,auto
1 5702:A2 02:0B:0 32  33  FEAD 11 128K 0010180416C4 5702-v2.24a PW,auto
 

Torna all'inizio


Prerequisiti

OS:

DOS 6.22

Software:

b57udiag.exe


Torna all'inizio


Per accedere all'Elenco delle funzioni, immettere il comando "b57udiag -cmd".

Elenco delle funzioni

cmd

Funzioni

upgfrm

Upgrade PXE o Boot Code (codice di avvio) da un file

dir

Visualizza la directory in NVRAM

setwol

Abilita/Disabilita WOL

setpxe

Abilita/Disabilita PXE

setasf

Abilita/Disabilita ASF

setmba

Abilita MBA (Multiple Boot Agent)

nictest

Esegue una serie di test sulla scheda NIC

exit

Esce dal programma

device

Mostra o alterna la periferica

version

Visualizza la versione del programma

help

Visualizza i comandi disponibili

dos

Esegue un comando DOS

reset

Ripristina il chip

cls

Elimina le informazioni visualizzate

asfprg

Programma il firmware ASF nella NVRAM


Torna all'inizio


Descrizione delle funzioni

upgfrm

cmd: upgfrm

Descrizione: upgrade di PXE o Boot Code (codice di avvio) da un file.

Sintassi: upgfrm [-opzioni]

Questo comando legge il codice da un file e lo programma nell'area di avvio o pxe. Entrambi i parametri, il target di programmazione "pxe" o "boot" e il nome del file, devono essere specificati.

Opzioni:

 

-f <stringa>

File di input

-p

Upgrade codice PXE

-b

Upgrade Boot Code (codice di avvio)

-d

Non eseguire verifica periferica


dir

cmd: dir

Descrizione: visualizza la directory in NVRAM.

Esempio:

Entry Type SRAM    Addr EEP  Offset     Length   Execute Version 
----- ------------ --------- ---------- -------- ------- -------
BootCode 08003000 00000200 000011B0 CPUA (2) 5702-v2.24a
0 PXE 00010000 000013B0 0000C854 no 2.2.7

setwol

      cmd: set wol

      Descrizione: abilita/disabilita WOL.

      Sintassi: setwol [ -opzioni]

      Opzioni:

       

      -e

      Abilita WOL

      -d

      Disabilita WOL


setpxe

cmd: set pxe

Descrizione: abilita/disabilita PXE e imposta velocità PXE.

Sintassi: setpxe [ -opzioni]

Opzioni:

 

-e

Abilita PXE

-d

Disabilita PXE

-s<DEC>

Specifica velocità PXE (predefinito = 0)

 

Velocità: 0 = auto
1 = 10 HD
2 = 10 FD
3 = 100 HD
4 = 100 FD


setasf

cmd: setasf

Descrizione: abilita/disabilita ASF.

Sintassi: setasf [-opzioni]

Opzioni:

 

-e

Abilita ASF

-d

Disabilita ASF


setmba

cmd: setmba

Descrizione: abilita/disabilita MBA (Multiple Boot Agent).

Sintassi: setmba [ -opzioni]

Opzioni:

 

-e<DEC>

Specifica protocollo MBA

 

Protocollo: 0 = pxe
1 = rpl
2 = bootp

-d

Disabilita MBA

-s<DEC>

Specifica velocità MBA (predefinito = 0)

 

Velocità: 0 = auto
1 = 10 HD
2 = 10 FD
3 = 100 HD
4 = 100 FD


nictest

cmd: nictest

Descrizione: esegue una serie di test sulla scheda NIC.

Sintassi: nictest [elenco test]

Esempio: Per una descrizione più dettagliata dei test, vedere Test diagnostici.

abcd

Esegue tutti i test

b

Esegue tutti i test nel gruppo b

a3 b1

Esegue solo i test a3 e b1

a124b2

Esegue i test a1, a2, a4 e b2

Se non viene inserito alcun elenco di test, viene utilizzata l'impostazione diagcfg.

Opzioni:

 

-n <DEC>

Iterazione

-e

Esegue anche la verifica NVRAM

exit

cmd: exit

Descrizione: esce dalla modalità CLI.

Sintassi: exit

Esempio:

b57udiag> exit

device

cmd: device

Descrizione: mostra o cambia la periferica.

Sintassi: device [ -opzioni]

Opzioni:

 

-n <HEX>
Numero periferica (predefinito = 00000000)
-r
Elimina tutte le periferiche correnti e rianalizza le periferiche disponibili.
-s
Modalità silenziosa: non visualizza le periferiche

version

      cmd: version

      Descrizione: visualizza la versione del software.

      Sintassi: version

      Esempio:

      C:\>b57udiag –version
      Copyright (c) 2000, 2001 Broadcom Corporation, all rights reserved
      Broadcom NetXtreme User Diagnostic 3.09 (06/14/02)

help

      cmd: help

      Descrizione: visualizza i comandi di aiuto disponibili.

      Sintassi: help

      Esempio:

      C:\>b57udiag –help
      Copyright (c) 2000, 2001, 2002 Broadcom Corporation, all rights reserve
      d
      Broadcom NetXtreme User Diagnostic 3.09 (06/14/02)

      cmd

      Funzioni

      upgfrm

      Upgrade PXE o Boot Code (codice di avvio) da un file

      dir

      Visualizza la directory in NVRAM

      setwol

      Abilita/Disabilita WOL

      setpxe

      Abilita/Disabilita PXE

      setasf

      Abilita/Disabilita ASF

      nictest

      Esegue una serie di test sulla scheda NIC

      exit

      Esce dal programma

      device

      Mostra o alterna la periferica

      version

      Visualizza la versione del programma

      help

      Visualizza i comandi disponibili

      dos

      Esegue un comando DOS

      reset

      Ripristina il chip

      cls

      Elimina le informazioni visualizzate

      asfprg

      Programma il firmware ASF nella NVRAM


dos

cmd: dos

Descrizione: esegue un comando DOS.

Sintassi: dos <dos command>

Se non viene inserito alcun parametro, viene inserita la shell di DOS.

reset

cmd: reset

Descrizione: ripristina il chip.

Sintassi: reset

Opzioni:

 

-c
Simula ripristino a freddo
-w
Attende la firma del firmware
-t
Visualizza l'intervallo di tempo tra il ripristino e la firma invertita del firmware

cls

cmd: cls

Descrizione: elimina le informazioni visualizzate.

Sintassi: cls

asfprg

cmd: asfprg

Descrizione: programma il firmware ASF nella NVRAM.

Sintassi: asfprg [init_img [rx_img [tx_img]]]

I nomi dei file predefiniti sono asfinit.bin, asfcpua.bin e asfcpub.bin, che possono essere sovrascritti dai parametri.

Opzioni:

 

-v<HEX>

Livello di dettaglio (0,1,2) (def=00000001)

 

Torna all'inizio


Test diagnostici

I test sono divisi in quattro gruppi: test di registro, test di memoria, test vari e test dei dati. Vengono riuniti in gruppi A, B, C e D.

Nomi dei test

Gruppo A.

      A1. Test di registro indiretto
      A2. Test registro di controllo
      A3. Test di Interrupt
      A4. BIST
      A5. Test registro Cfg PCI

Gruppo B.

      B1. Scratch Pad Test
      B2. Test BD SRAM
      B3. Test DMA SRAM
      B4. Test MBUF SRAM
      B5. Test MBUF SRAM mediante DMA
      B6. Test SRAM esterna

Gruppo C.

      C1. Test EEPROM
      C2. Test CPU
      C3. Test DMA
      C4. Test MII
      C5. Test VPD
      C6. Test ASF
      C7. Test espansione ROM

Gruppo D.

      D1. Test Mac Loopback
      D2. Test Phy Loopback
      D3. Test PHY Loopback
      D4. Test MII vari
      D5. Test MSI
 

Descrizione dei test

A1. Test di registro indiretto

    Comando: regtest -i

    Funzione: utilizza il metodo dell'indirizzamento indiretto, scrive dati incrementali nella tabella del registro di hashing MAC ed esegue la rilettura dei dati per verifica. La lettura/scrittura della memoria viene effettuata 100 volte incrementando i dati del test.

    Predefinito: abilitato

A2. Test registro di controllo

    Comando: regtest

    Funzione: ogni registro specificato nella configurazione definisce i bit di sola lettura e i bit di lettura/scrittura. Il test scrive zero e uno nei bit del test per garantire che i bit di sola lettura non vengano cambiati e che i bit di lettura/scrittura vengano cambiati di conseguenza.

    Predefinito: abilitato

    Tabella di registro predefinita

    Il test cercherà di leggere il file di configurazione del registro ctrlreg.txt per le definizioni del registro. Se il file non esiste, verranno usati un offset di registro predefinito e bit di maschera.

Offset     R/O Mask   R/W Mask
0x00000400 0x00000000 0x007fff8c
0x00000404 0x03800107 0x00000000

A3. Test di Interrupt

Comando: intrtest

Funzione: questo test verifica la funzionalità di interrupt. Consente un interrupt, attende per 500 ms il suo verificarsi e riporta un errore nel caso in cui non riesca a generare l'interrupt.

Predefinito: abilitato

A4. BIST

    Comando: bist

    Funzione: test automatico incorporato dell'hardware (BIST) Questo test inizializza il BIST (Hardware Built-In-Self-Test) e attende il risultato restituito dall'hardware.

    Predefinito: a causa di errori occasionali, attualmente questo test è disabilitato per impostazione predefinita.

A5. Test registro Cfg PCI

    Comando: pcicfg

    Funzione: questo test verifica l'integrità di accesso dei registri di configurazione PCI.

B1. Scratch Pad Test

Comando: memtest -s

Funzione: questo test verifica la Scratch Pad SRAM sulla scheda. Vengono eseguiti i seguenti test:

Predefinito: abilitato

B2. Test BD SRAM

Comando: memtest -b

Funzione: questo test verifica la BD SRAM. Esegue la stessa modalità di test Scratch Pad Test descritta in B1.

Predefinito: abilitato

B3. Test DMA SRAM

Comando: memtest -d

Funzione: verifica la SRAM del DMA eseguendo il test Scratch Pad Test descritto in B1.

Predefinito: abilitato

B4. Test MBUF SRAM

Comando: memtest -m

Funzione: verifica la SRAM del DMA eseguendo il test Scratch Pad Test descritto in B1.

Predefinito: abilitato

B5. Test MBUF SRAM mediante DMA

Comando: memtest -x

Funzione: vengono utilizzati otto modelli di test di dati. Per questo test viene utilizzato un buffer dati 0x1000. Prima di ogni test dei modelli, il buffer viene inizializzato e compilato con il modello di test. Quindi esegue la trasmissione DMA 0x1000 dal buffer dell'host alla memoria MBUF della NIC. Verifica l'integrità dei dati nella MBUF rispetto alla memoria host e ripete il DMA per l'intero buffer MBUF. Quindi esegue la ricezione DMA dalla NIC all'host. Il buffer di test 0x1000 byte viene portato a zero prima di ogni ricezione DMA. Dopo la verifica dell'integrità dei dati, il test viene ripetuto per l'intera gamma MBUF SRAM. I modelli di test sono descritti di seguito.

Modello di test

Descrizione

16 00 e 16 FF

Riempie l'intero buffer DMA dell'host con 16 byte di 00 e quindi con 16 byte di FF.

16 FF e 16 0

Riempie l'intero buffer DMA dell'host con 16 byte di 00 e quindi con 16 byte di FF.

32 00 e 32 FF

Riempie l'intero buffer DMA dell'host con 32 byte di 00 e quindi con 32 byte di FF.

32 00 e 32 FF

Riempie l'intero buffer DMA dell'host con 32 byte di FF e quindi con 32 byte di 00.

00000000

Riempie l'intero buffer DMA dell'host con tutti zeri.

FFFFFFFF

Riempie l'intero buffer DMA dell'host con tutti FF.

AA55AA55

Riempie l'intero buffer DMA dell'host con dati 0xAA55AA55.

55AA55AA

Riempie l'intero buffer DMA dell'host con dati 0xAA55AA55.

Predefinito: abilitato

B6. Test SRAM esterna

Comando: memtest -e

Funzione: verifica la SRAM del DMA eseguendo il test Scratch Pad Test descritto in B1.

Predefinito: disabilitato

C1. Test EEPROM

Comando: setest

Funzione: in questo test vengono utilizzati dati di test incrementali. Compila i dati del test nella gamma di test ed esegue la rilettura per verificare il contenuto. Dopo il test, riempie la gamma dei test con zero per cancellare la memoria.

Predefinito: abilitato

C2. Test CPU

Comando: cputest

Funzione: questo test apre il file cpu.bin. Se il file esiste e il contenuto è valido, carica il codice per ricevere e trasmettere CPU e verifica l'esecuzione CPU.

Predefinito: abilitato

C3. Test DMA

Comando: dmatest

Funzione: vengono testate le priorità alta e bassa del DMA. Sposta i dati dalla memoria host alla SRAM della NIC, verifica i dati e quindi li sposta nuovamente nella memoria host per verificare i dati.

Predefinito: abilitato

C4. Test MII

Comando: miitest

Funzione: la funzione è identica al Test registro di controllo, A2. Ogni registro specificato nella configurazione definisce i bit di sola lettura e i bit di lettura/scrittura. Il test scrive zero e uno nei bit del test per garantire che i valori dei bit di sola lettura non vengano cambiati e che i bit di lettura/scrittura vengano cambiati di conseguenza.

Predefinito: abilitato

Tabella di registro predefinita

Il test cerca di leggere il file di configurazione del registro miireg.txt per le definizioni del registro. Se il file non esiste, viene utilizzata la tabella seguente:

Offset 		R/O Mask	R/W Mask
0x00 		0x0000 		0x7180 
0x02 		0xffff  		0x0000
0x03 		0xffff  		0x0000
0x04 		0x0000 		0xffff 
0x05 		0xefff 		0x0000
0x06 		0x0001 		0x0000
0x07 		0x0800 		0xb7ff 
0x08 		0xffff  		0x0000
0x09 		0x0000 		0xff00 
0x0a 		0x7c00 		0x0000
0x10 		0x0000 		0xffbf 
0x11 		0x3300 		0x0000
0x19 		0x001f 		0x0000
0x1e 		0x0000 		0xffff 
0x1f 		0x0000 		0xffff 

C5. Test VPD

Comando: vpdtest

Funzione: salva il contenuto della VDP prima di eseguire il test. Quindi scrive uno dei cinque modelli di dati del test, 0xff, 0xaa, 0x55, dati incrementali o decrementali, nella memoria VPD. Per impostazione predefinita, viene utilizzato il modello di dati incrementali. Scrive ed esegue la rilettura dei dati per l'intera gamma del test, quindi ripristina il contenuto originale.

Predefinito: disabilitato

C6. Test ASF

Comando: asftest

Funzione: m

      1. Test di ripristino.

        Impostazione bit di ripristino, polling per la cancellazione automatica. Verifica valore di ripristino dei registri.

      2. Test di mapping dell'evento

        Impostazione dei bit SMB_ATTN. Modificando i bit ASF_ATTN LOC, verifica i bit di mapping nei bit evento TX_CPU o RX_CPU.

      3. Test del contatore
  • Cancella i bit WG_TO, HB_TO, PA_TO, PL_TO, RT_TO impostando tali bit e verifica la cancellazione dei bit.
  • Cancella il contatore timestamp. Scrive un valore 1 in ogni contatore PL, PA, HB, WG, RT. Imposta il bit TSC_EN.
  • Effettua polling di ogni bit PA_TO e conteggia fino a 50 volte. Verifica se dopo 50 volte PL_TO è impostato. Verifica che tutti gli altri bit TO siano impostati e che il contatore Timestamp venga incrementato.

C7. Test espansione ROM

Comando: romtest

Funzione: questa funzione verifica la capacità di abilitare/disabilitare/accedere alla ROM di espansione della periferica.

D1. Test Mac Loopback

Comando: pkttest -m

Funzione: questo è un test di trasmissione/ricezione dati di loopback interno. Inizializza il MAC in modalità loopback interno e trasmette 100 pacchetti. Il dati devono essere reinstradati al canale di ricezione e ricevuti dalla routine di ricezione, che verifica l'integrità dei dati. Per questo test viene utilizzata una velocità di 100 megabit, a meno che sia abilitata la velocità Gigabit.

Predefinito: abilitato

D2. Test Phy Loopback

Comando: pkttest -p

Funzione: questo test è uguale al Test Mac Loopback, D1, ma i dati vengono reinstradati mediante Physical Layer Device. Per questo test viene utilizzata una velocità di 100 megabit, a meno che sia abilitata la velocità Gigabit.

Predefinito: abilitato

D3. Test PHY Loopback

Comando: pkttest -e

Funzione: questo è un test di loopback esterno. Dal punto di vista UUT, non viene configurata nessuna modalità loopback. I dati vengono reinstradati dal connettore di loopback RJ-45. Per questo test viene utilizzata una velocità di 100 megabit, a meno che sia abilitata la velocità Gigabit.

Predefinito: disabilitato

D4. Test MII vari

Comando: nessuno

Funzione: questa funzione verifica le capacità di auto-polling e di phy-interrupt. Queste sono funzioni del PHY.

Predefinito: abilitato

D5. Test MSI

Comando: msitest

Funzione: questa funzione verifica le capacità di Message Signal Interrupt (MSI) della periferica. Per la definizione dell'MSI, consultare le specifiche PCI (versione 2.2).

Predefinito: disabilitato

 

Torna all'inizio


Messaggi di errore


/* 0 */ 	"PASS",
/* 1 */ 	"Got 0x%08X @ 0x%08X. Expected 0x%08X",
/* 2 */ 	"Cannot perform task while chip is running",
/* 3 */ 	"Invalid NIC device",
/* 4 */ 	"Read only bit %s got changed after writing zero at offset 0x%X",
/* 5 */ 	"Read only bit %s got changed after writing one at offset 0x%X",
/* 6 */ 	"Read/Write bit %s did not get cleared after writing zero at offset 0x%X",
/* 7 */ 	"Read/Write bit %s did not get set after writing one at offset 0x%X",
/* 8 */ 	"BIST failed",
/* 9 */ 	"Could not generate interrupt",
/* 10 */ 	"Aborted by user",
/* 11 */ 	"Tx DMA:Got 0x%08X @ 0x%08X. Expected 0x%08X",    
/* 12 */ 	"Rx DMA:Got 0x%08X @ 0x%08X. Expected 0x%08X",    
/* 13 */ 	"Tx DMA failed",
/* 14 */ 	"Rx DMA failed",
/* 15 */ 	"Data error, got 0x%08X at 0x%08X, expected 0x%08X",
/* 16 */ 	"Second read error, got 0x%08X at 0x%08X, expected 0x%08X",
/* 17 */ 	"Failed writing EEPROM at 0x%04X",
/* 18 */ 	"Failed reading EEPROM at 0x%04X",
/* 19 */ 	"EEPROM data error, got 0x08X at 0x04X, expected 0x%08X",
/* 20 */ 	"Cannot open file %s",
/* 21 */ 	"Invalid CPU image file %s",
/* 22 */ 	"Invalid CPU image size %d",
/* 23 */ 	"Cannot allocate memory",
/* 24 */ 	"Cannot reset CPU",    
/* 25 */ 	"Cannot release CPU", 
/* 26 */ 	"CPU test failed",       
/* 27 */ 	"Invalid Test Address Range\nValid NIC address is 0x%08X-0x%08X and exclude 0x%08X-0x%08X",
/* 28 */    "DMA:Got 0x%08X @ 0x%08X. Expected 0x%08X", 
/* 29 */    "Unsupported PhyId %04X:%04X",
/* 30 */    "Too many registers specified in the file, max is %d",
/* 31 */ 	"Cannot write to VPD memory",
/* 32 */ 	"VPD data error, got %08X @ 0x04X, expected %08X",
/* 33 */ 	"No good link! Check Loopback plug",
/* 34 */ 	"Cannot TX Packet!", 
/* 35 */ 	"Requested to Tx %d. Only %d is transmitted",       
/* 36 */	"Expected %d packets. Only %d good packet(s) have been received\n%d unknown packets have been received.\n%d bad packets have been received.",
/* 37 */ 	"%c%d is an invalid Test",
/* 38 */ 	"EEPROM checksum error",
/* 39 */ 	"Error in reading WOL/PXE",
/* 40 */ 	"Error in writing WOL/PXE",
/* 41 */ 	"No external memory detected",
/* 42 */ 	"DMA buffer %04X is large, size must be less than %04X",  
/* 43 */ 	"File size %d is too big, max is %d",
/* 44 */ 	"Invalid %s",
/* 45 */ 	"Failed writing 0x%x to 0x%x",
/* 46 */ 	"",
/* 47 */ 	"Ambiguous command",
/* 48 */ 	"Unknown command",
/* 49 */ 	"Invalid option",
/* 50 */ 	"Cannot perform task while chip is not running. (need driver)",
/* 51 */ 	"Cannot open register define file or content is bad",
/* 52 */ 	"ASF Reset bit did not self-cleared",
/* 53 */ 	"ATTN_LOC %d cannot be mapped to %cX CPU event bit %d",
/* 54 */ 	"%s Regsiter is not cleared to zero after reset",
/* 55 */ 	"Cannot start poll_ASF Timer",
/* 56 */ 	"poll_ASF bit did not get reset after acknowleged",
/* 57 */ 	"Timestamp Counter is not counding",
/* 58 */ 	"%s Timer is not working",
/* 59 */ 	"Cannot clear bit %s in %cX CPU event register",
/* 60 */ 	"Invalid "EEPROM_FILENAME" file size, expected %d but only can read %d bytes",
/* 61 */ 	"Invalid magic value in %s, expected %08x but found %08x",
/* 62 */ 	"Invalid manufature revision, expected %c but found %c",
/* 63 */ 	"Invalid Boot Code revision, expected %d.%d but found %d.%d",
/* 64 */ 	"Cannot write to EEPROM",
/* 65 */ 	"Cannot read from EEPROM",
/* 66 */ 	"Invalid Checksum",
/* 67 */ 	"Invalid Magic Value",
/* 68 */ 	"Invalid MAC address, expected %02X-%02X-%02X-%02X-%02X-%02X",
/* 69 */ 	"Slot error, expected an UUT to be found at location %02X:%02X:00",
/* 70 */ 	"Adjacent memory has been corrupted while testing block 0x%08x-0x%08x\nGot 0x%08x @ address 0x%08x. Expected 0x%08x",
/* 71 */ 	"The function is not Supported in this chip",
/* 72 */ 	"Packets received with CRC error",
/* 73 */ 	"MII error bits set: %04x",
/* 74 */ 	"CPU does not initialize MAC address register correctly",
/* 75 */ 	"Invalid firmware file format",
/* 76 */ 	"Resetting TX CPU Failed",
/* 77 */ 	"Resetting RX CPU Failed",
/* 78 */ 	"Invalid MAC address",
/* 79 */ 	"Mac address registers are not initialized correctly",
/* 80 */ 	"EEPROM Bootstrap checksum error",

Torna all'inizio

Alla pagina dell'indice


Leggere tutte le limitazioni e la clausola esonerativa.