Mise à jour : Debian 10.5 Buster
La mise à jour du firmware des disques SSD Kingston s'effectue par flashage depuis une clé USB live créée à partir d'un iso fourni par Kingston. Elle nécessite que le PC sur lequel est attaché le disque dispose d'un amorçage Bios / MBR.
Références
Sommaire
Relever l'identifiant de périphérique du disque, ici /dev/nvme0n1
$ lsscsi -s |grep -i Kingston
[2:0:0:0] disk ATA KINGSTON SHSS37A 02.H /dev/sda 480GB
$ sudo smartctl -i /dev/sda |grep -E "Model|Firmware"
Model Family: Phison Driven SSDs
Device Model: KINGSTON SHSS37A480G
Firmware Version: SAFM02.H
ou bien avec nvme
$ sudo hdparm -I /dev/sda |grep -E "Model|Firmware"
Model Number: KINGSTON SHSS37A480G
Firmware Revision: SAFM02.H
https://www.kingston.com/france/en/support
sélectionner le modèle souhaité (ici SHSS3), puis la page Firmware update et télécharger l'image iso proposée, valide pour les modèles SHSS37A/240G, SHSS37A/480G, SHSS37A/960G– La version disponible à ce jour est SAFM001B
$ wget http://media.kingston.com/support/downloads/KC400_SHSS_to_SAFM001B.iso
$ sudo wipefs -n KC400**
DEVICE OFFSET TYPE UUID LABEL
KC400_SHSS_to_SAFM001B.iso 0x8001 iso9660 2016-12-06-14-45-11-00 Custom Live CD
KC400_SHSS_to_SAFM001B.iso 0x1fe dos
L'image est hybride CD et DOS, mais pas GPT)
$ KC400=KC400_SHSS_to_SAFM001B.iso
$ sudo file $KC400
KC400_SHSS_to_SAFM001B.iso: DOS/MBR boot sector; partition 1 : ID=0x17, active, start-CHS (0x0,0,1), end-CHS (0x34,63,32), startsector 0, 1583104 sectors
L'image contient un secteur de boot DOS/MBR amorçable
$ qemu-system-x86_64 $KC400
L'image doit se lancer correctement et afficher l'écran de bienvenue Custom Live CD
Échec du lancement de l'image sous qemu en mode UEFI
$ qemu-system-x86_64 -enable-kvm $KC400 --bios /usr/share/ovmf/OVMF.fd
Connecter une clé USB et relever son identifiant
$ sudo dmesg |tail -1
[ 2154.397004] sd 4:0:0:0: [sdc] Attached SCSI removable disk
Flasher le fichier iso téléchargé : Attention toutes les données sur la clé seront perdues
$ sudo dd if=KC400_SHSS_to_SAFM001B.iso of=/dev/sdc conv=fsync status=progress
Dans le menu, sélectionner la ligne "Boot the live system"
Un environnement graphique démarre
Suivre les instructions (sélection du numéro du disque - Dans le cas présent, le firmware est à jour, bien que les versions affichées SAFM02.H et SAFM001B soient différentes
Redémarrer le menu Bios - Repasser dans le mode d'amorçage souhaité pour le système
Vérifier la version du firmware (inchangée)
$ lsscsi -s |grep -i Kingston
[2:0:0:0] disk ATA KINGSTON SHSS37A 02.H /dev/sda 480G
$ sudo smartctl -i /dev/sda |grep Firmware
Firmware Version: SAFM02.H
L'utilisation d'un raccordement autre que l'interface SATA du disque est déconseillé par Kinsgton. C'est néanmoins le choix effectué ci-dessous. Le boîtier est compatible usap
$ sudo dmesg |tail -20
[ 75.567103] Bluetooth: RFCOMM socket layer initialized
[ 75.567107] Bluetooth: RFCOMM ver 1.11
[ 417.310126] usb 2-4: new SuperSpeedPlus Gen 2 USB device number 2 using xhci_hcd
[ 417.330978] usb 2-4: New USB device found, idVendor=174c, idProduct=55aa, bcdDevice= 1.00
[ 417.330981] usb 2-4: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 417.330983] usb 2-4: Product: Ugreen Storage Device
[ 417.330984] usb 2-4: Manufacturer: Ugreen
[ 417.330985] usb 2-4: SerialNumber: 123458F03274
[ 417.369945] usbcore: registered new interface driver usb-storage
[ 417.373965] scsi host3: uas
[ 417.374035] usbcore: registered new interface driver uas
[ 417.375047] scsi 3:0:0:0: Direct-Access KINGSTON SHSS37A240G 0 PQ: 0 ANSI: 6
[ 417.375551] sd 3:0:0:0: Attached scsi generic sg1 type 0
[ 417.375997] sd 3:0:0:0: [sdb] 468862128 512-byte logical blocks: (240 GB/224 GiB)
[ 417.376076] sd 3:0:0:0: [sdb] Write Protect is off
[ 417.376077] sd 3:0:0:0: [sdb] Mode Sense: 43 00 00 00
[ 417.376236] sd 3:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[ 417.376436] sd 3:0:0:0: [sdb] Optimal transfer size 33553920 bytes
[ 417.403478] sdb: sdb1
[ 417.404523] sd 3:0:0:0: [sdb] Attached SCSI disk
$ sudo dmesg |tail -1
[ 417.404523] sd 3:0:0:0: [sdb] Attached SCSI disk
$ sudo dmesg |grep uas
[ 417.373965] scsi host3: uas
$ sudo smartctl -i /dev/sdb |grep -E "Model|Firmware"
Model Family: Phison Driven SSDs
Device Model: KINGSTON SHSS37A240G
Firmware Version: SAFM00.Y
$ sudo hdparm -I /dev/sdb |grep -E "Model|Firmware"
Model Number: KINGSTON SHSS37A240G
Firmware Revision: SAFM00.Y
La version du logiciel du modèle 240G est antérieure à celle du modèle 480G
$ sudo hdparm -I /dev/sd{a,b} |grep -E "Model|Firmware"
Model Number: KINGSTON SHSS37A480G
Firmware Revision: SAFM02.H
Model Number: KINGSTON SHSS37A240G
Firmware Revision: SAFM00.Y
$ lsscsi -s |grep -i KingstonLa version logiciel SAFM001B ne correspond à celle que l'on voulait installer SAFM02.H ??
[2:0:0:0] disk ATA KINGSTON SHSS37A 02.H /dev/sda 480GB
[3:0:0:0] disk KINGSTON SHSS37A240G 0 /dev/sdb 240GB
$ sudo hdparm -I /dev/sd{a,b} |grep -E "Model|Firmware"
Model Number: KINGSTON SHSS37A480G
Firmware Revision: SAFM02.H
Model Number: KINGSTON SHSS37A240G
Firmware Revision: SAFM001B