IP Library Granted Patent US 10,990,680
Granted Patent B2
US 10,990,680 · App. 16/048,001 · Granted Apr 27, 2021

Method and apparatus for securing add-in cards from firmware and configuration changes

Inventors: Lee E. Ballard (Georgetown, TX); Mukund Pushottam Khatri (Austin, TX); Jonathan F. Lewis (Round Rock, TX)
Assignee: Dell Products L.P.
G06F21/572G06F8/65G06F9/4406G06F11/1441G06F21/575
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 10,990,680
App. No.
16/048,001
Granted
Apr 27, 2021
Kind
B2
Abstract

An information handling system includes a memory to store BIOS, a processor, a BMC, and an add-in device. The BMC updates the BIOS in a first system state and prevents BIOS updates in a second system state. The add-in device is configured to update firmware in a first device state and to prevent firmware updates in a second device state. The add-in device enters the first device state when the add-in device receives a power-on reset. The add-in device receives a lockdown command, sets the add-in device to the second device state in response to the lockdown command, and prevents the add-in device from reentering the first device state until the add-in device receives a second power-on reset subsequent to the first power-on reset.

Claims (58)

1. An information handling system, comprising:

a first memory device to store Basic Input/Output System (BIOS) code for the information handling system;

a processor to execute the BIOS code; and

an add-in device including a second memory device to store firmware code for the add-in device, the add-in device configured to update the firmware code in the second memory device when the add-in device is in a first device state and to prevent the firmware code from being updated in the second memory device when the add-in device is in a second device state, to receive a first power-on reset, to determine that the first power-on reset is not associated with a suspend state of the information handling system, to enter the first device state when the first power-on reset is not associated with the suspend state, to receive a first lockdown command, to set the add-in device to the second device state in response to the lockdown command, and to prevent the add-in device from reentering the first device state until the add-in device receives a second power-on reset that is not associated with the suspend state.

2. The information handling system of claim 1 , wherein the add-in device further includes a first interface to communicate with the processor, and a second interface to communicate with a baseboard management controller (BMC).

3. The information handling system of claim 2 , wherein the processor provides the first lockdown command to the add-in device via the first interface.

4. The information handling system of claim 3 , wherein the processor is executing the BIOS code when the processor provides the first lockdown command.

5. The information handling system of claim 4 , wherein the processor executes the BIOS code to launch an operating system on the information handling system after the processor provides the first lockdown command.

6. The information handling system of claim 2 , further comprising:

the BMC, wherein the BMC is configured to update the BIOS code in the first memory device in a first system state and to prevent the BIOS code from being updated in the first memory device in a second system state, and wherein the BMC provides the first lockdown command to the add-in device via the second interface.

7. The information handling system of claim 6 , wherein the BMC provides the first lockdown command to the add-in device before the processor executes the BIOS code to launch an operating system on the information handling system.

8. The information handling system of claim 7 , wherein the BMC operates to:

receive an update to the firmware code after the BMC provides the lockdown command to the add-in device;

reboots the information handling system in response to receiving the update, wherein the reboot includes a third power-on reset of the add-in device;

provides the update to the add-in device;

receives an indication from the add-in device that the firmware code was successfully updated in the second memory device;

reboots the information handling system in response to receiving the indication, wherein the reboot includes a fourth power-on reset of the add-in device; and

provides a second lockdown command to the add-in device via the second interface.

9. The information handling system of claim 1 , wherein the add-in device is further configured to receive a third power-on reset subsequent to the first power-on reset but prior to the second power in reset, to determine that the third power-on reset is associated with the BIOS suspend state, and to prevent the add-in device from reentering the first device state in response to determining that the third power-on reset is associated with the suspend state.

10. The information handling system of claim 1 , wherein the add-in device is further configured to receive a system bus reset subsequent to setting the add-in device into the second state, and to prevent the add-in device from reentering the first device state in response to receiving the system bus reset.

11. A method for securing an add-in device in an information handling system from changes to firmware code for the add-in device, the method comprising:

