IP Library Granted Patent US 11,650,743
Granted Patent B2
US 11,650,743 · App. 16/780,197 · Granted May 16, 2023

Updating storage drive firmware

Inventors: Vivekanandh Narayanasamy Rajagopalan (Bangalore, IN); Swee Chay Hia (Singapore, SG); Srikanth Kondapi (Austin, TX)
Assignee: Dell Products L.P.
G06F3/0632G06F3/0604G06F3/0653G06F3/0673G06F8/65
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,650,743
App. No.
16/780,197
Granted
May 16, 2023
Kind
B2
Abstract

Storage drives can be configured to provide a component ID. An update tool on an end user device can be configured to retrieve this component ID in response to receiving a catalog that defines available firmware updates and to use the retrieved component ID to dynamically identify which firmware update applies to a particular storage drive. The firmware update can then be installed on the storage drive. The update tool may also perform a health assessment to dynamically determine whether the storage drive's health is sufficient to proceed with a firmware update.

Claims (36)

1. A method for updating firmware on a storage drive, the method comprising:

retrieving, by an update tool that executes on an end user device, a component ID from a vendor-specific section of identify data of a storage drive of the end user device, the vendor-specific section of the identify data being bytes 3126 through 3133 in a Non-Volatile Memory Express (NVMe) identify controller data structure or words 137 through 140 in a Serial Advanced Technology Attachment (SATA), identify device data;

receiving a catalog that defines a plurality of firmware updates;

using the component ID to identify a firmware update that applies to the storage drive by determining that the catalog associates the component ID with the firmware update; and

in response to identifying the firmware update using the component ID, installing the firmware update on the storage drive.

2. The method of claim 1 , further comprising:

retrieving a firmware version from the storage drive; and

using the firmware version to determine that the firmware update has not been installed on the storage drive.

3. The method of claim 2 , wherein retrieving the firmware version from the storage drive comprises reading identify data of the storage drive that is not included in the vendor-specific section.

4. The method of claim 1 , further comprising:

prior to installing the firmware update on the storage drive, performing a health assessment on the storage drive by retrieving one or more current health values from the storage drive and comparing the one or more current health values to corresponding health thresholds.

5. The method of claim 4 , wherein the component ID is used to identify the corresponding health thresholds from among other health thresholds.

6. The method of claim 4 , further comprising:

creating a recovery point for the storage drive based on results of the health assessment.

7. The method of claim 4 , further comprising:

after installing the firmware update, reporting telemetry data that links results of installing the firmware update to the one or more current health values.

8. The method of claim 4 , wherein the one or more current health values comprises a plurality of Self-Monitoring, Analysis and Reporting Technology (S.M.A.R.T.) attributes.

9. One or more computer storage media storing computer-executable instructions which when executed implement a method for updating firmware on a storage drive, the method comprising:

receiving, by an update tool that executes on an end user device, a catalog that identifies updates that target the end user device;

in response to receiving the catalog, retrieving a component ID from a vendor-specific section of identify data of a storage drive of the end user device, the vendor-specific section of the identify data being bytes 3126 through 3133 in a Non-Volatile Memory Express (NVMe) identify controller data structure or words 137 through 140 in a Serial Advanced Technology Attachment (SATA) identify device data;

using the component ID to locate a firmware update that is identified in the catalog by determining that the catalog associates the component ID with the firmware update; and

installing the firmware update on the storage drive.

10. The computer storage media of claim 9 , wherein the method further comprises:

prior to installing the firmware update on the storage drive, performing a health assessment on the storage drive by retrieving one or more current health values from the storage drive and comparing the one or more current health values to corresponding health thresholds defined in the catalog.

11. An end user device comprising:

a storage drive;

one or more processors; and

computer readable media storing computer executable instructions which when executed implement an update tool that is configured to update firmware on the storage drive by performing the following:

retrieve a component ID from a vendor-specific section of identify data of the storage drive, the vendor-specific section of the identify data being bytes 3126 through 3133 in a Non-Volatile Memory Express (NVMe) identify controller data structure or words 137 through 140 in a Serial Advanced Technology Attachment (SATA) identify device data;

receive a catalog that defines a plurality of firmware updates;

use the component ID to identify a firmware update that is applicable to the storage drive by determining that the catalog associates the component ID with the firmware update; and

retrieve a firmware version from a portion of the identify data of the storage drive that is separate from the vendor-specific section;

use the firmware version to determine that the firmware update has not been installed on the storage drive; and

install the firmware update on the storage drive.

12. The end user device of claim 11 , wherein the update tool is further configured to perform the following:

prior to installing the firmware update on the storage drive, performing a health assessment on the storage drive by retrieving one or more current health values from the storage drive and comparing the one or more current health values to corresponding health thresholds.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2020
From: RAJAGOPALAN, VIVEKANANDH NARAYANASAMY; HIA, SWEE CHAY; KONDAPI, SRIKANTH
To: DELL PRODUCTS L.P.
Reel/Frame 051703/0310 →