CN114518890A - Method for automatically replying firmware setting of baseboard management controller - Google Patents

Method for automatically replying firmware setting of baseboard management controller Download PDF

Info

Publication number
CN114518890A
CN114518890A CN202011300894.8A CN202011300894A CN114518890A CN 114518890 A CN114518890 A CN 114518890A CN 202011300894 A CN202011300894 A CN 202011300894A CN 114518890 A CN114518890 A CN 114518890A
Authority
CN
China
Prior art keywords
configuration file
programmable logic
logic module
management controller
baseboard management
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011300894.8A
Other languages
Chinese (zh)
Inventor
张志鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kunda Computer Technology Kunshan Co Ltd
Mitac Computing Technology Corp
Original Assignee
Kunda Computer Technology Kunshan Co Ltd
Mitac Computing Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kunda Computer Technology Kunshan Co Ltd, Mitac Computing Technology Corp filed Critical Kunda Computer Technology Kunshan Co Ltd
Priority to CN202011300894.8A priority Critical patent/CN114518890A/en
Publication of CN114518890A publication Critical patent/CN114518890A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

A method for automatically replying the firmware setting of a baseboard management controller is executed by a server, the server comprises a baseboard management controller and a programmable logic module, when the baseboard management controller receives a firmware updating command, a current configuration file is written into the programmable logic module to be used as a backup configuration file related to the current configuration file, a target firmware is loaded to start updating, the baseboard management controller then carries out resetting and initialization in sequence, a file transmission function used for communicating with the programmable logic module is started at the moment of initialization, and the baseboard management controller reads the backup configuration file from the programmable logic module at an initial starting time point, namely the time point of the next stage after the file transmission function is started, so as to complete initialization setting.

Description

