Management controller, management controller starting method and device, and storage medium

By setting up the hardware switching module and memory for communication between different buses in the management controller, the problem of the management controller being unable to start due to system firmware failure is solved, and the flexible switching and normal startup of the system firmware is achieved.

CN120429026AActive Publication Date: 2025-08-05INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202510935056.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-08
Publication Date
2025-08-05
Estimated Expiration
2045-07-08

AI Technical Summary

Technical Problem

The management controller fails to start normally when the system firmware itself or the memory that stores the system firmware failure, resulting in the system firmware being unable to load.

Method used

The hardware switching module and two different bus communication memory are set in the management controller, and the processor loads the firmware position through the hardware switching module, and the system firmware loading is switched between the memories using different bus communication protocols.

Benefits of technology

Effectively ensure the normal startup of the management controller, avoid startup failures caused by system firmware abnormalities or memory failures, and improve the reliability and flexibility of system firmware loading.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120429026A_ABST
    Figure CN120429026A_ABST
Patent Text Reader

Abstract

The invention provides a management controller, a management controller starting method and device and a storage medium, and relates to the technical field of computers, a hardware switching module, a first memory, a second memory and a register can be arranged in the management controller, and a processor in the management controller is connected with the hardware switching module and the register. The first bus is connected with the first memory, the second bus is connected with the second memory, and the first bus and the second bus correspond to different bus communication protocols. Wherein the hardware switching module can generate a selection signal, and the processor can adjust starting configuration in the register according to the selection signal during power-on starting, determine a target memory for loading the system firmware in the first memory and the second memory according to the adjusted starting configuration, and load the system firmware from the target memory. Therefore, the firmware loading position of the processor can be switched through the hardware switching module, so that normal starting of the management controller can be effectively guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a management controller, a management controller startup method, a device, and a storage medium. Background Art

[0002] The management controller is an important component in the server and plays an important role in managing the operation of the server. In the related art, when the system firmware itself or the memory storing the system firmware fails, the management controller will not be able to start, affecting its normal operation. Summary of the Invention

[0003] The present invention provides a management controller, a management controller startup method, an apparatus, and a storage medium, which can switch the position where the processor loads firmware through a hardware switching module, thereby preventing the management controller from being unable to load system firmware, thereby effectively ensuring the normal operation of the management controller.

[0004] To solve the above technical problems, the present invention provides a management controller, comprising: a processor, a hardware switching module, a first memory, a second memory, and a register, wherein the processor is connected to the hardware switching module and the register, connected to the first memory via a first bus, and connected to the second memory via a second bus, the first bus and the second bus corresponding to different bus communication protocols, and the first memory and the second memory both storing system firmware; Registers, used to save startup configuration; A hardware switching module, configured to receive an input signal and generate a selection signal according to the input signal; The processor is used to adjust the startup configuration in the register according to the selection signal when the power is turned on; determine the target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

[0005] The present invention also provides a management controller startup method, which is applied to the above-mentioned management controller, and the method includes: When powered on, the selection signal generated by the hardware switching module is obtained; Adjust the startup configuration in the register according to the selection signal; A target memory for loading the system firmware is determined in the first memory and the second memory according to the adjusted startup configuration, and the system firmware is loaded from the target memory.

[0006] The present invention also provides a management controller startup device, which is applied to the above-mentioned management controller, and the device includes: An acquisition module is used to obtain a selection signal generated by a hardware switching module when the power is turned on; A startup configuration adjustment module, used for adjusting the startup configuration in the register according to the selection signal; The loading module is used to determine a target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

[0007] The present invention also provides a non-volatile computer-readable storage medium, in which computer-executable instructions are stored. When the computer-executable instructions are loaded and executed by a processor, the above-mentioned management controller startup method is implemented.

