Updating the HGST HDD & SSD firmware

Discussion in 'Hard Drives and Solid State Drives' started by Vahan, Nov 1, 2018.

  1. Vahan

    Vahan New Member

    Joined:
    Sep 19, 2017
    Messages:
    3
    Likes Received:
    1
    I have recently purchased several models of HGST HDD and SSD media and decided to synchronize their firmware versions, sharing the achieved results. I hope my following findings will save some time for the fellas attempting the same noble quest.

    I wasn't able to find firmware upgrades on the HGST website, so the quest to find the recent version became more interesting. Having some of the drives with newer firmware helped to further narrow the search, and eventually, I was able to find a source that had not only HGST firmware but some other brands as well.

    The whole process was done on SuperMicro servers running CentOS 7.5 x86_64. In my case, I had two servers, one with the BPN-SAS2-826A backplane connected to LSI 9201-16i HBA (SAS2116), and the other with the BPN-SAS3-216A backplane connected to 3 LSI 9300-8i (SAS3008) HBAs.

    You will need the sg3_utils package:

    Code:
    yum install sg3_utils
    Identify the drives installed by running the lsscsi command:

    Code:
    lsscsi -sig
    HGST has specific names for the firmware files, and the larger chunk of the time was spent on finding the corresponding names for the models I own:

    Code:
    HUS724040ALS640    MPGNA3A0.bin
    HUSSL4010ASS600    A0GNA182.bin
    HUSSL4010BSS600    SRGNA1D0.bin
    HUSMM1680ASS200    SPGNA204.bin
    
    I was able to find these by googling the firmware revision versions I had on my drives and stumbled across a file named Drive_Firmware_1.13.tgz, apparently from a three letter brand and that file had lots of other models, with the model-firmware.bin pairs listed inside the fwupdate.ini file. Hint: search for "Drive Firmware Package Version 1.13 Release Notes" then browse around the pdf.

    Next step: checking the official drive documentation for firmware update mechanisms:

    https://www.hgst.com/sites/default/files/resources/Ultrastar_7K4000_SAS_Spec_V1.8.pdf
    https://www.hgst.com/sites/default/files/resources/Ultrastar_SSD400S_SAS_V2.0.pdf
    https://www.hgst.com/sites/default/files/resources/US_SSD800MH.B_1600MM_1600MR_ProdManual.pdf

    I was able to confirm that the above models support SCSI firmware update operations, so the rest was easy:

    Code:
    # sg_write_buffer -vvvvv -m 5 --in SRGNA1D0.bin /dev/sg15
    found bsg_major=248
    open /dev/sg15 with flags=0x802
    tried to read 8388608 bytes from SRGNA1D0.bin, got 1114112 bytes
    will write 1114112 bytes
        Write buffer cmd: 3b 05 00 00 00 00 11 00 00 00
        Write buffer parameter list (first 256 bytes):
            11 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
            00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
            48 69 74 61 63 68 69 20  47 6c 6f 62 61 6c 20 53
            74 6f 72 61 67 65 20 54  65 63 68 6e 6f 6c 6f 67
            79 20 49 43 33 35 4c 78  78 78 55 78 44 33 32 31
            30 2d 30 20 4d 69 63 72  6f 63 6f 64 65 20 28 43
            29 20 43 6f 70 79 72 69  67 68 74 20 48 69 74 61
            63 68 69 20 43 6f 72 70  2e 20 32 30 30 33 2c 20
            32 30 30 34 2e 20 41 6c  6c 20 72 69 67 68 74 73
            20 72 65 73 65 72 76 65  64 2e 20 20 55 53 20 47
            6f 76 65 72 6e 6d 65 6e  74 20 55 73 65 72 73 20
            52 65 73 74 72 69 63 74  65 64 20 52 69 67 68 74
            73 20 2d 20 55 73 65 20  64 75 70 6c 69 63 61 74
            69 6f 6e 20 66 6f 72 20  64 69 73 63 6c 6f 73 75
            72 65 20 72 65 73 74 72  69 63 74 65 64 20 62 79
            20 47 43 41 20 41 44 50  20 53 63 68 65 64 75 6c
          duration=6747 ms
    
    Make sure to address the drive by its /dev/sg?? name, not /dev/sd??, otherwise the operation will fail.

    After the command completes, you can confirm the successful update by using the smartctl command, in my case:

    Code:
    smartctl -i /dev/sgXX | grep Revision
    Note that the new firmware is not active until you reboot the server.

    I also had some vendor-locked drives (HITACHI HUS72404CLAR4000, the branded version of the HGST HUS724040ALS640), and unfortunately, the same procedure failed for them:

    Code:
    # sg_write_buffer -vvvvvv -m 5 --in=MPGNA3A0.bin /dev/sg4
    found bsg_major=248
    open /dev/sg4 with flags=0x802
    tried to read 8388608 bytes from MPGNA3A0.bin, got 1179648 bytes
    will write 1179648 bytes
        Write buffer cmd: 3b 05 00 00 00 00 12 00 00 00
        Write buffer parameter list (first 256 bytes):
            12 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
            00 00 00 00 00 00 00 00  00 00 00 00 ff ff ff ff
            48 47 53 54 2c 20 61 20  57 65 73 74 65 72 6e 20
            44 69 67 69 74 61 6c 20  43 6f 6d 70 61 6e 79 20
            49 43 33 35 4c 78 78 78  55 78 44 33 32 31 30 2d
            30 20 4d 69 63 72 6f 63  6f 64 65 20 28 43 29 20
            43 6f 70 79 72 69 67 68  74 20 57 65 73 74 65 72
            6e 20 44 69 67 69 74 61  6c 20 43 6f 72 70 2e 20
            32 30 31 32 2c 20 32 30  31 32 2d 32 30 31 33 2e
            20 41 6c 6c 20 72 69 67  68 74 73 20 72 65 73 65
            72 76 65 64 2e 20 20 55  53 20 47 6f 76 65 72 6e
            6d 65 6e 74 20 55 73 65  72 73 20 52 65 73 74 72
            69 63 74 65 64 20 52 69  67 68 74 73 20 2d 20 55
            73 65 20 64 75 70 6c 69  63 61 74 69 6f 6e 20 66
            6f 72 20 64 69 73 63 6c  6f 73 75 72 65 20 72 65
            73 74 72 69 63 74 65 64  20 62 79 20 47 43 41 20
          duration=71 ms
    write buffer:  Descriptor format, current;  Sense key: Illegal Request
     <<<Sense data overflow>>>
    Additional sense: Parameter value invalid
      Descriptor type: Information
       >> descriptor too short
        00 00 00 00 00 00 00 00 00 00
      Descriptor type: Sense key specific: Field pointer
        Error in Data byte 0
      Descriptor type: Field replaceable unit
        code=0x0
      Descriptor type: Block commands
        Incorrect Length Indicator (ILI) clear
      Descriptor type: Vendor specific [0x80]
        f1 30
      Descriptor tybad field in Write buffer cdb
    
     
    #1
    Last edited: Nov 1, 2018
    Cadal likes this.
  2. nthu9280

    nthu9280 Well-Known Member

    Joined:
    Feb 3, 2016
    Messages:
    1,418
    Likes Received:
    357
    #2
  3. azev

    azev Active Member

    Joined:
    Jan 18, 2013
    Messages:
    613
    Likes Received:
    155
    Just tried everything I can think of to try flashing sandisk ssd LT0800WM with a newer dell firmware on a supermicro server with no luck.
    I also tried to flash IBM HGST HSVW800 with standard HGST firmware with no luck as well.

    I am so tempted to buy both lenovo & dell server just so I can upgrade stuff when needed :(
     
    #3
  4. 747builder

    747builder Member

    Joined:
    Dec 17, 2017
    Messages:
    89
    Likes Received:
    36
    i know this thread is a few months old BUT.

    so i figured out your post but couldnt download it from the 3 letter mfg. ended up grabbing the firmware archive from a ftp server.

    do we know what firmware version the HUS724040ALS640 firmware is? and is it safe on flash on my HUS724040ALS640? they are normally 520 blocks where the rest of the industry is 512
     
    #4
    Last edited: Feb 21, 2019
  5. Vahan

    Vahan New Member

    Joined:
    Sep 19, 2017
    Messages:
    3
    Likes Received:
    1
    I think you've pasted the same model twice instead of the branded version?
     
    #5
  6. 747builder

    747builder Member

    Joined:
    Dec 17, 2017
    Messages:
    89
    Likes Received:
    36
    i have the version of the drive i posted above.
     
    #6
  7. muhfugen

    muhfugen Member

    Joined:
    Dec 5, 2016
    Messages:
    94
    Likes Received:
    22
    Does someone want to post a link for these firmware files? I'm trying to find some vSAN compatible firmware for my HGST SN200 disks but HGST refuses to provide them because they were OEM disks pulled from a Cisco UCS system.
     
    #7
  8. 747builder

    747builder Member

    Joined:
    Dec 17, 2017
    Messages:
    89
    Likes Received:
    36
    the directions are in the first post but your welcome to send me a PM and can discuss getting them to you..
     
    #8
Similar Threads: Updating HGST
Forum Title Date
Hard Drives and Solid State Drives Updating firmware on different OEM HGST SAS hard disks? Jan 9, 2018
Hard Drives and Solid State Drives Updating Rebranded Oracle P4608 firmware to Intel firmware? Nov 2, 2019
Hard Drives and Solid State Drives Updating firmware for HPE-rebranded Seagate XF1440 without a Linux Live CD Aug 30, 2019
Hard Drives and Solid State Drives Success updating Firmware on SEAGATE ST4000NM0023? Nov 1, 2018
Hard Drives and Solid State Drives Updating HP Variant DC S3700 firmware to Intel OEM Dec 22, 2014

Share This Page