Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products

Open Networking Hardware Diagnostic Guide October 2024

PDF

eepromtool

To program the type, length, value (TLV) format EEPROMs, use the eepromtool. You can also use the eepromtool to show all the TLV-formatted EEPROM contents or show specific EEPROM content by specifying the EEPROM type.

Tests

The test option in EEPROM devices allows you to verify the MAC address. Use this test for MAC address consistency.

CLI options

DellEmc Diag - Eeprom Tool
version 1.5, x.xx.x.x-x
build, 2022/05/20,

Syntax:= eepromtool <option>
  Display help-text:=
      eepromtool --help                                         (or)
      eepromtool -h
  List the understood TLV codes and names:=
      eepromtool --list                                         (or)
      eepromtool -l
  List all eeprom devices:=
      eepromtool --listdevices                                  (or)
      eepromtool -L
  Dump the PSU eeprom:=
      eepromtool --psueepromdump                                (or)
      eepromtool -m
  Dump the FAN eeprom:=
      eepromtool --faneepromdump                                (or)
      eepromtool -F
  Show the EEPROM data:=
     eepromtool --eeprom=<eepromtype> --show                    (or)
     eepromtool -P <eepromtype>  -x
  Reset the EEPROM data:=
     eepromtool --eeprom=<eepromtype> --erase                   (or)
     eepromtool -P <eepromtype>  -e
  Verify the MAC address in system-eeprom and mac-eeprom:=
     eepromtool --eeprom=<eepromtype> --test                    (or)
     eepromtool -P <eepromtype>  -t
  Look up a TLV by code and write the value to stdout:=
     eepromtool --eeprom=<eepromtype> --get <code>              (or)
     eepromtool -P <eepromtype>  -g <code>
  Execute repeatedly command by count:=
     eepromtool --iteration=max/<count> [option1] [option2]...  (or)
     eepromtool -I max/<count> [option1] [option2]...
  Set a TLV code to a value:=
     eepromtool --eeprom=<eepromtype> --set <code>=<value>,<code>=<value>...(or)
     eepromtool -P <eepromtype> -s <code>=<value>,<code>=<value>...

Usage:=
    -h, --h              Show the help text
    -l, --list           List the understood TLV codes and names
    -L, --listdevices    List all EEPROM devices
    -m, --psueepromdump  Dump the PSU EEPROM
    -F, --faneepromdump  Dump the FAN EEPROM
    -P, --eeprom=        EEPROM type
    -x, --show           Show operation
    -e, --erase          Erase operation
    -t, --test           Test using the pre-programmed configuration or use supplied config
    -I, --iteration=     Iteration command execution
    -g, --get            Get operation
    -s, --set            Set operation

Output

root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --list
TLV Code TLV Name
======== =================
0x21 Product Name
0x22 Part Number
0x23 Serial Number
0x24 Base MAC Address
0x25 Manufacture Date
0x26 Device Version
0x27 Label Revision
0x28 Platform Name
0x29 Loader Version
0x2a MAC Addresses
0x2b Manufacturer
0x2c Country Code
0x2d Vendor Name
0x2e Diag Version
0x2f Service Tag
0xfd Vendor Extension
0xfe CRC-32
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --listdevices
CPUEEPROM1
CPUEEPROM2
CPUEEPROM3
CPUEEPROM4
CPUEEPROM5
CPUEEPROM6
CPUEEPROM7
CPUEEPROM8
FAN1EEPROM
FAN2EEPROM
FAN3EEPROM
FAN4EEPROM
FAN5EEPROM
SwitchEEPROM
root@dell-diag-os:/# eepromtool --psueepromdump
************PSU1_CountryCode*************
Registers 0x24a - 0x24b
CN
************PSU1_DellPartNumber*************
Registers 0x24c - 0x251
02RPHX
************PSU1_MfgID*************
Registers 0x252 - 0x256
17972
************PSU1_MfgDate*************
Registers 0x257 - 0x25e
151117
************PSU1_SerialNo*************
Registers 0x25f - 0x262
01CG
************PSU1_ServiceTag*************
Registers 0x263 - 0x269
************PSU1_LabelRevision*************
Registers 0x26a - 0x26c
A00
************PSU2_CountryCode*************
Registers 0x283 - 0x284
CN
************PSU2_DellPartNumber*************
Registers 0x285 - 0x28a
02RPHX
************PSU2_MfgID*************
Registers 0x28b - 0x28f
17972
************PSU2_MfgDate*************
Registers 0x290 - 0x297
151117
************PSU2_SerialNo*************
Registers 0x298 - 0x29b
015F
************PSU2_ServiceTag*************
Registers 0x29c - 0x2a2
************PSU2_LabelRevision*************
Registers 0x2a3 - 0x2a5
A00
root@dell-diag-os:/#  

root@dell-diag-os:/opt/dellemc/diag/bin#
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --eeprom=cpueeprom2 --set 0x21='cpu2'
Notice: Invalid TLV checksum found. Using default contents.
Adding TLV 0x21: Product Name
Programming passed.
TlvInfo Header:
Id String: TlvInfo
Version: 1
Total Length: 12
TLV Name Code Len Value
-------------------- ---- --- -----
Product Name 0x21 4 cpu2
CRC-32 0xFE 4 0x338B2B86
Checksum is valid.
root@dell-diag-os:/opt/dellemc/diag/bin#
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --eeprom=cpueeprom2 --get 0x21
cpu2
root@dell-diag-os:/opt/dellemc/diag/bin#
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --eeprom=cpueeprom2 --show
TlvInfo Header:
Id String: TlvInfo
Version: 1
Total Length: 12
TLV Name Code Len Value
-------------------- ---- --- -----
Product Name 0x21 4 cpu2
CRC-32 0xFE 4 0x338B2B86
Checksum is valid.
root@dell-diag-os:/opt/dellemc/diag/bin#
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --eeprom=cpueeprom1 --erase
Programming passed.
EEPROM does not contain data in a valid TlvInfo format.
root@dell-diag-os:/opt/dellemc/diag/bin# eepromtool --eeprom=cpueeprom1 --show
Notice: Invalid TLV header found. Using default contents.
Notice: Invalid TLV checksum found. Using default contents.
TlvInfo Header:
Id String: TlvInfo
Version: 1
Total Length: 6
TLV Name Code Len Value
-------------------- ---- --- -----
CRC-32 0xFE 4 0xD4431C18
Checksum is valid.
root@dell-diag-os:/opt/dellemc/diag/bin#

Rate this content

Accurate
Useful
Easy to understand
Was this article helpful?
0/3000 characters
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please provide ratings (1-5 stars).
  Please select whether the article was helpful or not.
  Comments cannot contain these special characters: <>()\