[0008] The beneficial effects of the present invention are as follows: a hardware switching module, a first memory, a second memory, and a register can be set in the management controller of the present invention, and the processor in the management controller is connected to the hardware switching module and the register, and is connected to the first memory through a first bus and to the second memory through a second bus, and the first bus and the second bus correspond to different bus communication protocols. Among them, the hardware switching module can receive an input signal and generate a selection signal according to the input signal, and the processor can adjust the startup configuration in the register according to the selection signal when powered on, and determine the target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory. In this way, the present invention can switch the location where the processor loads the firmware through the hardware switching module, thereby effectively ensuring the normal startup of the management controller.

[0009] The present invention also provides a management controller startup method, device, and storage medium, which have the above-mentioned beneficial effects. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] In order to more clearly illustrate the embodiments of the present invention, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0011] Figure 1 A structural block diagram of a management controller provided by an embodiment of the present invention; Figure 2 A flowchart of a management controller startup method provided by an embodiment of the present invention; Figure 3 A flowchart of a management controller startup process provided by an embodiment of the present invention; Figure 4 This is a structural block diagram of a management controller startup device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0012] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative efforts shall fall within the scope of protection of the present invention.

[0013] It should be noted that, in the description of the present invention, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. The terms "first," "second," etc., in the present invention are used to distinguish similar objects, and are not used to describe a particular order or precedence.

[0014] In order to enable those skilled in the art to better understand the solutions of the present invention, the present invention is further described in detail below with reference to the accompanying drawings and specific implementation methods.

[0015] The management controller is a critical component in servers, playing a vital role in server operation and management. Common management controllers include the baseboard management controller (BMC), iLO (Integrated Lights-out), iDRAC (Integrated Dell Remote Access Controller), and other management controllers. In related technologies, if the system firmware itself experiences an anomaly or the memory storing the system firmware fails, the management controller will fail to start, making it difficult for users to locate the fault.

[0016] In view of this, in order to solve the technical problem of how to ensure that the management controller can load the system firmware normally and avoid the management controller from being unable to start normally due to system firmware abnormalities or memory failures, the present invention can provide a management controller, which can be equipped with a hardware switching module and two memories using different bus communications in the management controller, so that the memory location of the processor loading firmware can be switched through the hardware switching module, thereby effectively ensuring the normal operation of the management controller.

[0017] For easier understanding, please refer to Figure 1 , Figure 1 This is a structural block diagram of a management controller provided by an embodiment of the present invention. The management controller may include: Processor 1, hardware switching module 2, first memory 3, second memory 4, and register 7. Processor 1 can be connected to hardware switching module 2 and register 7, and connected to first memory 3 via a first bus 5 and to second memory 4 via a second bus 6. First bus 5 and second bus 6 correspond to different bus communication protocols. Both first memory 3 and second memory 4 store system firmware.

[0018] It should be noted that this embodiment does not limit the specific bus communication protocol used by the first bus 5 and the second bus 6, which can be set according to actual application requirements. In one embodiment, the first bus 5 can be an SPI bus (Serial Peripheral Interface) and communicate based on the SPI protocol; the second bus 6 can be a MIPIM-PHY bus (Mobile Industry Processor Interface). This embodiment also does not limit the specific types of the first memory 3 and the second memory 4, which can be set according to actual application requirements. In one embodiment, the first memory 3 can be SPI non-volatile flash memory (SPI Nor Flash), and the second memory 4 can be UFS memory (Universal Flash Storage).

[0019] In addition, this embodiment does not limit the specific form of the hardware switching module 2, which can be set according to actual application requirements. For example, the hardware switching module 2 can be a hardware switch or a hardware circuit that can generate a level signal.

[0020] In addition, this embodiment does not limit the specific form of the register 7 , as long as it can store the startup configuration of the management controller, for example, it can be an OTP (One Time Programmable) register.

[0021] The following are the specific uses of the hardware switching module 2, processor 1, and registers: Register 7 is used to save the startup configuration.