storing, on a first memory device of the information handling system, Basic Input/Output System (BIOS) code for the information handling system;

storing, on a second memory device of the add-in device, the firmware code;

updating, by a baseboard management controller (BMC) of the information handling system, the BIOS code in the first memory device in a first system state;

preventing, by the BMC, the BIOS code from being updated in the first memory device in a second system state;

updating, by the add-in device, the firmware code in the second memory device when the add-in device is in a first device state;

preventing, by the add-in device, the firmware code from being updated in the second memory device when the add-in device is in a second device state;

receiving, by the add-in device, a first power-on reset;

determining, by the add-in device, that the first power-on reset is not associated with a suspend state of the information handling system;

entering, by the add-in device, the first device state when the first power-on reset is not associated with a suspend state;

receiving, by the add-in device, a first lockdown command;

setting the add-in device to the second device state in response to the lockdown command; and

preventing the reentry of the add-in device to the first device state until the add-in device receives a second power-on reset that is not associated with the suspend state.

12. The method of claim 11 , further comprising:

communicating between the add-in device and the processor via a first interface; and

communicating between the add-in device and the BMC via a second interface.

13. The method of claim 12 , further comprising:

providing, from the processor, the first lockdown command to the add-in device via the first interface.

14. The method of claim 13 , wherein the processor is executing the BIOS code when the processor provides the first lockdown command.

15. The method of claim 14 , further comprising:

executing, by the processor, the BIOS code to launch an operating system on the information handling system after the providing the first lockdown command.

16. The method of claim 12 , further comprising;

providing, by the BMC, the first lockdown command to the add-in device via the second interface.

17. The method of claim 16 , wherein the BMC provides the first lockdown command to the add-in device before the processor executes the BIOS code to launch an operating system on the information handling system.

18. The method of claim 17 , further comprising:

receiving, by the BMC, an update to the firmware code after the BMC provides the lockdown command to the add-in device;

rebooting, by the BMC, the information handling system in response to receiving the update, wherein the reboot includes a third power-on reset of the add-in device;

providing, by the BMC, the update to the add-in device;

receiving, by the BMC, an indication from the add-in device that the firmware code was successfully updated in the second memory device;

rebooting, by the BMC, the information handling system in response to receiving the indication, wherein the reboot includes a fourth power-on reset of the add-in device; and

providing, by the BMC, a second lockdown command to the add-in device via the second interface.

19. The method of claim 11 , further comprising:

receiving, by the add-in device, a third power-on reset subsequent to the first power-on reset but prior to the second power in reset;

determining, by the add-in device, that the third power-on reset is associated with the BIOS suspend state; and

preventing the add-in device from reentering the first device state in response to determining that the third power-on reset is associated with the suspend state.

20. An add-in device for an information handling system, the add-in device comprising:

a memory to store firmware code for the add-in device; and

a controller configured to update the firmware code when the add-in device is in a first device state and to prevent the firmware code from being updated when the add-in device is in a second device state, to receive a first power-on reset, to determine that the first power-on reset is not associated with a suspend state of the information handling system, to enter the first device state when the first power-on reset is not associated with the suspend state, to receive a lockdown command, to set the add-in device to the second device state in response to the lockdown command, and to prevent the add-in device from reentering the first device state until the add-in device receives a second power-on reset that is not associated with the suspend state.

Assignments (8)
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 (047648/0422) Recorded May 20, 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 060160/0862 →
RELEASE OF SECURITY INTEREST AT REEL 047648 FRAME 0346 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058298/0510 →
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 May 23, 2019
From: BALLARD, LEE E.; KHATRI, MUKUND PUSHOTTAM; LEWIS, JONATHAN F.
To: DELL PRODUCTS, LP
Reel/Frame 049266/0285 →
SECURITY AGREEMENT Recorded Mar 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047648/0346 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 12, 2018
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 047648/0422 →
Continuity (1)
Related Publication 20200034541A1 · Jan 30, 2020