Method for automatically replying firmware setting of baseboard management controller
[ technical field ] A method for producing a semiconductor device
The present invention relates to a method and a server for processing electronic digital data, and more particularly, to a method and a server for replying firmware configuration of a baseboard management controller.
[ background of the invention ]
A Baseboard Management Controller (BMC) in an existing server includes a configuration file, where the configuration file is a parameter required by the BMC when executing a function, and after the BMC executes a firmware update, if a previous configuration file needs to be used, the BMC needs to first export a configuration file to a remote computer for storage before the firmware update, then execute the firmware update, then reset, download the configuration file from the remote computer, and import the configuration file, then execute the reset, and initialize according to the configuration file.
Therefore, has the following disadvantages:
firstly, the process is time-consuming, because the update process is performed at the BMC in the prior art, the time point when the configuration file of the previously backed-up BMC is read back from the remote computer is at the BMC "the later stage of the initialization process", and the configuration file of the BMC cannot be brought in at the later stage of the BMC initialization process, the BMC needs to be reset not only at the initial time point of the firmware update, but also once after the previously backed-up BMC configuration file is obtained, and the configuration file of the BMC is brought in and made valid in the second reset, so that the configuration of the BMC needs to be reset twice in total to execute the correct software and hardware configuration.
Secondly, because the user needs to manage the configuration file, if the user is not operated properly, the user will import the wrong configuration file to cause the whole server to be wrong, if the user needs to replace the manual operation part with the automatic program, the user needs to develop the configuration file by corresponding software, such as adjusting the storage position of the configuration file and filling the file name of the configuration file.
And thirdly, aiming at the servers with different model items, the contents of the configuration files used by the respective baseboard management controllers are different, and because the configuration files are stored in the same remote computer, the corresponding modification and maintenance are required to be carried out in a manual mode.
Therefore, there is a need for an improved method for managing a firmware profile of a BMC of a server.
[ summary of the invention ]
The present invention is directed to a method for automatically reverting firmware configuration of a bmc that can overcome at least one of the disadvantages of the prior art.
In order to solve the above technical problems, the method for automatically recovering the firmware setting of the baseboard management controller according to the present invention is executed by a server, wherein the server includes a programmable logic module and a baseboard management controller electrically connected to the programmable logic module, and the method for recovering the firmware setting of the baseboard management controller includes a step (a), a step (B), a step (C), a step (D), a step (E), and a step (F).
The step (A) is writing a current configuration file into the programmable logic module as a backup configuration file related to the current configuration file when the baseboard management controller receives a firmware update command.
The step (B) loads a target firmware for the baseboard management controller to start updating.
The step (C) is that when the baseboard management controller updates the original firmware to the target firmware, the baseboard management controller resets.
The step (D) is for the bmc to initiate a file transfer function for communicating with the programmable logic module.
The step (E) is that at an initial starting time point, the bmc communicates with the programmable logic module according to the file transfer function, and reads the backup configuration file from the programmable logic module.
The step (F) is that the bmc completes initialization setting according to the backup configuration file read back from the programmable logic module.
Compared with the prior art, the method for automatically recovering the firmware setting of the baseboard management controller backups the original current configuration file to the programmable logic module by the baseboard management controller, performs resetting and transmission function initialization after the firmware updating is completed, reads the original current configuration file, namely the backup configuration file stored in the programmable logic module, from the programmable logic module after the transmission function initialization is executed, and can merge into the backup configuration file before the baseboard management controller completes the initialization, so that the baseboard management controller can correctly execute the firmware configuration after the first initialization after the firmware updating is completed without executing the second resetting.
[ description of the drawings ]
Other features and effects of the present invention will become apparent from the following detailed description of the embodiments with reference to the accompanying drawings, in which:
FIG. 1 is a block diagram illustrating one embodiment of a server of the present invention;
FIG. 2 is a flowchart illustrating a firmware configuration method of an AMBMC executed in the embodiment; and
fig. 3 is a flowchart for assisting the detailed flow of an initial setting step (S) of the firmware setting method for the bmc.
[ detailed description ] embodiments
Referring to fig. 1, an embodiment of the server of the present invention includes a bmc 2, a Programmable Logic module 3 electrically connected to the bmc 2, a removable module 4 electrically connected to the Programmable Logic module 3 and having a function of storing data, and a flash memory 5 electrically connected to the bmc, in which the Programmable Logic module 3 is a Complex Programmable Logic Device (CPLD), the removable module 4 is a Field Replaceable Unit (FRU), such as a read-only memory, and the bmc 2 communicates with the bmc 3 through an I2C interface and using defined commands.
Referring to fig. 2, the firmware setting method for automatically recovering a baseboard management controller executed in this embodiment includes an initial setting step (S), a writing backup step (a), a loading firmware step (B), an executing update step (C), a file transmission step (D), a reading backup step (E), and a recovery backup step (F), it should be noted that, when the baseboard management controller 2 writes its configuration file to the programmable logic module 3 according to a written instruction, the programmable logic module 3 stores the configuration file in the internal memory 31, or reads the configuration file of the baseboard management controller 2 from the flash memory 31 by a flash read instruction, when the baseboard management controller 2 updates the firmware, the configuration file is written to the programmable logic module 3, and when the firmware update is completed, during initialization, the original configuration file is read from the programmable logic module 3, and the details of each step executed in the embodiment are described below.
The initial setting step (S) is to perform a factory default firmware initialization for the baseboard management controller 2, that is, the baseboard management controller 2 executes a default firmware initialization setting in a state of just being shipped from the factory, and with reference to fig. 3, the more detailed process of the initial setting step (S) includes an initialization sub-step (S1), a communication establishing sub-step (S2), a file updating sub-step (S3), a file restoring sub-step (S4), a complete initialization sub-step (S5), and a file rewriting sub-step (S6).
The initialization sub-step (S1) is that the bmc 2 initializes a file transfer function for communicating with the programmable logic module 3 according to an initialization command of the factory default firmware, and more specifically, the bmc 2 communicates with the programmable logic module 3 through a custom command by executing an Intelligent Platform Management Interface (IPMI) program.
The communication establishing sub-step (S2) is that the bmc 2 communicates with the programmable logic module 3 according to the File transfer function to determine whether a target configuration File for firmware reset after firmware update can be Read from the programmable logic module 3, specifically, the bmc 2 confirms whether the target configuration File exists in the flash memory 31 inside the programmable logic module 3 by a "Read File Size" command, which is a command inside the IPMI program.
If the result of the communication establishing substep (S2) is yes, the bmc 2 reads back the target configuration file from the plc 3 and updates the original default configuration file to the target configuration file by using the "Start of Multi-Read, Middle of Multi-Read, End of Multi-Read" command, which is also a command in the IPMI program (S3).
The sub-step of restoring the file (S4) is that if the result of the determination of the sub-step of establishing communication (S2) is negative, the bmc 2 uses the original default profile as the target profile for the firmware update-after-reset, and proceeds to the sub-step of completing initialization (S5).
The complete initialization sub-step (S5) is to complete initialization setting for the bmc 2 according to the target profile updated in the update file sub-step (S3).
The step of rewriting the file (S6) is that the bmc 2 modifies the original target configuration file as the current configuration file according to an instruction for modifying the target configuration file.
Referring to fig. 2, the writing backup step (a) is to Write a current configuration File into the programmable logic module 3 as a backup configuration File related to the current configuration File when the bmc 2 receives a firmware update command, and it should be further explained that when the bmc 2 receives the firmware update command, the bmc 2 executes a command set to Write the current configuration File into the programmable logic module 3, the programmable logic module 3 stores the current configuration File into the internal flash memory 31, and then the bmc 2 continues to perform the subsequent steps related to updating the firmware, and it should be further explained that the command set includes "Read File Size, Single Write, Start of Multi-Write, Middle of Multi-Write, End of Multi-Write, and so on, The bmc 2 transmits the current configuration file to the programmable logic module 3 for writing according to the commands of Single Write, Start of Multi-Write, Middle of Multi-Write, and End of Multi-Write of the command set.
It should be noted that in the writing backup step (a), when the bmc 2 writes the current configuration file into the programmable logic module 3, the bmc 2 further stores the current configuration file into the flash memory 5 as the backup configuration file, and in addition, when the programmable logic module 3 is written into the current configuration file as the backup configuration file, the programmable logic module 3 further stores the backup configuration file into the removable module 4.
The step (B) of loading firmware loads a target firmware for the bmc 2 to start updating.
The updating step (C) is executed when the bmc 2 updates its original firmware to the target firmware, and the bmc 2 resets (reset).
The file transfer step (D) is to initiate a file transfer function for the bmc 2 to communicate with the programmable logic module 3.
The reading backup step (E) is to read the backup configuration file from the programmable logic module 3 by the BMC 2 communicating with the programmable logic module 3 according to the file transfer function at an initial start time point, wherein the "initial start time point" is defined as an initial time point of BMC initialization, i.e., a time point of a next stage after the time point when the file transfer function is turned on.
The recovery backup step (F) is that the bmc 2 completes initialization according to the backup configuration file read back from the programmable logic module 3, and the bmc 2 can also read the backup configuration file stored in the removable module 4 from the flash memory 5 or via the programmable logic module 3.
In summary, the bmc 2 initializes the transmission function of the programmable logic module 3, and determines whether the programmable logic module 3 has a target configuration file related to the bmc 2, if yes, reads the target configuration file and initializes the target configuration file accordingly, if not, uses the original preset configuration file as an updated target configuration file, then executes initialization, uses the original target configuration file as a current configuration file, and backs up the current configuration file to the programmable logic module after receiving a firmware update instruction, then loads the target firmware for updating and resetting, and then reads a backup configuration file from the programmable logic module 3 by using the file transmission function, that is, the current configuration file, so that the following advantages are obtained:
first, since after the baseboard management controller 2 reads back the backup configuration file from the programmable logic module 3, the initialization setup is completed without resetting again, i.e. the step of firmware update is modified by the present invention, when the baseboard management controller 2 starts initialization, it first executes reading operation, compared with the step of reading back the configuration file of the baseboard management controller 2 in the prior art, the time point of obtaining the backup configuration file of the baseboard management controller 2 of the present invention is far ahead of the time point of reading back the configuration file of the baseboard management controller 2 in the prior art, and since the backup configuration file is brought in the initial start time point of initialization, it is naturally not necessary to reset again, therefore, the number of times of resetting the bmc 2 is reduced, and the overall process operation time is saved.
Secondly, by the cooperation of the baseboard management controller 2 and the programmable logic module 3, the manual management of the configuration file is avoided, thereby greatly reducing the error possibility of file access.
Third, as can be seen from the disclosure of the above embodiment, for different servers, the bmc 2 of each server stores the corresponding current configuration file in the programmable logic module 3 of the respective server for backup, and stores the current configuration file in the flash memory 5, and the programmable logic module 3 also stores the backup configuration file in the removable module 4 instead of backing up the backup configuration file in a common remote computer, so that it is not necessary to manually manage each different file, i.e. manually maintain the configuration files related to the firmware of different items, thereby achieving the creation purpose of the present invention.
The above description is only for the specific embodiments of the present invention, but the scope of the present invention is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present invention, and all the changes or substitutions should be covered within the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (11)