[0022] The hardware switching module 2 is used to receive an input signal and generate a selection signal according to the input signal.

[0023] Processor 1 is used to adjust the startup configuration in the register according to the selection signal when powered on; determine the target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

[0024] In this embodiment, the hardware switching module 2 is used to receive an input signal and generate a selection signal based on the input signal. The input signal is a signal input by the user to the hardware switching module 2, and the signal input can be achieved by operating the structure in the hardware switching module 2. For example, when the hardware switching module 2 is a hardware switch, the user can achieve signal input by adjusting the on and off of the switch. When the hardware switching module 2 is a circuit, the user can achieve signal input by inputting a level signal into the circuit. The selection signal can have two signal values, corresponding to the first memory 3 and the second memory 4 respectively. Register 7 is used to store the startup configuration, which is used to start the management controller and at least includes a startup position value, indicating which memory to load the system firmware from. Furthermore, when the processor 1 is powered on and started, it can first obtain the selection signal, and then adjust the startup configuration in the register according to the selection signal, and then determine the target memory for loading the firmware in the first memory 3 and the second memory 4 according to the adjusted startup configuration, and load the system firmware from the target memory. For example, when the selection signal is a first signal value, the processor 1 can load the system firmware in the first memory 3 according to the adjusted startup configuration; when the selection signal is a second signal value, the processor 1 can load the system firmware in the second memory 4 according to the adjusted startup configuration.

[0025] It is worth noting that since the first memory 3 can be connected to the processor 1 through the first bus 5, and the second memory 4 can be connected to the processor 1 through the second bus 6, the first bus 5 and the second bus 6 are different communication links and are based on different bus communication protocols. Therefore, the processor 1 can load the system firmware from different memories through different buses, and the firmware loading position can be flexibly adjusted through the hardware switching module 2, thereby improving the reliability of system firmware loading.

[0026] For example, in one embodiment, the first memory 3 is a main memory that stores the main system firmware; the second memory 4 is a backup memory that stores the backup system firmware. When the main system firmware is damaged, the first memory 3 fails, or the first bus 5 fails, the user can use the hardware switching module 2 to send a selection signal to switch to the second memory 4, and the processor 1 can load the backup system firmware from the second memory 4 via the second bus 6 based on the selection signal. In this way, when the main system firmware is damaged, the first memory 3 fails, or the first bus 5 fails, the processor 1 can also load the backup system firmware from other memories via other buses. This can avoid the defect that the management controller cannot load the system firmware due to damage to the main system firmware, failure of the memory storing the main system firmware, or failure of the bus, and can effectively ensure the normal startup of the management controller.

[0027] In another embodiment, the hardware switching module 2 is a hardware switch. In this case, the processor 1 can also be used to: When the hardware switch is in the first state, adjusting the startup position value in the startup configuration to a first value; When the hardware switch is in the second state, adjusting the start position value to a second value; When the startup position value is the first value, the system firmware is loaded from the first memory 3; When the startup position value is the second value, the system firmware is loaded from the second memory 4 .

[0028] In this embodiment, the hardware switching module 2 can be in the form of a hardware switch. In this case, the user can adjust the state of the hardware switch by turning the switch on / off, thereby guiding the processor to adjust the startup position value in the startup configuration, and then guiding the processor to load the system firmware from different memories.

[0029] It should be noted that this embodiment does not limit the specific first state and second state, and can be set according to actual application requirements. For example, the first state can be the switch-on state, and the second state can be the switch-off state; for another example, the first state can be the switch-off state, and the second state can be the switch-on state.

[0030] Based on the above embodiment, the management controller startup method provided by the present invention is introduced below. Figure 2 , Figure 2 This is a flow chart of a method for starting a management controller provided by an embodiment of the present invention. The method is applied to the above-mentioned management controller. The method may include: S201 : When powering on, obtaining a selection signal generated by a hardware switching module.

