Diablo: ULLtraDIMM - Identify & Update Firmware

From Define Wiki
Jump to navigation Jump to search

Determining Firmware Level

Identify the ULLtraDIMM devices with td-cli device --list

[root@mcs Diablo]# td-cli device --list
Device List:
tda
tdb
tdc
tdd

Identify the current FW level for a given ULLtraDIMM with td-cli device <device_id> –-status

[root@mcs Diablo]# td-cli device tda --status
tda: 
    Product Number: SDLOOCAM-400G-6K51, SN: 01190000
    Device Alias: 
    UUID: 44C73BF7-89B6-E2BF-C797-6AB19EDA04E2
    Firmware Version: 1.4.4.70 # <-- Current, running firmware
    Backup Firmware: 1.4.1.48
    DIMM Slot: P2_DIMME2
    DIMM Address: 0x14A0000000, DIMM Size: 0x100000000
    DDR Speed: 1600, IRQ: 0
    DIMM Voltage: 1.5V
    Device Group: td-cpu-31
    Control Device: /dev/tda-ctrl
    Flash Status: Read/Write
    Percentage of Warranty Remaining: 100%
    Flash Temperature: 43.0 C, Max: 61.0 C
    Performance Status: Optimal (0%)
    Lifetime: 349 hours, 256 GB read, 2816 GB written
    Block Device: /dev/tda <ok>
    Block Size: 4096 bytes, Disk Size: 400099295232 bytes
    Stride: 4 kbytes
    Block Provisioning: 100%
    DRAM Protection Status: Protected
    TRIM : Disabled
    Predictive Failure Detected: FALSE
    Commit Mode: normal

Putting an ULLtraDIMM into maintenance mode

Some operations, such as firmware updates require the ULLtraDIMM to be in maintenance mode. To do this, use td-cli device <device_id> --maintenance

[root@mcs Diablo]# td-cli device tda --maintenance
Device tda successfully put into maintenance mode

Updating the firmware

To update the firmware, use td-cli device-firmware –-upgrade <image_name> <device_id>

[root@mcs Diablo]# td-cli device-firmware --upgrade diablo_ulltradimm_v1.4.4.070.img tda
Parsed command - parsing upgrade package file
           Parsed upgrade package file - initializing upgrade
Upgrade initialization complete - performing pre-upgrade version check
           Version check complete - loading images
           Loaded image 1 of 9 for device /dev/tda
           Loaded image 2 of 9 for device /dev/tda
           Loaded image 3 of 9 for device /dev/tda
           Loaded image 4 of 9 for device /dev/tda
           Loaded image 5 of 9 for device /dev/tda
           Loaded image 6 of 9 for device /dev/tda
           Loaded image 7 of 9 for device /dev/tda
           Loaded image 8 of 9 for device /dev/tda
           Loaded image 9 of 9 for device /dev/tda
           Load phase complete.  Invoking new load for device
           Bankswitch complete.  Resetting device
           Reset complete.  Confirming versions
           Versions confirmed.  Upgrade complete
         FW upgrade succeeded.
         Command handling complete

Putting an ULLtraDIMM back into online mode

After the update, the ULLtraDIMM needs to be put back into online mode. To do this, use td-cli device <device_id> --online

[root@mcs Diablo]# td-cli device tda --online
Device tda successfully put into online mode

ALTERNATIVE - Updating the firmware in "online" mode

As an alternative to an offline (maintenance mode) update, firmware can sometime be updated whilst the module is online. To do this, parse the --online parameter. For example, td-cli device-firmware --online –-upgrade <image_name> <device_id>

[root@mcs Diablo]# td-cli device-firmware --online --upgrade diablo_ulltradimm_v1.4.4.070.img tda
If unsure about this operation, consult the user guide and release notes.
Please type 'yes' to continue, anything else will abort
>yes
  Parsed command - parsing upgrade package file
  Parsed upgrade package file - initializing upgrade
  Upgrade initialization complete - performing pre-upgrade version check
  Version check complete - loading images
  Loaded image 1 of 9 for device /dev/tda
  Loaded image 2 of 9 for device /dev/tda
  Loaded image 3 of 9 for device /dev/tda
  Loaded image 4 of 9 for device /dev/tda
  Loaded image 5 of 9 for device /dev/tda
  Loaded image 6 of 9 for device /dev/tda
  Loaded image 7 of 9 for device /dev/tda
  Loaded image 8 of 9 for device /dev/tda
  Loaded image 9 of 9 for device /dev/tda
  Load phase complete.  Invoking new load for device
  Bankswitch complete.  Resetting device
  Reset complete.  Confirming versions
  Versions confirmed.  Upgrade complete
FW upgrade succeeded.
	No alarms reported
Command handling complete