IP Library Granted Patent US 11,645,219
Granted Patent B2
US 11,645,219 · App. 17/165,605 · Granted May 9, 2023

Method for generating a hybrid BMC system and hybrid BMC system

Inventor: Chih-Yin Chang (Taipei, TW)
Assignee: AMERICAN MEGATRENDS INTERNATIONAL, LLC
G06F13/385G06F8/65G06F9/4401G06F11/3058G06F13/4282
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,645,219
App. No.
17/165,605
Granted
May 9, 2023
Kind
B2
Abstract

A method for generating a hybrid BMC system and a hybrid BMC system are provided. The method includes: selecting, among a plurality of BMCs, one BMC to be a host BMC; selecting, among the plurality of BMCs, another BMC to be a client BMC, wherein the client BMC uses a first communication protocol different from a second communication protocol used by the host BMC, the client BMC being configured to perform a first task, and the host BMC being configured to perform a second task different from the first task; and configuring an adapter module of the host BMC to interface with the client BMC through the first communication protocol and interface with the host BMC through a second communication protocol such that the host BMC performs the first task through the adapter module.

Claims (37)

1. A method for generating a hybrid BMC (baseboard management controller) system, which includes a plurality of BMCs with source code, a toolchain, emulated and native runtime environment, the method comprising:

selecting, among a plurality of BMCs, one BMC to be a host BMC;

selecting, among the plurality of BMCs, another BMC to be a client BMC includes a first source code, wherein the client BMC uses a first communication protocol different from a second communication protocol used by the host BMC, the client BMC being configured to perform a first task, and the host BMC includes a second source code being configured to perform a second task different from the first task;

configuring an adapter module of the host BMC to interface with the client BMC through the first communication protocol and interface with the host BMC through a second communication protocol such that the host BMC performs the first task through the adapter module to provide a hybrid BMC firmware image that includes functionalities from the host BMC and the client BMC;

compiling, using a native toolchain of the host BMC, the second source code;

generating, using the host BMC, a BMC image file including compiled first source code and compiled second source code; and

executing the BMC image file on the host BMC to perform the first task and the second task, wherein the compiled first source code is executed on the emulated runtime environment and the compiled second source code is executed on a native runtime environment of the host BMC.

2. The method according to claim 1 , wherein the client BMC includes a first source code configured to perform the first task, and the host BMC includes a second source code configured to perform the second task, the method further comprising:

obtaining, using the adapter module, the first source code from the client BMC;

compiling, through the adapter module, the first source code; and

installing, using the adapter module, compiled first source code on the host BMC.

3. The method according to claim 2 , wherein the step of compiling the first source code comprises:

obtaining, using the adapter module, a compilation information from the client BMC; and

compiling the first source code using an emulated toolchain according to the compilation information of the client BMC, wherein the emulated toolchain includes programming tools provided by the host BMC.

4. The method according to claim 2 , further comprising:

compiling the second source code using a native toolchain of the host BMC; and

generating, using the host BMC, a BMC image file including compiled first source code and compiled second source code.

5. The method according to claim 2 , further comprising:

obtaining, using the adapter module, a runtime information associated with the first task from the client BMC; and

configuring, using the adapter module, an emulated runtime environment on the host BMC according to the runtime information, wherein the emulated runtime environment is for the compiled first source code to be executed in.

6. The method according to claim 5 , further comprising:

compiling, using a native toolchain of the host BMC, the second source code;

generating, using the host BMC, a BMC image file including compiled first source code and compiled second source code; and

executing the BMC image file on the host BMC to perform the first task and the second task, wherein the compiled first source code is executed on the emulated runtime environment, and the compiled second source code is executed on a native runtime environment of the host BMC.

7. A hybrid baseboard management controller (BMC) system, comprising:

a plurality of BMCs with source code, wherein

among a plurality of BMCs, one BMC is selected to be a host BMC, and

among the plurality of BMCs, another BMC is selected to be a client BMC includes a first source code;

a toolchain, emulated and native runtime environment;

a host BMC, including a second source code configured to perform a second task, wherein the client BMC uses a first communication protocol different from a second communication protocol used by the host BMC, the client BMC being configured to perform a first task; and

an adapter module of the host BMC, including a first source code of a client BMC configured to perform a first task, wherein the adapter module interfaces with the client BMC through a first communication protocol and interfaces with the host BMC through a second communication protocol such that the host BMC performs the first task through the adapter to provide a hybrid BMC firmware image that includes functionalities from the host BMC and the client BMC;

wherein the second source code is compiled using a native toolchain of the host BMC;

wherein a BMC image file including compiled first source code and compiled second source code is generated using the host BMC; and

wherein the BMC image file is executed on the host BMC to perform the first task and the second task, wherein the compiled first source code is executed on the emulated runtime environment, and the compiled second source code is executed on a native runtime environment of the host BMC.

8. The hybrid BMC system according to claim 7 , wherein the adapter module compiles the first source code using an emulated toolchain according to a compilation information obtained from the client BMC, the emulated toolchain including programming tools of the host BMC.

9. The hybrid BMC system according to claim 8 , further comprising an emulated runtime environment for the compiled first source code to be executed in, the emulated runtime environment being configured by the adapter module according to a runtime information associated with the first task obtained from the client BMC.

10. The hybrid BMC system according to claim 8 , further comprising a BMC image file including compiled first source code and compiled second source code, wherein the compiled second source code is compiled by a native toolchain of the host BMC.

Assignments (4)
PATENT SECURITY AGREEMENT Recorded Oct 23, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: BAIN CAPITAL CREDIT, LP, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 069229/0834 →
RELEASE OF SECURITY INTEREST Recorded Oct 17, 2024
From: MIDCAP FINANCIAL TRUST
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 069205/0948 →
SECURITY INTEREST Recorded Apr 30, 2024
From: AMERICAN MEGATRENDS INTERNATIONAL, LLC
To: MIDCAP FINANCIAL TRUST, AS COLLATERAL AGENT
Reel/Frame 067274/0834 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 3, 2021
From: CHANG, CHIH-YIN
To: AMERICAN MEGATRENDS INTERNATIONAL, LLC
Reel/Frame 055134/0170 →
Continuity (1)
Related Publication 20220245078A1 · Aug 4, 2022