[0031] In this step, when the processor in the management controller is powered on and started, it first needs to obtain the selection signal generated by the hardware switching module to determine from which memory location to load the system firmware according to the selection signal.

[0032] It should be noted that this embodiment does not limit the specific form of the selection signal, which is related to the specific form of the hardware switching module. For example, when the hardware switching module is a hardware switch, the selection signal can be a switch state; when the hardware switching module is a circuit, the selection signal can also be a level signal.

[0033] S202: Adjust the startup configuration in the register according to the selection signal.

[0034] In this step, the processor needs to adjust the startup configuration in the register according to the above selection signal, so as to enter the subsequent system firmware loading process according to the adjusted startup configuration. Among them, the startup configuration at least includes a startup location value, which is used to indicate which memory to load the system firmware from. The following describes the process of the processor adjusting the startup configuration in the form of a specific hardware switching module: Based on this, the hardware switching module is a hardware switch; adjusting the startup configuration in the register according to the selection signal may include: Step 11: When the hardware switch is in the first state, adjusting the startup position value in the startup configuration to a first value; Step 12: When the hardware switch is in the second state, the start position value is adjusted to a second value.

[0035] In steps 11-12, when the startup position value is the first value, it indicates that the system firmware needs to be loaded from the first memory. When the startup position value is the second value, it indicates that the system firmware needs to be loaded from the second memory. This embodiment does not limit the specific numerical values of the first value and the second value. For example, the first value can be 0 and the second value can be 1. In addition, when it is determined that the hardware switch is in the first state, the register value is adjusted to the first value; when it is determined that the hardware switch is in the second state, the register value is adjusted to the second value. This embodiment also does not limit the specific first state and second state. For example, the first state can be the switch-on state, and the second state can be the switch-off state; for another example, the first state can be the switch-off state, and the second state can be the switch-on state.

[0036] S203 : Determine a target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

[0037] In this step, the management controller's processor can determine the target memory for loading the system firmware from the first memory and the second memory based on the adjusted startup configuration, and then load the system firmware from the target memory. This allows users to flexibly switch the location where the management controller loads the system firmware through the hardware switching module. If a single memory or system firmware fails, the management controller can load the system firmware from another memory location to ensure normal startup of the management controller.

[0038] The following describes the process by which the processor determines where to load the system firmware: Based on this, determining a target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and loading the system firmware from the target memory may include: Step 21: When the startup position value is the first value, loading the system firmware from the first memory; Step 22: When the startup position value is the second value, the system firmware is loaded from the second memory.

[0039] Based on the above embodiment, a hardware switching module, a first memory, a second memory, and a register can be set in the management controller of the present invention. The processor in the management controller is connected to the hardware switching module and the register, and is connected to the first memory through a first bus and to the second memory through a second bus. The first bus and the second bus correspond to different bus communication protocols. Among them, the hardware switching module can receive an input signal and generate a selection signal based on the input signal, and the processor can adjust the startup configuration in the register according to the selection signal when powered on, and determine the target memory for loading the firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory. In this way, the present invention can switch the location where the processor loads the firmware through the hardware switching module, thereby effectively ensuring the normal startup of the management controller.

[0040] Based on the above embodiment, as described above, in this embodiment, the first memory can be regarded as the main memory and store the main system firmware, while the second memory can be regarded as the backup memory and store the backup system firmware. Furthermore, the management controller is generally booted based on the first memory; when the first memory or the main system firmware fails, the user can switch the management controller to load the backup system firmware from the second memory through the hardware switching module. The following first introduces the method for the management controller to load the system firmware from the second memory. In one embodiment, the second memory can include a boot partition and a normal partition; loading the system firmware from the second memory can include: S401: Load a boot loader from a boot partition.

[0041] S402: Load the operating system kernel from the common partition using the boot loader.