1. A method for automatically replying the firmware setting of a baseboard management controller is executed by a server, the server comprises a baseboard management controller and a programmable logic module electrically connected with the baseboard management controller, and the method for replying the firmware setting of the baseboard management controller comprises the following steps:
(A) when the baseboard management controller receives a firmware updating instruction, writing a current configuration file into the programmable logic module as a backup configuration file related to the current configuration file;
(B) the baseboard management controller loads a target firmware to start updating;
(C) when the baseboard management controller updates the original firmware to the target firmware, the baseboard management controller is reset;
(D) the baseboard management controller initializes and starts a file transmission function for communicating with the programmable logic module when the baseboard management controller initializes;
(E) at an initial starting time point, the baseboard management controller communicates with the programmable logic module according to the file transmission function, and reads the backup configuration file from the programmable logic module; and
(F) the baseboard management controller completes initialization setting according to the backup configuration file read back from the programmable logic module.
2. The method of claim 1, further comprising the following steps before the step (A):
(S) the baseboard management controller initializes a factory default firmware.
3. The method of claim 2, wherein the step (S) further comprises the sub-steps of,
(S1) the baseboard management controller initializes a file transfer function for communicating with the programmable logic module according to an initialization command of the factory default firmware,
(S2) the baseboard management controller communicates with the programmable logic module according to the file transfer function, and determines whether a target configuration file for resetting after firmware update can be read from the programmable logic module according to a read command,
(S3) if the determination result in the step (S2) is YES, the baseboard management controller reads back the target configuration file from the programmable logic module and updates its original default configuration file to the target configuration file, an
(S5) the bmc completing initialization setting according to the target profile updated in the step (S3).
4. The method of claim 3, wherein the step (S) further comprises the following sub-steps:
(S4) if the determination result of the step (S2) is no, the bmc uses the original default profile as the target profile for the firmware-updated reset, and proceeds to a step (S5).
5. The method of claim 3, wherein the step (S) further comprises the following sub-steps:
(S6) the bmc modifies the original target profile as the current profile according to an instruction for modifying the target profile.
6. The method of claim 1, wherein in the step (A), the BMC executes a command set to Write the current configuration File, the command set including at least one of Read File Size, Single Write, Start of Multi-Write, End of Multi-Write, Start of Multi-Read, Middle of Multi-Read, and End of Multi-Read.
7. The method of claim 6, wherein in the step (S2), the Read command is Read File Size, the BMC determines whether the target configuration File is stored in the programmable logic module according to the Read File Size of the command set, and in the step (S3), the BMC reads the target configuration File according to the Start of Multi-Read, Middle of Multi-Read, End of Multi-Read of the command set.
8. The method of claim 1, wherein when the bmc writes the current configuration file to the programmable logic module, the programmable logic module stores the current configuration file in a flash memory therein.
9. The method of claim 1, wherein the server further comprises a flash memory electrically connected to the bmc, wherein the bmc further stores the current configuration file into the flash memory when the bmc writes the current configuration file into the programmable logic module.
10. The method as claimed in claim 1, wherein the server further comprises a removable module electrically connected to the programmable logic module and having a data storage function, wherein when the bmc writes the current configuration file into the programmable logic module as the backup configuration file, the programmable logic module further stores the backup configuration file into the removable module.
11. The method of claim 6, wherein in the step (A), the BMC transfers the current configuration file to the programmable logic module for writing according to Single Write, Start of Multi-Write, Middle of Multi-Write, End of Multi-Write of the command set.
CN202011300894.8A 2020-11-19 2020-11-19 Method for automatically replying firmware setting of baseboard management controller Pending CN114518890A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011300894.8A CN114518890A (en) 2020-11-19 2020-11-19 Method for automatically replying firmware setting of baseboard management controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011300894.8A CN114518890A (en) 2020-11-19 2020-11-19 Method for automatically replying firmware setting of baseboard management controller

