CN113760335B - Server device and method for avoiding firmware from being unable to be updated again - Google Patents

Server device and method for avoiding firmware from being unable to be updated again Download PDF

Info

Publication number
CN113760335B
CN113760335B CN202010490320.5A CN202010490320A CN113760335B CN 113760335 B CN113760335 B CN 113760335B CN 202010490320 A CN202010490320 A CN 202010490320A CN 113760335 B CN113760335 B CN 113760335B
Authority
CN
China
Prior art keywords
firmware
programmable logic
firmware program
interface
logic device
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.)
Active
Application number
CN202010490320.5A
Other languages
Chinese (zh)
Other versions
CN113760335A (en
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.)
Mitac Computer Shunde Ltd
Mitac Computing Technology Corp
Original Assignee
Mitac Computer Shunde 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 Mitac Computer Shunde Ltd, Mitac Computing Technology Corp filed Critical Mitac Computer Shunde Ltd
Priority to CN202010490320.5A priority Critical patent/CN113760335B/en
Publication of CN113760335A publication Critical patent/CN113760335A/en
Application granted granted Critical
Publication of CN113760335B publication Critical patent/CN113760335B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The present invention provides a server device and a method for avoiding the firmware from being unable to be updated again. The method comprises the steps that a firmware loading unit of the programmable logic device loads a first firmware program, so that a server device is operated in a working mode, an I2C interface writing function of the programmable logic device is locked in an enabling mode, a control unit executes a cleaning action of the firmware loading unit when receiving a firmware updating instruction in the working mode, the programmable logic device is switched to a setting mode, and the I2C interface writing function is still enabled in the setting mode of the programmable logic device; the control unit verifies the second firmware program to be updated when receiving the firmware update instruction, and when the second firmware program fails to pass the verification, the server device outputs an alarm message in the set mode to indicate that the second firmware program does not load the firmware loading unit.

Description