[0042] In this embodiment, the second memory can be divided into a boot partition and a normal partition based on the boot requirements of the management controller. The boot partition is used to store a boot loader (such as U-boot), while the normal partition is used to store operating system content (such as the Linux kernel). Therefore, when loading system firmware, the management controller must first load the boot loader from the boot partition, and then use this boot loader to load the operating system kernel from the normal partition.

[0043] For more information about the management controller startup process, please refer to Figure 3 , Figure 3This is a flowchart of a management controller startup process provided by an embodiment of the present invention. This process may include: 1. Hardware reset; 2. Power and peripheral initialization; 3. Boot ROM execution; 4. Boot program loading; 5. Boot loader initialization; 6. Kernel loading; 7. Kernel initialization; 8. System service startup. The operation of reading the selection signal must be performed before the "Boot ROM execution" step.

[0044] Furthermore, after starting up through the second memory, the management controller may detect the first memory, the first bus, and the system firmware in the first memory.

[0045] Based on this, after loading the system firmware from the second memory, the following steps may also be included: Step 31: After the system firmware in the second memory is loaded, the first bus is tested.

[0046] Step 32: When it is determined that the first bus fails the test, the fault of the first bus is recorded in a log.

[0047] Step 33: When it is determined that the first bus passes the test, the system firmware in the first memory is tested.

[0048] Step 34: When it is determined that the system firmware is damaged, repair the system firmware in the first memory.

[0049] In this embodiment, the first bus may be first tested to determine whether the management controller is unable to load the system firmware from the first memory due to hardware reasons. This embodiment does not limit the detection method of the first bus, and reference may be made to related technologies. If it is determined that the first bus has failed, a log may be recorded to facilitate troubleshooting by the user. If it is determined that the first bus has not failed, the system firmware in the first memory may continue to be tested to determine whether the inability to start is due to firmware damage. This embodiment does not limit how to test the system firmware, such as testing the integrity of the system firmware. When it is determined that the system firmware in the first memory is damaged, the system firmware may be repaired. Specifically, since the management controller can start normally based on the system firmware in the second memory, this embodiment can use the system firmware in the second memory to repair the system firmware in the first memory, thereby improving the convenience of repairing the system firmware.

[0050] Based on this, repairing the system firmware in the first memory may include: Step 41: Repair the system firmware in the first memory using the system firmware in the second memory.

[0051] The following describes in detail how to set the boot partition, common partition, and system firmware in the second memory. Based on this, after loading the system firmware from the first memory, the following steps may also be included: Step 51: After the system firmware in the first memory is loaded, a boot partition and a common partition are set in the second memory.

[0052] Step 52: Write the boot loader to the boot partition and write the operating system kernel to the normal partition.

[0053] In steps 51 and 52, if the management controller can normally boot from the first memory, this embodiment may set up a boot partition and a normal partition in the second memory. For example, a 16GB LUN0 (Logical Unit Number) in the first memory may be allocated as a normal partition, and a 4MB LUN1 may be allocated as a boot partition. Furthermore, to improve boot partition reliability, this embodiment may set up two boot partitions in the first memory: LUN1 (primary boot partition) and LUN2 (backup boot partition). This allows the system kernel to boot from the other boot partition if one boot partition becomes corrupted. It should be noted that this embodiment does not limit how to switch between the primary and backup boot partitions. For example, the user can manually switch between LUN1 and LUN2. For another example, when loading a system image from the second memory, the management controller may prioritize loading the boot loader from the primary boot partition and may use a hardware timer to record the boot duration. If the boot duration exceeds a preset threshold, the management controller triggers a restart and switches to loading the boot loader from the backup boot partition.

[0054] Based on the above embodiment, the management controller startup method is fully described below based on a specific example. In one embodiment, the management controller is a BMC, the first memory is SPI nor Flash, and the second memory is UFS memory. This method may include the following process: 1. Partition the UFS storage in advance and select which LUN to create as a normal LUN or boot LUN.

[0055] Create a 16 GB LUN0 as the user partition, and create 4 MB LUN1 and LUN2 as the boot partition.