Publications (1)

Publication Number Publication Date
CN114518890A true CN114518890A (en) 2022-05-20

Family

ID=81595140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011300894.8A Pending CN114518890A (en) 2020-11-19 2020-11-19 Method for automatically replying firmware setting of baseboard management controller

Country Status (1)

Country Link
CN (1) CN114518890A (en)

Similar Documents

Publication Publication Date Title
US20070074201A1 (en) Method and system for updating software and computer readable recording medium storing the method
US20110320794A1 (en) Flash System And Method For Updating The Flash System
CN105808292A (en) Firmware upgrade method of embedded terminal device
CN110347414A (en) Firmware update, device, equipment and computer readable storage medium
US20180322013A1 (en) Method for recovering basic input/output system image file of a computer system and the computer system
WO2009046284A1 (en) Firmware image update and management
CN106598654B (en) Method for updating PowerPC mainboard boot chip on line
WO2011088701A1 (en) Method and device for online upgrading cross-platform version
CN108345464A (en) A kind of the startup method and Android vehicle device of Android system
CN105468390B (en) BOOT online upgrading device and method
CN112000351A (en) Updating method, updating device, updating equipment and storage medium of BMC (baseboard management controller) firmware
CN115840579A (en) FPGA remote updating method, system, chip mounter and storage medium
CN115718610A (en) Reliable method for updating application program of single chip microcomputer
CN115357262A (en) Method for upgrading driver firmware in batch
TWI782352B (en) Method for automatically recovering firmware settings of baseboard management controller
US20210311747A1 (en) Server with system setting data synchronization function
CN111338652B (en) Operating system mirror image manufacturing method, device, equipment and medium
CN114518890A (en) Method for automatically replying firmware setting of baseboard management controller
CN106484442B (en) Server system and method for updating startup mapping file
CN109684153B (en) Server with double firmware storage spaces and firmware updating method thereof
CN116909611A (en) Electronic device firmware updating method, cleaning device and storage medium
CN113377425B (en) BMC firmware generation method and device, BMC starting method and device and storage medium
JP2003157204A (en) Device and method for rewriting data and storage medium
US9529581B2 (en) Circuit and method for writing program codes of basic input/output system
JP3489306B2 (en) Electronic control unit

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination