IP Library Granted Patent US 12688046
Granted Patent B2
US 12688046 · App. 18/937,206 · Granted Jul 21, 2026

BIOS/BMC initialization communication system

Inventors: Sangamesh Koradhanyamath (Bengaluru, IN); Nagaraj Annenavar (Bengaluru, IN); Swapan Kumar Bhakat (Jaduguda, IN); Adithya Mundigemane Shankaranarayana (Chickmagalur, IN)
Assignee: Dell Products L.P.
G06F9/4401
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 12688046
App. No.
18/937,206
Filed
Nov 5, 2024
Granted
Jul 21, 2026
Kind
B2
Art Unit
2176
USPC
713/2
Abstract

A BIOS/BMC initialization communication system includes a storage device having a controller memory buffer device, a BMC device coupled to the storage device, and a BIOS coupled to the storage device. During initialization operations, the BIOS configures the controller memory buffer device for BIOS/BMC communications, and transmits controller memory buffer device utilization information for the controller memory buffer device to the BMC device. The BIOS may then communicate with the BMC device during initialization operations by providing a BMC command in the controller memory buffer device, determining that the BMC device has provided a BMC response in the controller memory buffer device, and retrieving the BMC response. Similarly, the BMC device may communicate with the BIOS during initialization operations by providing a BIOS command in the controller memory buffer device, determining that the BIOS has provided a BIOS response in the controller memory buffer device, and retrieving the BIOS response.

Claims (58)

1 . A Basic Input/Output System (BIOS)/Baseboard Management Controller (BMC) initialization communication system, comprising:

a storage device that includes a controller memory buffer device;

a Baseboard Management Controller (BMC) device that is coupled to the storage device;

a Basic Input/Output System (BIOS) that is coupled to the storage device and that is configured, during initialization operations, to:

configure the controller memory buffer device for BIOS/BMC communications;

transmit controller memory buffer device utilization information for the controller memory buffer device to the BMC device;

provide, in the controller memory buffer device, a BMC command;

determine that the BMC device has provided a BMC response to the BMC command in the controller memory buffer device; and

retrieve, in response to determining that the BMC device has provided the BMC response to the BMC command in the controller memory buffer device, the BMC response.

2 . The system of claim 1 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

setting a register in the storage device to indicate an intent to use the controller memory buffer device.

3 . The system of claim 1 , wherein the BIOS is configured, during the initialization operations, to:

retrieve the controller memory buffer device utilization information from the controller memory buffer device.

4 . The system of claim 1 , wherein the controller memory buffer device utilization information for the controller memory buffer device is transmitted to the BMC device via an Intelligent Platform Management Interface (IPMI) communication subsystem.

5 . The system of claim 1 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

configuring the controller memory buffer device with a BIOS/BMC submission queue that is configured to store the BMC request and a BIOS/BMC completion queue that is configured to store the BMC response.

6 . The system of claim 1 , wherein the providing the BMC command in the controller memory buffer device includes:

providing a BMC command indicator in a header of the controller memory buffer device.

7 . The system of claim 1 , wherein the BMC device is configured to:

provide, in the controller memory buffer device, a BIOS command;

determine that the BIOS has provided a BIOS response to the BIOS command in the controller memory buffer device; and

retrieve, in response to determining that the BIOS has provided the BIOS response to the BIOS command in the controller memory buffer device, the BIOS response.

8 . An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a Basic Input/Output System (BIOS) engine that is configured, during initialization operations, to:

configure, for BIOS/BMC communications, a controller memory buffer device in a storage device that is coupled to the processing system;

transmit controller memory buffer device utilization information for the controller memory buffer device to a BMC device that is coupled to the processing system;

provide, in the controller memory buffer device, a BMC command;

determine that the BMC device has provided a BMC response to the BMC command in the controller memory buffer device; and

retrieve, in response to determining that the BMC device has provided the BMC response to the BMC command in the controller memory buffer device, the BMC response.

9 . The IHS of claim 8 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

setting a register in the storage device to indicate an intent to use the controller memory buffer device.

10 . The IHS of claim 8 , wherein the BIOS engine is configured, during the initialization operations, to:

retrieve the controller memory buffer device utilization information from the controller memory buffer device.

11 . The IHS of claim 8 , wherein the controller memory buffer device utilization information for the controller memory buffer device is transmitted to the BMC device via an Intelligent Platform Management Interface (IPMI) subsystem.

12 . The IHS of claim 8 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

configuring the controller memory buffer device with a BIOS/BMC submission queue that is configured to store the BMC request and a BIOS/BMC completion queue that is configured to store the BMC response.

13 . The IHS of claim 8 , wherein the providing the BMC command in the controller memory buffer device includes:

providing a BMC command indicator in a header of the controller memory buffer device.

14 . A method for Basic Input/Output System (BIOS)/Baseboard Management Controller (BMC) communication during initialization of a computing device, comprising:

configuring, by a Basic Input/Output System (BIOS) during initialization operations, a controller memory buffer device in a storage device for BIOS/BMC communications;

transmitting, by the BIOS during the initialization operations, controller memory buffer device utilization information for the controller memory buffer device to a BMC device;

providing, by the BIOS in the controller memory buffer device during the initialization operations, a BMC command;

determining, by the BIOS during the initialization operations, that the BMC device has provided a BMC response to the BMC command in the controller memory buffer device; and

retrieving, by the BIOS during the initialization operations in response to determining that the BMC device has provided the BMC response to the BMC command in the controller memory buffer device, the BMC response.

15 . The method of claim 14 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

setting a register in the storage device to indicate an intent to use the controller memory buffer device.

16 . The method of claim 14 , further comprising:

retrieving, by the BIOS during the initialization operations, the controller memory buffer device utilization information from the controller memory buffer device.

17 . The method of claim 14 , wherein the controller memory buffer device utilization information for the controller memory buffer device is transmitted to the BMC device via an Intelligent Platform Management Interface (IPMI) subsystem.

18 . The method of claim 14 , wherein the configuring the controller memory buffer device for BIOS/BMC communications includes:

configuring the controller memory buffer device with a BIOS/BMC submission queue that is configured to store the BMC request and a BIOS/BMC completion queue that is configured to store the BMC response.

19 . The method of claim 14 , wherein the providing the BMC command in the controller memory buffer device includes:

providing a BMC command indicator in a header of the controller memory buffer device.

20 . The method of claim 14 , further comprising:

providing, by the BMC device in the controller memory buffer device during the initialization operations, a BIOS command;

determining, by the BMC device during the initialization operations, that the BIOS has provided a BIOS response to the BIOS command in the controller memory buffer device; and

retrieving, by the BMC device during the initialization operations in response to determining that the BIOS has provided the BIOS response to the BIOS command in the controller memory buffer device, the BIOS response.