[0056] 2. Initialize and configure the UFS storage in the BMC kernel driver.

[0057] 3. Burn the firmware to the UFS storage when the BMC is operating normally.

[0058] - Download the boot loader image "image u-boot" to LUN 1 and LUN 2 separately.

[0059] - Download the kernel image to LUN 0.

[0060] This step requires extracting the UFS image and manually calculating the image sectors. Users can use wic.gz-image to update the user LUN in the next step.

[0061] 4. There is a hardware switch that determines whether to boot from SPI nor flash or UFS. A specific partition stores the boot image. Enables booting uboot from UFS.

[0062] 5. Restart BMC and the image will automatically boot from UFS.

[0063] 6. After the image is started, collect logs and troubleshoot the cause of the problem.

[0064] 7. If it is determined that there is no hardware abnormality and it is just the image problem, you can re-flash the image in SPI nor flash.

[0065] 8. If the problem is caused by an SPI bus abnormality, you can record the abnormality in the log to ensure normal operation of the current business. When conditions permit, repair the equipment to avoid affecting business operations.

[0066] 9. After the machine is in normal state, press the boot button again to boot from SPI nor flash and record the log.

[0067] This restores normal execution of the BMC.

[0068] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.

[0069] Please refer to Figure 4 , Figure 4 This is a structural block diagram of a management controller startup device provided by an embodiment of the present invention. The device is applied to the above-mentioned management controller and may include: The acquisition module 401 is used to acquire the selection signal generated by the hardware switching module when the power is turned on; A startup configuration adjustment module 402, configured to adjust the startup configuration in the register according to the selection signal; The loading module 403 is configured to determine a target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

[0070] Optionally, the hardware switching module is a hardware switch; The startup configuration adjustment module 402 can be used to: When the hardware switch is in a first state, the startup position value in the startup configuration is adjusted to a first value; when the hardware switch is in a second state, the startup position value is adjusted to a second value; Loading module 403 can be used to: When the startup position value is a first value, the system firmware is loaded from the first memory; when the startup position value is a second value, the system firmware is loaded from the second memory.

[0071] Optionally, the second memory includes a boot partition and a common partition; the firmware loading submodule includes: A boot loader loading unit for loading a boot loader from a boot partition; The system kernel loading unit is used to load the operating system kernel from the common partition using the boot loader.

[0072] Optionally, the device may further include: A partition setting module, configured to set a boot partition and a common partition in the second memory after the system firmware in the first memory is loaded; The burning module is used to write the boot loader to the boot partition and the operating system kernel to the normal partition.

[0073] Optionally, the device may further include: a bus detection module, configured to detect the first bus after the system firmware in the second memory is loaded; and to log the fault of the first bus when it is determined that the first bus fails the detection; The firmware detection module is configured to detect the system firmware in the first memory when it is determined that the first bus passes the detection; and repair the system firmware in the first memory when it is determined that the system firmware is damaged.

[0074] Optionally, the firmware detection module may include: The firmware repair submodule is used to repair the system firmware in the first memory using the system firmware in the second memory.

[0075] For the description of the features in the embodiment corresponding to the management controller startup device, reference can be made to the relevant description of the embodiment corresponding to the management controller startup method, which will not be repeated here.

[0076] An embodiment of the present invention further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps of any of the above-mentioned management controller startup method embodiments when running.

[0077] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.

[0078] An embodiment of the present invention further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any one of the above management controller startup method embodiments are implemented.

[0079] An embodiment of the present invention further provides another computer program product, including a non-volatile computer-readable storage medium, wherein the non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of any of the above-mentioned management controller startup method embodiments are implemented.

[0080] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.

[0081] The above is a detailed introduction to a management controller, a management controller startup method, a device, and a storage medium provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present invention, the present invention can also be improved and modified in several ways, and these improvements and modifications also fall within the scope of protection of the present invention.

