返回內容頁
使用者診斷:Broadcom NetLink®/NetXtreme® 57XX 使用手冊
簡介
系統需求
執行 Broadcom NetXtreme User Diagnostics
診斷測試說明
診斷測試訊息
簡介
Broadcom NetXtreme User Diagnostics 為 MS-DOS 應用程式,可在您電腦的 Broadcom NetXtreme Gigabit Ethernet 網路卡上執行一系列診斷測試 (請參閱表 1)。Broadcom NetXtreme User Diagnostics 還可讓您更新裝置韌體,並且檢視與變更可用的網路卡屬性設定。Broadcom NetXtreme User Diagnostics 可在以下模式中執行:
- MS-DOS 命令提示模式
- Broadcom 命令列介面 (CLI) 模式
您可在任一種模式中檢視網路卡軟體版本、指定要測試的網路卡以及要執行的測試類型。MS-DOS 命令提示模式較適用於檢視與變更可用的屬性設定、更新與載入裝置韌體、檢視版本以及列印錯誤記錄 (如果有的話) 至檔案。Broadcom CLI 模式較適用於啟用/停用可用屬性,以及啟用/停用/選取和設定可用通訊協定的速度及雙工模式。
要執行 Broadcom NetXtreme User Diagnostics,請建立包含 B57udiag.exe 檔案的 MS-DOS 6.22 開機磁片。接著,將開機磁片插入軟碟機並啟動系統。請參閱在 MS-DOS 命令提示模式下執行或在 Broadcom 命令列介面模式下執行以取得更多資訊。
注意: B57udiag.exe 檔案在安裝 CD 上。
系統需求
作業系統:MS-DOS 6.22
軟體:B57udiag.exe
執行 Broadcom NetXtreme User Diagnostics
在 MS-DOS 命令提示模式下執行
在 MS-DOS 提示下,使用表 1 所示命令選項鍵入 b57udiag。
注意: 在 MS-DOS 命令提示模式下,您每次鍵入命令時,必須在命令字串開頭處加上 b57udiag。
表 1: MS-DOS 命令提示模式命令選項
命令選項
|
描述
|
b57udiag
|
在系統中所有的 Broadcom NetXtreme Gigabit Ethernet 網路卡上執行所有測試。
|
b57udiag -c <編號>
|
指定網路卡以測試、更新韌體,或檢視/變更可用的屬性設定。
|
b57udiag -cmd
|
變更為 Broadcom CLI 模式。
|
b57udiag -w <數值>
|
啟用/停用網路喚醒技術 (WOL) 屬性。
1 = 啟用
0 = 停用
|
b57udiag -mba <數值>
|
啟用/停用 Multi-Boot Agent (MBA) 通訊協定。
1 = 啟用
0 = 停用
|
b57udiag -mbap <數值>
|
選取特定的 MBA 通訊協定。
0 = 開機前執行環境 (PXE)
1 = 遠端程式載入 (RPL)
2 = 開機通訊協定 (BOOTP)
|
b57udiag -mbas <數值>
|
選取 MBA 速度與雙工模式。
0 = 自動
1 = 10 Mbps 速度,半雙工操作
2 = 10 Mbps 速度,全雙工操作
3 = 100 Mbps 速度,半雙工操作
4 = 100 Mbps 速度,全雙工操作
6 = 1000 Mbps 速度,全雙工 (光纖)
|
b57udiag -firm <檔案>
|
根據現有映像檔案名稱與新的映像<檔案名稱>相符者,更新所選網路卡的 EEPROM。
範例:
b57udiag -firm ee5751c3.40a
b57udiag -firm ee5721c3.40a
|
b57udiag -firmall <檔案>
|
根據相符的 <檔案名稱> 映像更新所有網路卡的 EEPROM。
|
b57udiag -ver
|
顯示軟體/eeprom.bin 檔案的版本。
|
b57udiag -pxe <檔案>
|
從檔案載入開機前執行環境 (PXE) 韌體。
範例:
b57udiag -pxe b57mmba.nic
注意:此命令只能用於附加網路卡。對於 LOM 網路卡,PXE 韌體會在啟動時自動載入。
|
b57udiag -elog <檔案>
|
列印錯誤記錄至檔案。
|
b57udiag -pipmi <檔案>
|
從檔案載入智慧型平台管理介面 (IPMI)。
請勿使用。桌面與行動平台不支援 IPMI。
|
b57udiag -ipmi <數值>
|
啟用/停用 IPMI。
請勿使用。桌面與行動平台不支援 IPMI。
|
b57udiag -help
|
顯示此 MS-DOS 命令提示模式命令選項的表格。
|
在 Broadcom 命令列介面模式下執行
在 MS-DOS 提示下,鍵入 b57udiag -cmd
,然後使用表 2 所示的命令選項。
注意: 除非另外指明,所有設定值均使用十進位標記法。
表 2: Broadcom 命令列介面 (CLI) 模式命令
命令
|
描述
|
upgfrm
|
從檔案更新 PXE 或開機碼
|
dir
|
顯示 NVRAM 的檔案目錄。
|
範例:
|
Entry
|
類型
|
SRAM Addr
|
EEP Offset
|
長度
|
Execute
|
Version
|
|
開機碼
|
08003000
|
00000200
|
000011B0
|
CPUA(2
|
5705-v3.27
|
0
|
PXE
|
00010000
|
000013B0
|
0000C854
|
否
|
7.0.1
|
1
|
ASF CFG
|
00000000
|
0001027C
|
000001D4
|
否
|
ASFIPMIc V2.15
|
2
|
ASF CPUB
|
C0034000
|
00010450
|
00002654
|
否
|
ASFIPMIc V2.15
|
3
|
ASF CPUA
|
08000000
|
00012AA4
|
000035B4
|
否
|
ASFIPMIc V2.15
|
4
|
INIT
|
C0034000
|
00016058
|
00001A94
|
CPUB
|
ASFIPMIc V2.15
|
setwol
|
啟用/停用網路喚醒技術 (WOL) 屬性
setwol e = 啟用 WOL
setwol d = 停用 WOL
|
setpxe
|
啟用/停用開機前執行環境 (PXE) 並設定 PXE 速度
|
setpxe e
|
= 啟用 PXE
|
setpxe d
|
= 停用 PXE
|
setpxe s 0
|
= 自動 (預設值)
|
setpxe s 1
|
= 10 Mbps 速度,半雙工操作
|
setpxe s 2
|
= 10 Mbps 速度,全雙工操作
|
setpxe s 3
|
= 100 Mbps 速度,半雙工操作
|
setpxe s 4
|
= 100 Mbps 速度,全雙工操作
|
setasf
|
啟用/停用警戒標準格式 (ASF)
|
setasf e
|
= 啟用 ASF
|
setasf d
|
= 停用 ASF
|
setmba
|
啟用/停用 Multi Boot Agent (MBA) 並選取 MBA 通訊協定。
|
setmba d
|
= 停用 MBA
|
setmba e 0
|
= 啟用開機前執行環境 (PXE) MBA (預設值)
|
setmba e 1
|
啟用遠端程式載入 (RPL) MBA
|
setmba e 2
|
= 啟用開機通訊協定(BootP) MBA
|
setmba s 0
|
= 自動速度與雙工 (預設值)
|
setmba s 1
|
= 10 Mbps 速度,半雙工操作
|
setmba s 2
|
= 10 Mbps 速度,全雙工操作
|
setmba s 3
|
= 100 Mbps 速度,半雙工操作
|
setmba s 4
|
= 100 Mbps 速度,全雙工操作
|
setmba s 6
|
= 1000 Mbps 全雙工 (光纖)
|
setipmi
|
啟用/停用智慧型平台管理介面 (IPMI)。
|
請勿使用。桌面與行動平台不支援 IPMI。
|
nictest
|
執行指定的診斷測試
在命令字串中加入測試指派或群組指派,以指定要執行組中的哪項個別測試或要執行哪些測試組,如以下範例所示:
|
nictest abcd
|
= 執行所有測試
|
nictest b
|
= 執行 B 組中的所有測試
|
nictest a3b1
|
= 僅執行 A3 和 B1 測試
|
nictest a124b2
|
= 執行 A1、A2、A4 及 B2 測試
|
exit
|
從 Broadcom CLI 模式變更為 MS-DOS 命令提示模式
|
device
|
選取裝置 (網路卡)
|
device <n>
|
= 以十六進位標記法表示的裝置編號 (預設值 = 00000000)
|
device r
|
= 移除目前所有 Broadcom 網路卡,並重新掃描可用網路卡。
|
device s
|
= 無訊息模式 (不顯示網路卡)
|
version
|
顯示網路卡軟體的版本
|
help
|
顯示命令清單
|
reset
|
重設 Broadcom NetXtreme Gigabit Ethernet 晶片
|
reset c
|
= 模擬冷重設
|
reset w
|
= 等候韌體識別
|
reset t
|
= 顯示由重設到韌體轉換識別的時間
|
cls
|
清除畫面
|
asfprg
|
將警戒標準格式 (ASF) 載入 NVRAM
請勿使用。警戒標準格式 (ASF) 不適用於系統平台。
|
診斷測試說明
診斷測試分成四個群組:暫存器測試 (A 組)、記憶體測試 (B 組)、雜項測試 (C 組) 及驅動程式相關測試 (D 組)。診斷測試如表 3 所示。
表 3: 診斷測試
測試
|
描述
|
編號
|
名稱
|
A 組:暫存器測試
|
A1
|
間接式暫存器
|
本測試採用間接式定址法,將增加的資料寫入 MAC 雜湊暫存器表中,再讀取這些資料,以作驗證。增加測試資料時,進行 100 次記憶體的讀取/寫入動作。
|
A2
|
控制暫存器
|
設定內容中所指定的每個暫存器,都會定義唯讀位元及讀取/寫入的位元。本測試會將 0 及 1 值寫入測試位元中,以確保唯讀位元不會有任何變更,而讀取/寫入位元則會變更。
本測試會嘗試讀取暫存器的設定檔 (Ctrlreg.txt),以便暫存器進行定義的工作。若檔案不存在,那麼就會採用預設的暫存器位移和遮罩位元。
位移 唯讀遮罩 讀取/寫入遮罩
0x00000400 0x00000000 0x007FFF8C
0x00000404 0x03800107 0x00000000
|
A3
|
中斷
|
本測試檢驗中斷功能。這會啟用中斷,並等待 500 ms 讓中斷發生,如果沒有產生中斷會報告一個錯誤訊息。
|
A4
|
內建自我測試
|
此為硬體內建自我測試 (BIST)。
|
A5
|
PCI 設定暫存器
|
本測試檢驗 PCI 設定暫存器的存取完整性。
|
B 組:記憶體測試
|
B1
|
封包臨時組合及拆解
|
本測試可檢驗內建 SRAM 的封包臨時組合及拆解功能。會進行以下的測試:
位址測試:本測試會將獨有的增量資料寫入每一個位址內,然後再讀取這些資料,以確定資料正確。將全部位址填滿獨有的資料後,程式會再讀取這些資料,以確保資料仍然正確。
逐一位元:針對每個位址,先寫入資料再讀取進行測試。然後將資料向左移動一個位元,如此資料變成 2,並進行相同的測試。將重複測試 32 次,直到測試位元移出測試位址。針對整個測試範圍進行相同的測試。
隨機擬似資料:使用預先計算好的隨機擬似資料將獨有的資料寫入每個測試的 RAM。資料通過測試後,程式會再次讀取資料,以確定資料仍然正確。
資料讀取/寫入測試:本測試會將測試資料寫入 SRAM,再讀取這些資料,以確定資料正確。測試用的資料是 0x00000000、0xFFFFFFFF、0xAA55AA55 及 0x55AA55AA。
交替式資料型態測試:本測試會將測試資料寫入 SRAM,將補充的測試資料寫入下一個位址中,然後再讀取兩類資料,以確定資料正確。測試之後,程式會再一次讀取資料,以確保資料仍然正確。測試用的資料是 0x00000000、0xFFFFFFFF、0xAA55AA55 及 0x55AA55AA。
|
B2
|
BD SRAM
|
本測試可測驗緩衝關鍵字 (BD) SRAM。本測試的執行方式與 B1 描述的封包臨時組合及拆解測試相同。
|
B3
|
DMA SRAM
|
本測試可透過 B1 測試描述的封包臨時組合及拆解測試,測驗直接記憶體存取 (DMA) SRAM。
|
B4
|
MBUF SRAM
|
本測試可透過 B1 測試描述的封包臨時組合及拆解測試,測驗記憶體存取緩衝 (MBUF) SRAM。
|
B5
|
MBUF SRAM 透過 DMA
|
本測試會使用八種資料測試型態。本測試會使用一個 0x1000 大小的資料緩衝器。進行每種型態的測試前,會先初始化緩衝器,並將測試型態填入緩衝器。然後就會進行 0x1000 大小的傳輸動作,將 DMA 由主機緩衝器傳輸至網路卡 MBUF 記憶體。
對照主機記憶體來檢驗網路卡 MBUF 記憶體內的資料完整性,然後為整個 MBUF 緩衝器重覆該 DMA。接著,測試會執行從網路卡接收 DMA到主機。每次接收 DMA 前,都會先將 0x1000 位元組大小的測試緩衝器歸零。在測試檢驗資料的完整性之後,會為整個 MBUF SRAM 範圍而重覆本測試。八種測試型態說明如下。
測試 型態說明
16 00 與 16 FF 先以 16 位元組的 00,再以 16 位元組的 FF 來填滿整個主機的 DMA 緩衝器。
16 FF 與 16 00 先以 16 位元組的 FF,再以 16 位元組的 00 來填滿整個主機的 DMA 緩衝器。
32 00 與 32 FF 先以 32 位元組的 00,再以 32 位元組的 FF 來填滿整個主機的 DMA 緩衝器。
32 FF 與 32 00 先以 32 位元組的 FF,再以 32 位元組的 00 來填滿整個主機的 DMA 緩衝器。
00000000 完全以 00 來填滿整個主機的 DMA 緩衝器。
FFFFFFFF 完全以 FF 來填滿整個主機的 DMA 緩衝器。
AA55AA55 以 0xAA55AA55 來填滿整個主機的 DMA 緩衝器。
55AA55AA 以 0x55AA55AA 來填滿整個主機的 DMA 緩衝器。
|
B7
|
CPU GPR
|
本測試可檢驗 CPU 一般用途暫存器,並與封包臨時組合及拆解測試 (B1) 一樣以 3 種不同電壓 (1.1V、1.2V 和 1.3V) 進行測試。
|
C 組:雜項測試
|
C1
|
NVRAM
|
在電子可抹式可程式化唯讀記憶體 (EEPROM) 測試中使用增量測試資料。本測試會將測試資料填入至測試範圍,然後再讀取這些資料以檢驗其內容。測試後,測試會在測試範圍中填入 0 值,以便清除記憶體。
|
C2
|
CPU
|
本測試會開啟 Cpu.bin 檔案。如果檔案存在且內容為正確,測試會將程式碼載入 RX CPU 與 TX CPU 並驗證 CPU 的執行。
|
C3
|
DMA
|
本測試可同時測驗高優先度直接記憶體存取 (DMA) 和低優先度 DMA。本測試會將資料從主機記憶體移至網路卡 SRAM 並檢驗資料。測試接著會將資料送回主機記憶體,並再次對資料進行檢驗。
|
C4
|
MII
|
媒體獨立介面 (MII) 測試功能與控制暫存器測試 (A2) 的測試功能相同。設定內容中所指定的每個暫存器,都會定義唯讀位元及讀取/寫入的位元。本測試會將 0 及 1 值寫入測試位元中,以確認唯讀位元值不會有任何變動,而讀取/寫入位元則變動,。
本測試會嘗試讀取暫存器的設定檔 (Miireg.txt),以便暫存器進行定義的工作。若該檔案不存在,便會使用下表:
位移 唯讀遮罩 讀取/寫入遮罩
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 0x7C00 0x0000
0x19 0x7C00 0x0000
0x1E 0x0000 0xFFFF
0x1F 0x0000 0xFFFF
|
C5
|
VPD
|
在執行測試前,VPD 測試會先將重要產品資料 (VPD) 記憶體的內容儲存起來。測試接著會將五種測試資料型態 (0xFF、0xAA、0x55、增量資料與減量資料) 中的其中一種寫入 VPD 記憶體內。預設是使用增量資料型態。測試將會寫入並讀取整個測試範圍,然後還原 VPD 記憶體的原始內容。
|
C6
|
ASF 硬體
|
重設測試:本測試會設定重設位元與輪詢,以進行自我清除位元。本測試會驗證暫存器重設值。
事件對應測試:本測試會設定 SMB_ATTN 位元。藉著更改 ASF_ATTN LOC 位元,本測試檢驗 TX_CPU 或 RX_CPU 事件位元內的對應位元。
計數器測試
- 透過設定位元以清除 WG_TO、HB_TO、PA_TO、PL_TO、RT_TO 等位元,並確保該位元已清除。
- 清除時間戳記計數器。將 1 的值寫入每個 PL、PA、HB、WG、RT 計數器內。設定 TSC_EN 位元。
- 輪詢每個 PA_TO 位元,然後計數到 50。檢查是否在計數到 50 時已設定好 PL_TO 位元。繼續計數直到 200。檢查是否已設定好其他所有的 TO 位元,並檢查時間戳記計數器是否已增加。
|
C7
|
擴充 ROM
|
本測試可檢驗啟用、停用、及存取網路卡上的擴充唯讀記憶體 (ROM) 的功能。
|
D 組:驅動程式相關測試
|
D1
|
MAC 迴圈
|
本測試是針對內部迴圈資料傳輸/接收的測試。本測試會將媒體存取控制 (MAC) 初始化,並將其轉為內部迴圈模式,然後傳輸 100 個封包。資料應回傳至接收通道並由接收例行程序所接收,並驗證資料的完整性。除非 Gigabit Ethernet 已經啟用,否則此測試使用 100-Mbit/s 資料速率。
|
D2
|
PHY 迴圈
|
此測試和 MAC 迴圈測試 (D1) 相同,但是這項測試會透過實體層裝置 (PHY) 回傳資料。除非 Gigabit Ethernet 已經啟用,否則此測試使用 100-Mbit/s 資料速率。
|
D5
|
MII 雜項
|
本測試可檢驗自動輪詢及 PHY 中斷能力。這些是 PHY 的功能。
|
D6
|
MSI
|
本測試可檢驗網路卡的訊息訊號中斷 (MSI) 能力。MSI 定義請參照 PCI 規格 2.3 版。
|
診斷測試訊息
/* 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-clear",
/* 53 */ "ATTN_LOC %d cannot be mapped to %cX CPU event bit %d",
/* 54 */ "%s Register is not cleared to zero after reset",
/* 55 */ "Cannot start poll_ASF Timer",
/* 56 */ "poll_ASF bit did not get reset after acknowledged",
/* 57 */ "Timestamp Counter is not counting",
/* 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 manufacture 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",
返回內容頁