Server device and method for avoiding firmware from being unable to be updated again
Technical Field
The present invention relates to a server apparatus, and more particularly, to a server apparatus having programmable logic devices.
Background
Generally, a programmable logic device is disposed in the server device to control a power-on process, control signals, or transfer parameters during a power-on process of the server device, so that firmware programs in the programmable logic device often have update requirements, and generally, the programmable logic device has a joint test action group (Joint Test Action Group; JTAG) interface and a serial peripheral interface (Serial Peripheral Interface; SPI) interface, and the programmable logic device can update its firmware programs through the JTAG interface, the I2C interface or the SPI interface.
When the programmable logic device is connected to other units of the server device through the JTAG interface and the SPI interface, at least six pins are required to meet the standards of the JTAG interface and the SPI interface, and the lengths of bus wires of the JTAG interface and the SPI interface are limited. Considering layout (layout) space and connector cost in the server device, it is more difficult for JTAG interface and SPI interface to meet the current price and light and thin requirements of the server device, so the main bus interface of the programmable logic device for updating the firmware program is currently I2C interface.
However, the I2C interface is turned off by default, and the server device needs to additionally enable the I2C interface to enable the programmable logic device to update its firmware. When the firmware has errors or errors occur in the process of updating the firmware, if the power supply of the server device is restarted at this time to cause the I2C interface unit to be turned off after the server device is restarted or powered on, a maintainer of the server device cannot update the firmware of the programmable logic device again through the I2C interface, so that the server device cannot be successfully started, if the firmware program of the programmable logic device is to be updated again through the JTAG interface, a casing or a case cover of the server device must be opened, and the firmware program of the programmable logic device can be updated through the pin position directly connected to the JTAG interface by the external device, so that the maintainer of the server device is inconvenient.
Disclosure of Invention
The present invention provides a server device and a method for avoiding the firmware from being unable to be updated again, which can avoid the firmware from being unable to be updated again.
In order to solve the above technical problems, the server device of the present invention includes a programmable logic device and a baseboard management controller. The programmable logic device comprises a firmware loading unit, an I2C interface unit, a nonvolatile memory unit and a control unit. The firmware loading unit is used for loading a first firmware program, so that the programmable logic device is switched from a setting mode to a working mode, an I2C interface writing function of the programmable logic device is locked to be started, and the first firmware program comprises program codes for locking the I2C interface writing function. The I2C interface unit is coupled to the baseboard management controller, and the I2C interface unit is configured to receive a second firmware program from the baseboard management controller according to the I2C interface write function being enabled in the operation mode. The nonvolatile memory unit is coupled to the I2C interface unit, and is configured to receive the second firmware program through the I2C interface unit and store the second firmware program. The control unit is coupled to the baseboard management controller, the firmware loading unit and the nonvolatile memory unit, and is configured to execute a cleaning action of the firmware loading unit when receiving a firmware update command from the baseboard management controller in the working mode, so that the programmable logic device is switched from the working mode to the setting mode, the I2C interface writing function is still locked in the setting mode and is not switched to be turned off, and the control unit verifies the second firmware program when receiving the firmware update command, and when the second firmware program fails to pass the verification, the server device outputs an alert message in the setting mode to indicate that the second firmware program does not load the firmware loading unit.
In order to solve the above-mentioned technical problems, a method for avoiding firmware unable to update again includes that a firmware loading unit of a programmable logic device loads a first firmware program, so that the programmable logic device is switched from a setting mode to a working mode and an I2C interface writing function is locked to be started, a baseboard management controller of a server device sends a second firmware program when the programmable logic device is in the working mode, a non-volatile memory unit of the programmable logic device receives and stores the second firmware program through an I2C interface unit of the programmable logic device according to an started I2C interface writing function in the working mode, a control unit of the programmable logic device judges whether a firmware updating instruction from the baseboard management controller is received in the working mode, a clearing action of the firmware loading unit is executed when the firmware updating instruction is received, so that the programmable logic device is switched from the working mode to the setting mode, the I2C interface writing function is still locked to be started and not switched to be closed when the firmware updating instruction is received, and the control unit verifies that the second firmware is not loaded in the working mode when the firmware updating instruction is received, and the second firmware is not verified by the controller device.
Compared with the prior art, the programmable logic device of the invention can not cause the I2C interface writing function to be closed because of the operation of the firmware program error in the set mode, so that the problem that the firmware program after debugging can not be updated in the nonvolatile memory unit through the I2C interface unit is solved, and the control unit can send out error information so as to avoid that the I2C interface unit is closed after the server device is restarted or powered on because the user restarts the power supply of the server device. The designer or debugger of the programmable logic device does not need to open the boot lid to update the firmware program by the JTAG interface when the firmware program is wrong, and the designer or debugger can still repair the firmware program by the I2C interface unit, thereby greatly improving the flexibility and convenience of debugging the firmware program of the programmable logic device. In addition, the I2C interface unit only needs two pins, and the bus wiring length of the I2C interface unit is longer, so that the I2C interface unit can meet the current requirements on stability and thinness of the server compared with JTAG interface and SPI interface.
[ description of the drawings ]
FIG. 1 is a block diagram of one embodiment of a server device according to the present invention.
FIG. 2 is a flowchart of one embodiment of a method for avoiding firmware failing to be updated again according to the present invention.
[ detailed description ] of the invention
Referring to fig. 1, fig. 1 is a block diagram of an embodiment of a server device according to the present invention. The server apparatus 1 includes a programmable logic device (Programmable Logic Device; PLD) 11 and a baseboard management controller 13. The baseboard management controller 13 is coupled to the programmable logic device 11. The programmable logic device 11 includes an inter-integrated circuit (inter-integrated circuit; I2C) interface unit 111, a nonvolatile memory unit 113, a firmware loading unit 114, and a control unit 115. The nonvolatile memory unit 113 is coupled between the I2C interface unit 111 and the firmware loading unit 114, the control unit 115 is coupled to the nonvolatile memory unit 113 and the I2C interface unit 111, and the I2C interface unit 111 is coupled between the baseboard management controller 13 and the nonvolatile memory unit 113.
In one embodiment, the programmable logic device 11 may be a complex programmable logic device (Complex Programmable Logic Device; CPLD), the firmware loading unit 114 may be a memory device implementing a hardware specific function (hardware feature) of the programmable logic device 11, the hardware specific function including an I2C interface write function of the corresponding I2C interface unit 111, and the firmware loading unit 114 may be a random access memory (Random Access Memory; RAM). The nonvolatile memory unit 113 may be a flash memory (flash memory).
The nonvolatile memory unit 113 stores a firmware program to be executed by the programmable logic device 11, and the firmware loading unit 114 stores a firmware program to be executed by the programmable logic device 11. When the programmable logic device 11 is in the power-on, reset or firmware update process, the programmable logic device 11 is operated in the set mode, the firmware loading unit 114 does not load any firmware program, and the control unit 115 controls the firmware program to load the firmware loading unit 114 from the nonvolatile memory unit 113, so that the programmable logic device 11 is switched from the set mode to the working mode, and the programmable logic device 11 operates according to the firmware program code loaded by the firmware loading unit 114 in the working mode. Thus, when the nonvolatile memory unit 113 stores the firmware to be updated, the control unit 115 may control the firmware to be updated to load the firmware loading unit 114, so that the programmable logic device 11 can complete the update process of the firmware according to the updated firmware.
The firmware program stored in the nonvolatile memory unit 113 may be from the I2C interface unit 111, the programmable logic device 11 has an I2C interface write function corresponding to the I2C interface unit 111, and when the programmable logic device 11 is in the operation mode, the firmware program loaded into the firmware loading unit 114 includes firmware program code for enabling the I2C interface write function, so that the nonvolatile memory unit 113 receives the firmware program to be updated from the I2C interface unit 111 according to the enabled I2C interface write function in the operation mode; furthermore, when the programmable logic device 11 is in the operation mode, the firmware program loaded on the firmware loading unit 114 includes a locking function for locking the I2C interface writing function to be enabled, when the firmware program to be updated is written into the nonvolatile memory unit 113, the programmable logic device 11 enters the firmware updating program, the programmable logic device 11 is switched from the operation mode to the setting mode, the locking function forces the I2C interface writing function not to be closed but to be continuously locked to be enabled, and when the firmware updating fails, the nonvolatile memory unit 113 can re-receive the firmware program to be updated or receive other firmware programs from the I2C interface unit 111 in the setting mode according to the I2C interface writing function to be enabled.
In operation, please refer to fig. 1 and 2, fig. 2 is a flowchart illustrating an example of a method for avoiding firmware from being unable to be updated again according to the present invention, in which the programmable logic device 11 is in a set mode after the server apparatus 1 is powered on (step S01), the firmware loading unit 114 loads a first firmware program that has not yet been updated (step S02) so that the programmable logic device 11 is switched from the set mode to an operating mode, the first firmware program includes the locking function for locking the I2C interface writing function to be enabled, the I2C interface writing function is locked to be enabled after the first firmware program loads the firmware loading unit 114 (step S03), then, when the programmable logic device 11 is in the operating mode, the baseboard management controller 13 may send a second firmware program to be updated to the I2C interface unit 111 (step S04), the I2C interface unit 111 transfers the second firmware program according to the locking function for enabling the I2C interface writing function, and the nonvolatile unit 113 receives the second firmware from the I2C interface unit 111 and stores the second firmware program (step S05).
After the second firmware program is stored in the nonvolatile memory unit 113, the baseboard management controller 13 may send a firmware update command to update the first firmware program to the second firmware program, the control unit 115 determines whether the firmware update command is received in the operation mode of the programmable logic device 11 (step S06), when the control unit 115 receives the firmware update command (yes), the control unit 115 performs a purging operation of the firmware loading unit 114 (step S07), so that the programmable logic device 11 is switched to the set mode (step S08), and the I2C interface writing function is still locked to be enabled in the set mode (step S10), that is, the I2C interface writing function is not switched from enabled to off due to the switching of the programmable logic device 11 from the operation mode to the set mode.
After receiving the firmware update command, the control unit 115 verifies the second firmware stored in the nonvolatile memory unit 113 to determine whether an error occurs in the second firmware (step S11). When the second firmware program is wrong, it indicates that the firmware update process cannot be completed, and the control unit 115 generates a loading failure signal in the setting mode of the programmable logic device 11 (step S12), so that the server apparatus 1 outputs an alert message including an audio signal and/or a video signal, which indicates that the second firmware program is not loaded into the firmware loading unit 114, that is, the programmable logic device 11 is still in the setting mode, so as to alert the user of the server apparatus 1 that the removal of the power of the server apparatus 1 is prohibited, that is, the server apparatus 1 immediately notifies the user that the system level restart is prohibited, and the user cannot restart the server apparatus 1 by removing and reinserting the plug from the socket, so as to avoid the problem that the locking function is turned off by the restart/reinsertion of the server apparatus 1, and the debugger cannot update the wrong second firmware program by the I2C interface unit 111.
Therefore, in the setting mode of the programmable logic device 11, although the program code of the second firmware program is wrong, the enabled I2C interface unit 111 can receive the firmware program again, and the designer or debugger of the server apparatus 1 can write the debugged program code to the nonvolatile memory unit 113 through the I2C interface unit 111 in the setting mode to repair the error of the second firmware program; alternatively, the firmware update failure is caused by a transmission error in the process of loading the second firmware program from the nonvolatile memory unit 113 to the firmware loading unit 114, and the designer or the debugger of the server device 1 may set the second firmware program to be re-recorded from the I2C interface unit 111 to the nonvolatile memory unit 113 in the set mode, and control the second firmware program re-recorded to the nonvolatile memory unit 113 to load the firmware loading unit 114. In other words, the programmable logic device 11 does not cause the I2C interface writing function to be turned off because of the operation in the set mode, so that the firmware program cannot be re-written to the non-volatile memory unit 113 through the I2C interface unit 111 when the update fails, and the designer or debugger of the server device 1 does not need to open the casing of the server device 1 to re-write the firmware program to the non-volatile memory unit 113 through the JTAG interface unit 112 or the SPI interface unit 116 connected to the non-volatile memory unit 113. (FIG. 1 is for illustration only, JTAG interface unit 112 and SPI interface unit 116 are connected to nonvolatile memory unit 113 by six pins).
In one embodiment, the control unit 115 is implemented by a finite state machine (Finite State Machine; FSM) of a hardware circuit, for example, the control unit 115 may be an Application-specific integrated circuit (ASIC), the control unit 115 performs the purging, verifying and signal outputting operations in steps S07, S11 and S12 according to the hardware behavior predefined in a hardware description language (e.g. Verilog code), that is, the control unit 115 does not execute firmware program codes, and the control unit 115 may also perform the purging, verifying and signal outputting operations when the firmware loading unit 114 does not load any firmware program.
In one embodiment, the user of the server device 1 may control the baseboard management controller 13 at the near end through a management interface (console) of the baseboard management controller 13, so that the baseboard management controller 13 sends the second firmware program in step S04. After the second firmware program is stored in the nonvolatile memory unit 113, the user controls the baseboard management controller 13 to issue a firmware update command, so that the control unit 115 determines that the firmware update command is received in step S06. In other embodiments, the user of the server device 1 may also operate a remote device connected to the network interface of the baseboard management controller 13 to remotely control the baseboard management controller 13 to send the second firmware program and the firmware update command. In other embodiments, the server device 1 may also automatically detect the firmware version, that is, the baseboard management controller 13 may automatically determine that the version of the second firmware program is newer and automatically send the second firmware program to the programmable logic device 11 and automatically issue the firmware update command.
In one embodiment, as shown in FIG. 1, the programmable logic device 11 further includes General purpose input/output pins (GPIO) 117 coupled between the baseboard management controller 13 and the control unit 115. In step S12, after generating the loading failure signal, the control unit 115 may send the loading failure signal to the baseboard management controller 13 through the GPIO pin 117, and the baseboard management controller 13 may generate the foregoing alert message according to the loading failure signal, and the sound or image output unit of the server device 1 outputs the alert message to indicate that the second firmware program is not loaded into the firmware loading unit 114, so that the programmable logic device 11 is in the set mode, so as to alert the user of the server device 1 that the power supply of the server device 1 cannot be removed, so as to avoid the problem that the server device 1 cannot debug or update the second firmware program due to the fact that the locking function is disabled by restarting.
Further, after the control unit 115 sends the loading failure signal to the baseboard management controller 13, the baseboard management controller 13 may resend the same firmware program to the I2C interface unit 111 according to the loading failure signal, or the baseboard management controller 13 may send the debug other firmware program to the I2C interface unit 111 after receiving the loading failure signal (hereinafter referred to as a third firmware program) after receiving the loading failure signal, the nonvolatile memory unit 113 may receive the third firmware program sent from the baseboard management controller 13 by the I2C interface unit 111 according to the enabled I2C interface write function in the set mode of the programmable logic device 11, and then send another firmware update command to the control unit 115 according to the enabled I2C interface unit 13, so that the control unit 115 may execute the subsequent step S11 after receiving the loading failure signal, if the control unit 115 determines that the debug other firmware program sent from the baseboard management controller 13 again is not generated by the step S11 or the debug other firmware program is not generated by the control unit 115, and the controller 115 may send the debug error signal to the controller after receiving the loading failure signal from the step S11, and the control unit 115 may send the debug other firmware program to the control unit 13, and the loading operation of the firmware program is successfully performed by the control unit 115 when the control unit is determined that the step S06 is generated by the step S06. Thus, after the firmware loading unit 114 loads the retransmitted second firmware program or the debugged other firmware program, the programmable logic device 11 operates according to the retransmitted second firmware program or the debugged other firmware program.
In one embodiment, the load fail signal and the load success signal may have different logic levels, for example, the load success signal may have a high level, the load fail signal may have a low level, and the baseboard management controller 13 may determine the signal level from the GPIO pin 117 to be high or low to determine the load fail signal or the load success signal. Accordingly, the bmc 13 can know whether the programmable logic device 11 is in the set mode or the working mode, that is, the bmc 13 can determine whether the firmware program has been loaded into the firmware loading unit 114 after issuing the firmware update command.
In summary, according to an embodiment of the method for avoiding firmware from being unable to be updated again, the programmable logic device does not cause the I2C interface writing function to be turned off in the set mode due to the firmware program error, so that the firmware program after debug cannot be updated in the nonvolatile memory unit through the I2C interface unit, and the control unit may issue an error message to avoid the I2C interface unit from being turned off after the server device is restarted or powered on due to the user restarting the power of the server device. The designer or debugger of the programmable logic device does not need to open the boot lid to update the firmware program by the JTAG interface when the firmware program is wrong, and the designer or debugger can still repair the firmware program by the I2C interface unit, thereby greatly improving the flexibility and convenience of debugging the firmware program of the programmable logic device. In addition, the I2C interface unit only needs two pins, and the bus wiring length of the I2C interface unit is longer, so that the I2C interface unit can meet the current requirements on stability and thinness of the server compared with JTAG interface and SPI interface.
Although the present invention has been described with reference to the above embodiments, it should be understood that the invention is not limited thereto, but rather is capable of modification and variation without departing from the spirit and scope of the present invention as defined in the appended claims.

