I haven’t pushed this to GitHub, yet, but here’s what I wrote up for the HGST drives so far.
Note this is for the HUH728080AL5200 - I don’t have other HGST drives to test. YMMV. Also, note that HUGO is a WD/HGST tool and probably won’t work with other drives.
HGST
Configure Link Speed
Set to SAS2/6Gbps
sdparm -p pcd --set=PMALR=10 -t sas -S /dev/sdX
sdparm -p pcd --set=PMALR.1=10 -t sas -S /dev/sdX
Set to SAS3/12Gbps
sdparm -p pcd --set=PMALR=11 -t sas -S /dev/sdX
sdparm -p pcd --set=PMALR.1=11 -t sas -S /dev/sdX
Breakdown:
-p pcd
is the “page”, in this case it’s the PHY Control and Discovery, or PCD. Equivalent to -p 0x19,0x01
in hex.
--set=PMALR=XX
sets the Programmed Maximum Link Rate (PMALR). I believe there are two SAS channels, so there’s a PMALR.1 as well. Equivalent to --set=0x29:4:1=XX
and --set=0x59:4:1=XX
respectively.
-t sas
defines the transport protocol.
-S
tells sdparam to save the update (next drive or system power-down/up) rather than just edit the current setting.
/dev/sdX
is the device being modified.
Check PMALR values:
# sdparm -g PMALR -l /dev/sda
/dev/sda: HGST HUH728080AL5200 A515
PMALR 10 [cha: y, def: 10, sav: 10] Programmed maximum link rate
# sdparm -g PMALR.1 -l /dev/sda
/dev/sda: HGST HUH728080AL5200 A515
PMALR.1 10 [cha: y, def: 11, sav: 10] Programmed maximum link rate
Firmware Update
1. Download HUGO.
Download HUGO 7.4.5 from the TrueNAS community resources library. Extract the contents of the .zip file.
2. Download new firmware.
Download firmware from HDDGuru. Extract the firmware .bin file from the .zip file.
Model |
Firmware |
HUH728080AL5200 |
A4GNAD05.zip |
3. Install ncurses.
Install the latest version of ncurses-devel.
dnf install ncurses-devel -y
4. Create symlinks.
HUGO 7.4.5 requires libncurses.so.5 and libtinfo.so.5, but your OS repo may include a newer version. We can symlink the old library names to the new libraries installed.
ln -s /usr/lib64/libncursesw.so.6.1 /usr/lib64/libncurses.so.5
ln -s /usr/lib64/libncursesw.so.6.1 /usr/lib64/libtinfo.so.5
5. Update firmware.
Update drive firmware. This command updates one drive at a time. See hugo help
for more options.
/path/to/hugo update -g /dev/sdX -f /path/to/A4GNAD05.bin