git: ce6c84abe6c2 - stable/14 - camcontrol: add support for Toshiba drive firmware update
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 03 Jan 2024 15:34:06 UTC
The branch stable/14 has been updated by ken: URL: https://cgit.FreeBSD.org/src/commit/?id=ce6c84abe6c2bc70c547dfa4ff6ed33917138f1d commit ce6c84abe6c2bc70c547dfa4ff6ed33917138f1d Author: Kenneth D. Merry <ken@FreeBSD.org> AuthorDate: 2023-12-29 19:23:51 +0000 Commit: Kenneth D. Merry <ken@FreeBSD.org> CommitDate: 2024-01-03 15:33:12 +0000 camcontrol: add support for Toshiba drive firmware update Thanks to Toshiba for providing the SCSI spec for their latest generation drives so I could confirm how they operate. The firmware download works in a pretty standard way, so this is a straightforward table addition. sbin/camcontrol/camcontrol.8: Document that Toshiba drives are supported for fwdownload, and that it was tested on TOSHIBA MG10SFA22TE 22TB drives. sbin/camcontrol/fwdownload.c: Add TOSHIBA to the known SCSI vendors list for fwdownload. Sponsored by: Spectra Logic (cherry picked from commit cd95f18c477ca30c3ba6f98577d321f56b1e8439) --- sbin/camcontrol/camcontrol.8 | 2 ++ sbin/camcontrol/fwdownload.c | 3 +++ 2 files changed, 5 insertions(+) diff --git a/sbin/camcontrol/camcontrol.8 b/sbin/camcontrol/camcontrol.8 index ec9af63be63d..065dfbe8a1b4 100644 --- a/sbin/camcontrol/camcontrol.8 +++ b/sbin/camcontrol/camcontrol.8 @@ -1700,6 +1700,8 @@ Tested with Constellation ES (ST32000444SS), ES.2 (ST33000651SS) and ES.3 (ST1000NM0023) drives. .It SmrtStor Tested with 400GB Optimus SSDs (TXA2D20400GA6001). +.It TOSHIBA +Tested with 22TB MG10SFA22TE SAS drives. .El .Pp .Em WARNING! WARNING! WARNING! diff --git a/sbin/camcontrol/fwdownload.c b/sbin/camcontrol/fwdownload.c index 25b98c804e3e..cfb8b70ccb76 100644 --- a/sbin/camcontrol/fwdownload.c +++ b/sbin/camcontrol/fwdownload.c @@ -84,6 +84,7 @@ typedef enum { VENDOR_SAMSUNG, VENDOR_SEAGATE, VENDOR_SMART, + VENDOR_TOSHIBA, VENDOR_ATA, VENDOR_UNKNOWN } fw_vendor_t; @@ -213,6 +214,8 @@ static struct fw_vendor vendors_list[] = { 0x8000, 0x07, 0x07, 0, 1, FW_TUR_READY, WB_TIMEOUT, FW_TIMEOUT_DEFAULT}, {VENDOR_SMART, "SmrtStor", T_DIRECT, 0x8000, 0x07, 0x07, 0, 1, FW_TUR_READY, WB_TIMEOUT, FW_TIMEOUT_DEFAULT}, + {VENDOR_TOSHIBA, "TOSHIBA", T_DIRECT, + 0x8000, 0x07, 0x07, 0, 1, FW_TUR_READY, WB_TIMEOUT, FW_TIMEOUT_DEFAULT}, {VENDOR_HGST, "WD", T_DIRECT, 0x1000, 0x07, 0x07, 1, 0, FW_TUR_READY, WB_TIMEOUT, FW_TIMEOUT_DEFAULT}, {VENDOR_HGST, "WDC", T_DIRECT,