Claims (10)

1. A server apparatus, comprising:
a baseboard management controller; a kind of electronic device with high-pressure air-conditioning system
A programmable logic device, comprising:
a firmware loading unit for loading a first firmware program to switch the programmable logic device from a set mode to a working mode and to enable an I2C interface writing function of the programmable logic device, wherein the first firmware program comprises program codes for locking the I2C interface writing function;
an I2C interface unit, coupled to the baseboard management controller, for receiving a second firmware program from the baseboard management controller according to the I2C interface writing function being enabled in the working mode;
a non-volatile memory unit coupled to the I2C interface unit for receiving the second firmware program via the I2C interface unit and storing the second firmware program; a kind of electronic device with high-pressure air-conditioning system
The control unit is coupled to the baseboard management controller, the firmware loading unit and the nonvolatile memory unit and is used for executing a clearing action of the firmware loading unit when a firmware update instruction is received from the baseboard management controller in the working mode, so that the programmable logic device is switched from the working mode to the setting mode, the I2C interface writing function is still locked in the setting mode and is not switched to be closed, the control unit verifies the second firmware program when the firmware update instruction is received, and when the second firmware program fails to pass the verification, the server device outputs an alarm message in the setting mode to indicate that the second firmware program does not load the firmware loading unit.
2. The server device according to claim 1, wherein the control unit is implemented as an asic, and the control unit performs the purging operation and verifies the second firmware program based on a hardware behavior predefined in a hardware description language.
3. The server apparatus of claim 1, wherein the programmable logic device further comprises a general purpose input/output pin coupled between the control unit and the baseboard management controller, the second firmware program is not loaded into the firmware loading unit when the second firmware program is wrong but not verified, the control unit generates a loading failure signal in the set mode, the loading failure signal is output to the baseboard management controller through the general purpose input/output pin, and the baseboard management controller generates the warning message according to the loading failure signal.
4. The server apparatus of claim 3, wherein the baseboard management controller further sends a third firmware program to the I2C interface unit according to the load failure signal, and the nonvolatile memory unit receives the third firmware program via the I2C interface unit according to the I2C interface write function being enabled in the set mode.
5. The server apparatus of claim 1, wherein the alert message comprises a voice message or text message prohibiting removal of power from the server apparatus.
6. A method for avoiding firmware from being unable to be updated again, which is suitable for a programmable logic device of a server device, the programmable logic device having an I2C interface writing function corresponding to a firmware writing mode, the method for avoiding firmware from being unable to be updated again comprising:
a firmware loading unit of the programmable logic device loads a first firmware program, so that the programmable logic device is switched from a set mode to a working mode, and the I2C interface writing function is locked to be started;
a baseboard management controller of the server device sends a second firmware program when the programmable logic device is in the working mode;
a non-volatile memory unit of the programmable logic device receives and stores the second firmware program via an I2C interface unit of the programmable logic device according to the enabled I2C interface write function in the operating mode;
a control unit of the programmable logic device determines whether a firmware update command from the baseboard management controller is received in the operation mode;
the control unit executes a clearing action of the firmware loading unit when receiving the firmware updating instruction, so that the programmable logic device is switched from the working mode to the setting mode;
the I2C interface write function is still locked in the set mode and not switched off;
the control unit verifies the second firmware program when receiving the firmware update instruction; a kind of electronic device with high-pressure air-conditioning system
When the second firmware program is not verified, the server device outputs an alarm message in the setting mode to indicate that the second firmware program does not load the firmware loading unit.
7. The method of claim 6, wherein the control unit is implemented by an asic, and the control unit performs the purging operation and verifies the second firmware program according to a hardware behavior predefined by a hardware description language.
8. The method for avoiding firmware re-renewal according to claim 6, further comprising:
when the second firmware program fails to pass the verification, the second firmware program does not load the firmware loading unit, and the control unit generates a loading failure signal in the setting mode;
the control unit sends the loading failure signal to the baseboard management controller through the general-purpose input/output pin of the programmable logic device; a kind of electronic device with high-pressure air-conditioning system
The baseboard management controller generates the warning message according to the loading failure signal.
9. The method of claim 6, wherein the alert message comprises a voice message or a text message prohibiting removal of power from the server device.
10. The method for avoiding firmware re-renewal according to claim 8, further comprising:
the baseboard management controller sends a third firmware program to the I2C interface unit according to the loading failure signal; a kind of electronic device with high-pressure air-conditioning system
The non-volatile memory unit receives and stores the third firmware program through the I2C interface unit according to the I2C interface write function being enabled in the set mode.
CN202010490320.5A 2020-06-02 2020-06-02 Server device and method for avoiding firmware from being unable to be updated again Active CN113760335B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010490320.5A CN113760335B (en) 2020-06-02 2020-06-02 Server device and method for avoiding firmware from being unable to be updated again

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010490320.5A CN113760335B (en) 2020-06-02 2020-06-02 Server device and method for avoiding firmware from being unable to be updated again