Claims

1. A management controller, characterized in that: include: a processor, a hardware switching module, a first memory, a second memory, and a register, wherein the processor is connected to the hardware switching module and the register, connected to the first memory via a first bus, and connected to the second memory via a second bus, the first bus and the second bus corresponding to different bus communication protocols, and the first memory and the second memory both store system firmware; The register is used to store the startup configuration; The hardware switching module is used to receive an input signal and generate a selection signal according to the input signal; The processor is used to adjust the startup configuration in the register according to the selection signal when power is turned on; determine the target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

2. The management controller according to claim 1, wherein: The hardware switching module is a hardware switch; The processor is further configured to adjust the startup position value in the startup configuration to a first value when the hardware switch is in a first state; and to adjust the startup position value to a second value when the hardware switch is in a second state; When the startup position value is the first value, the system firmware is loaded from the first memory; when the startup position value is the second value, the system firmware is loaded from the second memory.

3. A management controller startup method, characterized in that: Applied to the management controller according to claim 1 or 2, the method comprises: When powered on, the selection signal generated by the hardware switching module is obtained; adjusting the startup configuration in the register according to the selection signal; A target memory for loading the system firmware is determined in the first memory and the second memory according to the adjusted startup configuration, and the system firmware is loaded from the target memory.

4. The management controller startup method according to claim 3, characterized in that: The hardware switching module is a hardware switch; Adjusting the startup configuration in the register according to the selection signal includes: When the hardware switch is in a first state, adjusting the startup position value in the startup configuration to a first value; When the hardware switch is in the second state, adjusting the start position value to a second value; Determining a target memory for loading system firmware in the first memory and the second memory according to the adjusted startup configuration, and loading the system firmware from the target memory, including: When the startup position value is the first value, loading the system firmware from the first memory; When the startup position value is the second value, the system firmware is loaded from the second memory.

5. The management controller startup method according to claim 4, characterized in that: The second memory includes a boot partition and a common partition; Loading the system firmware from the second memory includes: loading a boot loader from the boot partition; The boot loader is used to load the operating system kernel from the common partition.

6. The management controller startup method according to claim 5, characterized in that: After the system firmware is loaded from the first memory, the method further includes: After the system firmware in the first memory is loaded, setting the boot partition and the common partition in the second memory; The boot loader is written into the boot partition, and the operating system kernel is written into the common partition.

7. The management controller startup method according to claim 5, characterized in that: The boot partition includes a primary boot partition and a backup boot partition.

8. The management controller startup method according to claim 4, characterized in that: After the system firmware is loaded from the second memory, the method further includes: After the system firmware in the second memory is loaded, detecting the first bus; When it is determined that the first bus fails the detection, recording the fault of the first bus in a log; When it is determined that the first bus passes the test, testing the system firmware in the first memory; When it is determined that the system firmware is damaged, the system firmware in the first memory is repaired.

9. A management controller startup device, characterized in that: Applied to the management controller according to claim 1 or 2, the device comprises: An acquisition module is used to obtain a selection signal generated by a hardware switching module when the power is turned on; A startup configuration adjustment module, configured to adjust the startup configuration in the register according to the selection signal; The loading module is configured to determine a target memory for loading the system firmware in the first memory and the second memory according to the adjusted startup configuration, and load the system firmware from the target memory.

10. A non-volatile computer-readable storage medium, characterized in that: The non-volatile computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are loaded and executed by the processor, the management controller startup method according to any one of claims 3 to 8 is implemented.

Citation Information

Patent Citations

  • Firmware program starting method and system, storage medium and equipment

    CN115658157A

  • Firmware switching use method and device and medium

    CN116909633A

  • Double-BIOS system, system switching method and device, equipment and storage medium

    CN117472457A

  • Communication control device and control method

    CN117708026A

  • Baseboard management controller communication method and device, computer equipment and storage medium

    CN119045633A