IP Library Granted Patent US 12,346,282
Granted Patent B2
US 12,346,282 · App. 18/129,535 · Granted Jul 1, 2025

Dynamic baseboard management controller memory use

Inventors: Gary D Cudak (Raleigh, NC); Mehul Shah (Austin, TX); Glenn D Johnson (Apex, NC); Ajay Dholakia (Cary, NC); Ming Lei (Shanghai, CN)
Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
G06F13/4217G06F13/1663G06F13/1668
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 12,346,282
App. No.
18/129,535
Granted
Jul 1, 2025
Kind
B2
Abstract

Apparatuses, methods, systems, and program products are disclosed for dynamic baseboard management controller memory use. A method includes determining, by use of a processor, presence of main memory of a computing device, in response to determining that the main memory is not present in the computing device, preparing at least a portion of a memory device of a baseboard management controller for use by the processor, and making the at least a portion of the memory device of the BMC available to the processor.

Claims (37)

1. A method comprising:

determining, by use of a processor, physical installation of main memory of a computing device;

in response to determining that the main memory is not physically installed in the computing device, preparing at least a portion of a memory device of a baseboard management controller (“BMC”) for use by the processor;

making the at least a portion of the memory device of the BMC available to the processor; and

reverting the memory device of the BMC to an original state in response to detecting physical installation of the main memory of the computing device such that the at least a portion of the memory device of the BMC is not available for use by the processor.

2. The method of claim 1 , further comprising determining physical installation of the main memory of the computing device during a boot process of the computing device.

3. The method of claim 1 , further comprising preparing the at least a portion of the memory device of the BMC for use by the processor by creating a new partition on the memory device of the BMC and making the new partition of the memory device of the BMC available to the processor.

4. The method of claim 1 , further comprising preparing the at least a portion of the memory device of the BMC for use by the processor by configuring the at least a portion of the memory device of the BMC as shared memory and making the shared memory of the memory device of the BMC available to the processor.

5. The method of claim 1 , further comprising making the at least a portion of the memory device of the BMC available for use by the processor as dynamic random access memory (“DRAM”), the DRAM accessible to the processor over a compute express link (“CXL”).

6. The method of claim 1 , further comprising sending a notification to the BMC to prepare the at least a portion of a memory device of the BMC for use by the processor in response to determining that the main memory is not physically installed in the computing device.

7. The method of claim 1 , further comprising making the at least a portion of the memory device of the BMC available to the processor over at least one peripheral component interconnect express (“PCIe”) bus of the computing device between the BMC and the processor.

8. The method of claim 1 , further comprising erasing data stored on the at least a portion of the memory device of the BMC in response to reverting to the original state.

9. The method of claim 1 , further comprising reverting the memory device of the BMC to an original state during a boot process of the computing device prior to determining physical installation of main memory of the computing device such that the at least a portion of a memory device of the BMC is not available for use by the processor.

10. The method of claim 1 , wherein the main memory of the computing device comprises at least one dual in-line memory module (“DIMM”).

11. An apparatus comprising:

a processor; and

non-transitory computer readable storage media storing code, the code being executable by the processor to perform operations comprising:

determining physical installation of main memory of a computing device;

in response to determining that the main memory is not physically installed in the computing device, preparing at least a portion of a memory device of a baseboard management controller (“BMC”) for use by the processor;

making the at least a portion of the memory device of the BMC available to the processor; and

reverting the memory device of the BMC to an original state in response to detecting physical installation of the main memory of the computing device such that the at least a portion of the memory device of the BMC is not available for use by the processor.

12. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising determining physical installation of the main memory of the computing device during a boot process of the computing device.

13. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising preparing the at least a portion of the memory device of the BMC for use by the processor by creating a new partition on the memory device of the BMC and making the new partition of the memory device of the BMC available to the processor.

14. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising preparing the at least a portion of the memory device of the BMC for use by the processor by configuring the at least a portion of the memory device of the BMC as shared memory and making the shared memory of the memory device of the BMC available to the processor.

15. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising making the at least a portion of the memory device of the BMC available for use by the processor as dynamic random access memory (“DRAM”), the DRAM accessible to the processor over a compute express link (“CXL”).

16. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising sending a notification to the BMC to prepare the at least a portion of a memory device of the BMC for use by the processor in response to determining that the main memory is not physical installed in the computing device.

17. The apparatus of claim 11 , wherein the code is executable by the processor to perform operations comprising making the at least a portion of the memory device of the BMC available to the processor over at least one peripheral component interconnect express (“PCIe”) bus of the computing device between the BMC and the processor.

18. A method comprising:

determining, by use of a processor, physical installation of main memory of a computing device;

in response to determining that the main memory is not physically installed in the computing device, preparing at least a portion of a memory device of a baseboard management controller (“BMC”) for use by the processor;

making the at least a portion of the memory device of the BMC available to the processor; and

reverting the memory device of the BMC to an original state during a boot process of the computing device subsequent to making the at least the portion of the memory device of the BMC available to the processor and prior to determining physical installation of main memory of the computing device such that the at least the portion of a memory device of the BMC is not available for use by the processor.

19. The method of claim 18 , further comprising:

preparing the at least a portion of the memory device of the BMC for use by the processor by creating a new partition on the memory device of the BMC and making the new partition of the memory device of the BMC available to the processor;

preparing the at least a portion of the memory device of the BMC for use by the processor by configuring the at least a portion of the memory device of the BMC as shared memory and making the shared memory of the memory device of the BMC available to the processor; and/or

making the at least a portion of the memory device of the BMC available for use by the processor as dynamic random access memory (“DRAM”), the DRAM accessible to the processor over a compute express link (“CXL”).

20. The method of claim 18 , further comprising reverting the memory device of the BMC to an original state in response to detecting physical installation of the main memory of the computing device such that the at least a portion of the memory device of the BMC is not available for use by the processor.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2023
From: LENOVO GLOBAL TECHNOLOGY (UNITED STATES) INC.
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
Reel/Frame 065892/0138 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2023
From: LENOVO GLOBAL TECHNOLOGY (UNITED STATES) INC.
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
Reel/Frame 065257/0079 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2023
From: CUDAK, GARY D; SHAH, MEHUL; JOHNSON, GLENN D; DHOLAKIA, AJAY; LEI, MING
To: LENOVO GLOBAL TECHNOLOGY (UNITED STATES) INC.
Reel/Frame 063217/0076 →