Flash WinYao WYI350-T4 EEPROM with EEUpdate
Intel BootUtil v19.1, WinYao i350-T4
The adapter is in a state with Intel iSCSI Remote Boot Agent that it won't save or display any parameters. The NIC EEPROM is rewritten to overcome this. When it started the NIC had eeprom v1.56. Upon completion it has v0.30.
> BOOTUTILW64E.EXE -NIC=1 Intel(R) Ethernet Flash Firmware Utility BootUtil version 1.4.103.0 Copyright (C) 2003-2014 Intel Corporation Port Network Address Location Series WOL Flash Firmware Version ==== =============== ======== ======= === ============================= ======= 1 2C534A000FF6 2:00.0 Gigabit NO iSCSI Primary 3.0.23 2 2C534A000FF7 2:00.1 Gigabit N/A iSCSI 3.0.23 3 2C534A000FF8 2:00.2 Gigabit N/A iSCSI 3.0.23 4 2C534A000FF9 2:00.3 Gigabit N/A iSCSI 3.0.23
EEUpdate
Display the EEPROM version information:
> EEUPDATEW64e.exe /ALL /EEPROMVER Using: Intel (R) PRO Network Connections SDK v2.22.14 EEUPDATE v5.22.14.00 Copyright (C) 1995 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. NIC Bus Dev Fun Vendor-Device Branding string === === === === ============= ================================================= 1 2 00 00 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 2 2 00 01 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 3 2 00 02 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 4 2 00 03 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 1: EEPROM Image Version: 1.56 2: EEPROM Image Version: 1.56 3: EEPROM Image Version: 1.56 4: EEPROM Image Version: 1.56
Update the NIC EEPROM with the updated data (WinYao):
> EEUPDATEW64e.exe -NIC=1 -D 4.EEP Using: Intel (R) PRO Network Connections SDK v2.22.14 EEUPDATE v5.22.14.00 Copyright (C) 1995 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. NIC Bus Dev Fun Vendor-Device Branding string === === === === ============= ================================================= 1 2 00 00 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 2 2 00 01 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 3 2 00 02 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 4 2 00 03 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 Writing EEPROM. PLEASE DO NOT INTERRUPT THIS PROCESS. 1: EEPROM image (excluding MAC Address) updated successfully. 1: Updating Checksum and CRCs...Done.
This didn't yield a good result, so the intel image was applied (v0.30):
> EEUPDATEW64e.exe -ALL -D II350T4.EEP Using: Intel (R) PRO Network Connections SDK v2.22.14 EEUPDATE v5.22.14.00 Copyright (C) 1995 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. NIC Bus Dev Fun Vendor-Device Branding string === === === === ============= ================================================= 1 2 00 00 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 2 2 00 01 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 3 2 00 02 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 4 2 00 03 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 Writing EEPROM. PLEASE DO NOT INTERRUPT THIS PROCESS. 1: EEPROM image (excluding MAC Address) updated successfully. 1: Updating Checksum and CRCs...Done. Writing EEPROM. PLEASE DO NOT INTERRUPT THIS PROCESS. 2: EEPROM image (excluding MAC Address) updated successfully. 2: Updating Checksum and CRCs...Done. Writing EEPROM. PLEASE DO NOT INTERRUPT THIS PROCESS. 3: EEPROM image (excluding MAC Address) updated successfully. 3: Updating Checksum and CRCs...Done. Writing EEPROM. PLEASE DO NOT INTERRUPT THIS PROCESS. 4: EEPROM image (excluding MAC Address) updated successfully. 4: Updating Checksum and CRCs...Done.
Test
> EEUPDATEW64e.exe -ALL -test Using: Intel (R) PRO Network Connections SDK v2.22.14 EEUPDATE v5.22.14.00 Copyright (C) 1995 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. NIC Bus Dev Fun Vendor-Device Branding string === === === === ============= ================================================= 1 2 00 00 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 2 2 00 01 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 3 2 00 02 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 4 2 00 03 8086-1521 Intel(R) Ethernet Server Adapter I350-T4 1: passed EEPROM Test. 2: passed EEPROM Test. 3: passed EEPROM Test. 4: passed EEPROM Test.
Help
Using: Intel (R) PRO Network Connections SDK v2.22.14 EEUPDATE v5.22.14.00 Copyright (C) 1995 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. ----------------------------------------------------- Options: /HELP or /? Displays command line help. /EXITCODES Displays exit code help. /ALL Selects all adapters found in the system. /NIC=XX Selects a specific adapter (1-32). /BUS=XX Selects PCI bus of adapter to program. Must be used with the DEV parameter to specify an adapter. /DEV=XX Selects PCI device of the adapter to program. Must be used with the BUS parameter to specify an adapter. /FUN=XX Selects PCI function of the adapter to program. Must be used with both the BUS and DEV parameters to specify an adapter. /DEVICE=<pci device ID> 4 hex digit device id of card to program. /SUBDEVICE=<pci subsystem device ID> 4 hex digit subsystem device id of card to program. /DUMP Dumps EEPROM memory contents to file. /MAC_DUMP_FILE Dumps the MAC address to a file usable by the /A command. /MAC_DUMP Displays the adapter LAN MAC address. /CB <offset> <bitmask> Clears bits in the EEPROM, specified in <bitmask>. /SB <offset> <bitmask> Sets bits in the EEPROM, specified in <bitmask>. /RW <word> Reads <word> from the EEPROM. /WW <word> <value> Writes <value> into <word> in EEPROM. /MAC=macaddr Programs the EEPROM with only the MAC address of macaddr without changing the rest of the EEPROM. /A <addrfile> or /address <addrfile> Programs the EEPROM with only the MAC address from the <addrfile> without changing the rest of the EEPROM. /D <imagefile> or /DATA <imagefile> Programs the EEPROM with the contents of <imagefile> without changing the MAC address. /CALCCHKSUM Forces the EEPROM checksum and CRCs to be updated. /EEPROMVER Displays the version of the EEPROM image. /INVMVERSION Displays the version of the iNVM image. /PCIINFO Displays the PCI information of the adapter. /TEST Checks the EEPROM checksum and size. /IDFLASH Displays the flash ID and its protected status. /VERSION Displays version and the diagnostic library information. /GUI Brings up GUI mode. /GUI /HELP Displays GUI help. /NOPROT When programming an image for devices that support NVM protection, prevents protection from being enabled. This switch must be used with the /DATA command and has no effect on NVM devices that are already protected. /DEBUGLOG <debugfile> Log debug messages into the debugfile. /VERIFY <targetfile> Verifies the eeprom image in eeprom to the target file specified in <targetfile>. /ADAPTERRESET Reset the adapter. *CAUTION* This will unload the driver for this device if present. /SANMAC_DUMP Displays the dedicated MAC address for the SAN. /SANMAC=macaddr Programs the dedicated SAN MAC address without changing the rest of the EEPROM. /SANADDRESS <addrfile> Programs the dedicated SAN MAC address with the MAC address from <addrfile>. /INVMVERIFY /FILE=<[path\]filename>] Compares autoload configuration stored in OTP memory with the configuration defined in configuration file. /INVMTEST /FILE=<[path\]filename>] Report number of free space left in INVM if autoload configuration defined in configuration file would be applied. /INVMUPDATE /FILE=<[path\]filename>] Write new autoload configuration defined in Raw (*.raw) configuration file to empty INVM or updates current autoload configuration stored in INVM based on 'human readable' configuration file. /INVMISLOCKED Checks if autoload configuration stored in OTP memory is protected against write attempts /INVMLOCK Sets unique record in autoload configuration stored in INVM protecting its content against further updates. /INVMGET Dumps autoload configuration stored in INVM to file with predefined name <mac address hex string>.otp. /FORCE Omits any warnings and forces command execution. /KEEPCONFIG This option lets you keep config words while upgrading eeprom. /PORT_MAC=macaddr /NUM=Port_num Programs the dedicated Port MAC address without changing the rest of the EEPROM. /PORT_MAC_DUMP /NUM=Port_num Display the adapter port MAC address. /SERIAL_MAC=macaddre Programs the dedicated PCIe serial MAC address without changing the rest of the EEPROM. /SERIAL_MAC_DUMP Display the adapter PCIe serial MAC address. /PF_MAC=macaddr /NUM=PF_num Programs the dedicated MAC address of a specified Physical Function This allows altering the mac addresses of inactive functions of a visible NIC. /PF_MAC_DUMP /NUM=PF_num Display MAC address of a selected Physical Function of the specified NIC. This allows dumping MAC addresses of inactive functions Of a visible device.
LanConf
Celo
Intel (R) PRO Adapter End of Line Diagnostic Utility v1.22.14.00 Copyright (C) 2002 - 2013 by Intel (R) Corporation. Intel (R) Confidential and not for general distribution. Found Intel(R) Ethernet Server Adapter I350-T4 Card 1: Bus=2 Dev=0 Function=0 MAC Address=2C534A000FF6 IRQ=98 Testing adapter...hit <ESC> to abort. Device Registers...PASSED EEPROM Test...PASSED FIFO Test...UNSUPPORTED Internal (Extended) Loopback Test...PASSED Testing completed. Found Intel(R) Ethernet Server Adapter I350-T4 Card 2: Bus=2 Dev=0 Function=1 MAC Address=2C534A000FF7 IRQ=179 Testing adapter...hit <ESC> to abort. Device Registers...PASSED EEPROM Test...PASSED FIFO Test...UNSUPPORTED Internal (Extended) Loopback Test...PASSED Testing completed. Found Intel(R) Ethernet Server Adapter I350-T4 Card 3: Bus=2 Dev=0 Function=2 MAC Address=2C534A000FF8 IRQ=147 Testing adapter...hit <ESC> to abort. Device Registers...PASSED EEPROM Test...PASSED FIFO Test...UNSUPPORTED Internal (Extended) Loopback Test...PASSED Testing completed. Found Intel(R) Ethernet Server Adapter I350-T4 Card 4: Bus=2 Dev=0 Function=3 MAC Address=2C534A000FF9 IRQ=96 Testing adapter...hit <ESC> to abort. Device Registers...PASSED EEPROM Test...PASSED FIFO Test...UNSUPPORTED Internal (Extended) Loopback Test...PASSED Testing completed.
Help
CELO [Options] OPTIONS: Non-Network Diagnostics: /EEPROM - Test EEPROM Checksum. /FIFOS - Test FIFOS on Network Adapter. /IRQ - Test Network Adapter IRQ. /REGS - Perform Read/Write tests on Network Adapter. /DIAGS - Run Non-Network diagnostic tests: REGS, EEPROM, FIFOS, Internal Loopback. /MACADDR X - Checks first three bytes of MAC address. Where X is a six digit hex number. Up to five MAC address prefixes, seperated by spaces, can be tested. /FLASH - Tests for a working flash /AMT - Tests Intel(R) AMT functionality. The test will return: Pass - AMT is configured and working correctly. Fail - AMT is configured and enabled but not working. Unsupported - AMT is not configured on this adapter or this adapter is incapable of running AMT. /IOAT - Tests Intel(R) I/O Acceleration Technology. Tests will return: Pass - I/O Acceleration Technology is working correctly. Fail - I/O Acceleration Technology is not working. Unsupported - Adapter does not support I/O Acceleration Technology. Network Diagnostics: /LINK - Check for Network Adapter Link. Note: This test is supported in auto-negotiation mode. The TTL test is recommended over the LINK test. /TTL - The Time To Link Test will time how long it takes to link with the specified link partner. Different link speeds can be set by both forcing and auto-negotiating to test at various speeds and settings. /LB - Run Internal Loopback Test It runs the best loopback test that the adapter supports. /EXTLB [W X Y Z] - Test External Loopback with an external dongle where W = <10Mbps Tx Count - default: 500>, X = <100Mbps Tx Count - default: 500>, Y = <1000Mbps Tx Count - default: 5000>. Z = <10000Mbps Tx Count - default: 5000>. /TIMEOUT [n] - When used with the /EXTLB command, the /TIMEOUT option will cause the test to fail after the specified 'n' number of seconds. /TDR - Run TDR test /NWTEST - Run Network Test which searches for a responder, when the responder is located, it sends directed packets to the responder in lock-step. It sends packets in random sizes with varying data contents and validates the contents of each packet. If a responder does not exist, the test fails. Note: You must have link to run this test. /NETWORK - Run Network specific diagnostic tests: LINK, NWTEST. /SENDRESP [X Y] - Run peer sender/responder test from NIC X to NIC Y both present in the same system. This will send a preset number of packets from one adapter to the other and verify reception and validity of the packets from the partner. This will run the test at all speeds supported by both the sender adapter and the responder adapter. This is a hardware test to verify adapter design functionality. Note: This test assumes the adapters are connected directly via a crossover cable not through a switch or a hub. Results going through a switch or hub are not predictable. No support for Spanning Tree environments. /MAXSPEED - Deprecated. Peer responder now fails if it cannot link at the max common speed supported by *both* sender and responder. /CARD=XX - Allows user to select which Network Adapter to test (1-32). /CARD X Y Z - Test card installed at X, Y, Z, where X = Bus #, Y = Device #, and Z = Function # (in decimal). /EXCLUDE=XX - Allows user to select a Network Adapter to exclude from testing (1-32). /EXCLUDE X Y Z - Exclude card installed at X, Y, Z from testing, where X = Bus #, Y = Device #, and Z = Function # (in decimal). When this option is used CELO assumes that only the card being excluded may have drivers loaded on it. If this is not the case, and if drivers are present on cards being tested then results are unpredictable (it will result in system hang). /HOTSWAP - Test PCI Express card with Hotswap feature. Hotswap stops the test and prompts the user to swap the card. Note: This is system dependent and may not work. Bypass configuration: /BYPASS_DEVICES - Shows available adapters and bypass support. /BYPASS_FORCE=forceMode - Force requested state on switching matrix. /BYPASS_STATUS - Display status of the relays. /BYPASS_AUX_ON=mode - Determines what action the microcontroller should take on first power on when aux supply is applied. /BYPASS_MAIN_ON=mode - Determines what action the microcontroller should take on system power on when the main supply is ramped up. /BYPASS_MAIN_OFF=mode - Determines what action the microcontroller should take on system power down when the main supply is ramped down. /BYPASS_AUX_OF=mode - Determines what action the microcontroller should take if a power failure is detected. /BYPASS_WD_TIMEOUT=mode - Determines what action the microcontroller should take if watchdog timeout event is detected. /BYPASS_ENABLE_WD - Enables Watchdog Timer. /BYPASS_DISABLE_WD - Disables Watchdog Timer. /BYPASS_WD_TIMEOUT_VALUE timeout - Sets low resoulution Watchdog Timeout. /BYPASS_RESTORE - Restores port pairs to known preconfigured default state. /BYPASS_CLEARLOG - Clear event log content on the bypass NIC. forceMode - one of: {AUTO, NORMAL, BYPASS, ISOLATE} mode - one of: {KEEP, NORMAL, BYPASS, ISOLATE} timeout - one of: {1, 1.5, 2, 3, 4, 8, 16, 32} Other: /? or /HELP - Brings up command line help. /LOOP - Causes CELO to loop until <ESC> key is hit. /LOOP n - Causes CELO to loop n times, where n is the number of loops designated by the user. /STOPFAIL - CELO will stop testing and exit, if a test fails (by default, CELO doesn't exit upon failure). /LOGFILE=(<[path\]filename> | OFF) - By default output is logged to CELO.LOG. LOGFILE is use to specify an alternate path and file name or to turn logging off. /ERRORLOG[=<[path\]filename>] - Output is only logged if an error or test failure occurs. If no file name is specified output is directed to ERROR.LOG /SILENT - Causes CELO to suppress output to the screen. /SHOWLINKINFO - Runs applicable Non-Network diagnostics as well as displaying the adapter's link status on screen. May take up to 10 seconds for link auto-negotiation /EEPROMVER - Displays the version of the EERPOM image on screen. /FORCEDSPEED X - Select the speed and duplex where X is one of: 10H, 10F, 100H, 100F. Note: 10GbE cannot be forced and 1000h violates 1GbE protocol. Note that not all speeds can be forced and that forcing speed only on one end can cause a speed-duplex mismatch in which case the link results can be unpredictable. /AUTONEGSPEED X - Select the speed and duplex where X is one of: 10H, 10F, 100H, 100F, 1000, 10G (depending on the NIC capabilities).Note: 1000h violates 1GbE protocol. Different link speeds can be set by both forcing and autonegotiating to test at various speeds and settings. /DEVICES - Displays the device list and quits. /VERSION - Displays CELO version information and the diagnostic library version information. /RESPONDER - Puts the adapter into responder mode for /nwtest. /INVMVERIFY /FILE=<[path\]filename>] - Compares autoload configuration stored in OTP memory with the configuration defined in configuration file. /INVMISLOCKED - Checks if autoload configuration stored in OTP memory is protected against write attempts /INVMTEST=XXX - Checks if the continues region of XXX empty bytes or more has left for any update. /NVMSECURITY - Checks if appropriate NVM image has been loaded during manufacturing and NVM security is enabled /INVMVERSION - Displays the version of the iNVM image on screen.
Links