Publications (2)

Publication Number Publication Date
CN113760335A CN113760335A (en) 2021-12-07
CN113760335B true CN113760335B (en) 2023-07-18

Family

ID=78782843

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010490320.5A Active CN113760335B (en) 2020-06-02 2020-06-02 Server device and method for avoiding firmware from being unable to be updated again

Country Status (1)

Country Link
CN (1) CN113760335B (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101311899A (en) * 2007-05-25 2008-11-26 佛山市顺德区顺达电脑厂有限公司 Information processing apparatus prewarming control system and its control method
TW201423593A (en) * 2012-12-11 2014-06-16 Inventec Corp Server and firmware updating method thereof
TWI514282B (en) * 2014-10-23 2015-12-21 Inventec Corp Server directly updated through baseboard management controller
TWI576696B (en) * 2015-12-11 2017-04-01 英業達股份有限公司 System is applied to control indicator lights for non-volatile memory express solid state disk
TW201723825A (en) * 2015-12-17 2017-07-01 英業達股份有限公司 Server system for reading firmware version through inter-integrated circuit
CN108804117A (en) * 2017-05-02 2018-11-13 广达电脑股份有限公司 The method and system of hard disk is updated by Management Controller
CN109189435A (en) * 2018-09-21 2019-01-11 英业达科技有限公司 The firmware update of Complex Programmable Logic Devices
TW201905720A (en) * 2017-06-16 2019-02-01 英業達股份有限公司 Computing device and operation method
CN109491946A (en) * 2018-11-12 2019-03-19 郑州云海信息技术有限公司 A kind of chip and method for I2C bus extension

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101311899A (en) * 2007-05-25 2008-11-26 佛山市顺德区顺达电脑厂有限公司 Information processing apparatus prewarming control system and its control method
TW201423593A (en) * 2012-12-11 2014-06-16 Inventec Corp Server and firmware updating method thereof
TWI514282B (en) * 2014-10-23 2015-12-21 Inventec Corp Server directly updated through baseboard management controller
TWI576696B (en) * 2015-12-11 2017-04-01 英業達股份有限公司 System is applied to control indicator lights for non-volatile memory express solid state disk
TW201723825A (en) * 2015-12-17 2017-07-01 英業達股份有限公司 Server system for reading firmware version through inter-integrated circuit
CN108804117A (en) * 2017-05-02 2018-11-13 广达电脑股份有限公司 The method and system of hard disk is updated by Management Controller
TW201905720A (en) * 2017-06-16 2019-02-01 英業達股份有限公司 Computing device and operation method
CN109189435A (en) * 2018-09-21 2019-01-11 英业达科技有限公司 The firmware update of Complex Programmable Logic Devices
CN109491946A (en) * 2018-11-12 2019-03-19 郑州云海信息技术有限公司 A kind of chip and method for I2C bus extension

Also Published As

Publication number Publication date
CN113760335A (en) 2021-12-07

Similar Documents

Publication Publication Date Title
US7941658B2 (en) Computer system and method for updating program code
TWI633487B (en) Method and computer system for automatically recovering the bios image file
US20030221092A1 (en) Method and system of switching between two or more images of firmware on a host device
US20080126777A1 (en) External basic input/output system device
KR20080023841A (en) The method of firmware upgrade and automatic firmware recovery system
US20230168967A1 (en) Reset device and display device
TWI712045B (en) Hard disk restoring method
CN113760335B (en) Server device and method for avoiding firmware from being unable to be updated again
CN113626262A (en) BMC recovery method, system, equipment and medium
US20230060908A1 (en) Computer system and method for booting up the computer system
TWI733279B (en) Server device and method for avoiding firmware cannot be updated again thereof
CN113703816B (en) Server device and method for avoiding firmware from being unable to be updated again
US9529581B2 (en) Circuit and method for writing program codes of basic input/output system
TW201617861A (en) Firmware updating method and electronic apparatus using the same
CN111176902A (en) Device and method for backing up Controller Device firmware by using BMC Flash
US20050125649A1 (en) Method for updating firmware
JP6911591B2 (en) Information processing device, control device and control method of information processing device
TWI726477B (en) Server device and method for avoiding firmware cannot be updated again to programmable logic device thereof
CN112115000B (en) Remote resetting method and system of system component power supply and BMC remote device
CN113687843B (en) Method for automatically recovering firmware of baseboard management controller
CN108170444B (en) Firmware update error detection system
CN117632165A (en) BIOS program programming method and device, electronic equipment and storage medium
CN116521207A (en) FPGA remote upgrading method and system
CN114201204A (en) FPGA remote updating method, system, electronic equipment and storage medium
CN115934415A (en) LS2K 1000-based Reworks operating system backup method and system

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
GR01 Patent grant
GR01 Patent grant