CN116339771A - Control method and computing device for hard disk firmware upgrade - Google Patents

Control method and computing device for hard disk firmware upgrade Download PDF

Info

Publication number
CN116339771A
CN116339771A CN202310139824.6A CN202310139824A CN116339771A CN 116339771 A CN116339771 A CN 116339771A CN 202310139824 A CN202310139824 A CN 202310139824A CN 116339771 A CN116339771 A CN 116339771A
Authority
CN
China
Prior art keywords
hard disk
firmware
upgrade
processor
band controller
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
CN202310139824.6A
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.)
XFusion Digital Technologies Co Ltd
Original Assignee
XFusion Digital Technologies Co Ltd
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 XFusion Digital Technologies Co Ltd filed Critical XFusion Digital Technologies Co Ltd
Priority to CN202310139824.6A priority Critical patent/CN116339771A/en
Publication of CN116339771A publication Critical patent/CN116339771A/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
    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Stored Programmes (AREA)

Abstract

The application relates to a control method and computing equipment for hard disk firmware upgrade, and relates to the technical field of computer hardware. In this application, the method applies to an out-of-band controller of a computing device, the computing device further comprising a processor and a hard disk; the out-of-band controller communicates with the processor and the hard disk, respectively. According to the method, the out-of-band controller and the hard disk are in direct communication, so that under the condition that the processor of the computing device cannot access the hard disk for communication based on the operating system, the out-of-band controller can send the first instruction to the hard disk, the hard disk can finish upgrading the hard disk firmware based on the first instruction, and compared with the method requiring professional technicians to manually upgrade the firmware of the solid state hard disk, the method improves the efficiency of upgrading the hard disk firmware and reduces the cost of upgrading the firmware.

Description

Control method and computing device for hard disk firmware upgrade
Technical Field
The present disclosure relates to the field of computer hardware, and in particular, to a control method and a computing device for upgrading hard disk firmware.
Background
With the development of computer technology, solid state disks (So l id State Di sk, SSD) have been widely used in a plurality of fields, and due to their higher reliability and performance, traditional mechanical hard disks (Hard Di sk Dr ive, HDD) have been gradually replaced.
Firmware (Fi rmware) is installed in the solid state disk, and the firmware is used for realizing the data reading and writing function and the transmission function of the solid state disk. In the use process of the solid state disk, the solid state disk may malfunction. For example, the failure is that the operating system of the computing device cannot identify the solid state disk, thereby causing the operating system to be unable to communicate with the solid state disk.
When the hard disk fails, the firmware of the solid state disk can be manually upgraded by a professional technician to repair the failure of the solid state disk, and the defects of low firmware upgrading efficiency and high upgrading cost exist.
Disclosure of Invention
The embodiment of the application provides a control method and computing equipment for upgrading hard disk firmware, which are used for improving the upgrading efficiency of the hard disk firmware and reducing the upgrading cost of the firmware.
In order to achieve the above purpose, the embodiments of the present application adopt the following technical solutions:
in a first aspect, a method for controlling firmware upgrade of a hard disk is provided, where the method includes: the out-of-band controller receives upgrade instruction information sent by the processor, and the upgrade instruction information is used for instructing the upgrade of the firmware of the hard disk. The out-of-band controller sends a first instruction to the hard disk based on the upgrade instruction information, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file, and the first instruction is used for instructing the hard disk to upgrade the firmware based on the firmware upgrade file. According to the method, the out-of-band controller and the hard disk are in direct communication, so that under the condition that the computing equipment cannot access the hard disk for communication based on the operating system, the firmware upgrading file and the first instruction can be sent to the hard disk through the out-of-band controller to finish upgrading of the hard disk firmware.
In a possible implementation manner of the first aspect, the out-of-band controller is in data communication with the hard disk through an integrated circuit bus I2C. According to the method, communication is realized based on the integrated circuit bus I2C interface configured by the out-of-band controller and the hard disk, so that firmware upgrading of the hard disk can be realized under the condition that the computing equipment cannot access the hard disk for communication based on an operating system, and additional communication interfaces are not required to be respectively arranged for the out-of-band controller and the hard disk, so that the cost can be effectively reduced.
In a possible implementation manner of the first aspect, the hard disk is an NVMe hard disk. In the related art, since firmware upgrading of the NVMe hard disk is required to be realized by the computing device based on the operating system, in the scene that the computing device cannot identify the NVMe hard disk based on the operating system, the method provided by the application can realize upgrading of the NVMe hard disk firmware through direct communication between the out-of-band controller and the NVMe hard disk.
In a possible implementation manner of the first aspect, the upgrade instruction information is sent by the processor when a hard disk failure is detected, so as to complete the repair of the hard disk failure. According to the method, when the processor detects the hard disk fault, the processor sends the upgrade instruction information to the out-of-band controller, so that the out-of-band controller can respond to the upgrade instruction information and directly send the firmware upgrade file and the instruction to the hard disk, and the fault repair of the hard disk is completed.
In a possible implementation manner of the first aspect, the upgrade instruction information is specifically sent by the processor when the hard disk is restarted after detecting the hard disk failure, and then the hard disk failure is detected again, so as to complete the fault repair of the hard disk. According to the method, the out-of-band controller is communicated with the hard disk through the processor respectively, when the processor detects the hard disk fault, the processor restarts the hard disk first, and under the condition that the hard disk still fails after restarting, upgrade instruction information is sent to the out-of-band controller, so that the out-of-band controller can respond to the upgrade instruction information to send a firmware upgrade file and an instruction to the hard disk, and upgrade of the hard disk firmware is completed. The hard disk is restarted by the processor, so that the firmware of the hard disk is not required to be upgraded under the condition that the hard disk is repaired after the restarting, the repairing efficiency can be saved, and the repairing cost of the hard disk is reduced.
In a possible implementation manner of the first aspect, when the first instruction carries hard disk reset information, the first instruction is specifically configured to instruct the hard disk to perform a reset operation based on the hard disk reset information, and perform a firmware upgrade based on the firmware upgrade file after the reset operation is completed. According to the method, the hard disk reset information is carried in the first instruction, so that after the hard disk is reset based on the hard disk reset information, firmware is upgraded, the use requirements of different users under different use scenes can be met, and the mode of upgrading the hard disk firmware is more flexible.
In one possible implementation of the first aspect, the reset operation indicated by the hard disk reset information includes one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation. According to the method, different hard disk reset information is carried in the first instruction, so that the hard disk can be updated after different reset operations are carried out based on the hard disk reset information, the use requirements of different users under different use scenes can be met, and the mode of updating the hard disk firmware is more flexible.
In a second aspect, a method for controlling firmware upgrade of a hard disk is provided, where the method includes: when the processor detects the hard disk fault, upgrade instruction information is sent to the out-of-band controller, and the upgrade instruction information is used for instructing the out-of-band controller to upgrade the firmware of the hard disk.
In a possible implementation manner of the second aspect, when the processor detects a hard disk failure, sending upgrade instruction information to the out-of-band controller includes: when the processor detects a hard disk fault, the hard disk is controlled to restart; and after the hard disk is restarted, when the processor detects the hard disk fault again, the upgrading instruction information is sent to the out-of-band controller.
In a possible implementation manner of the second aspect, the out-of-band controller is in data communication with the hard disk through an integrated circuit bus I2C.
In a possible implementation manner of the second aspect, the hard disk is an NVMe hard disk.
In a third aspect, a computing device is provided, the computing device comprising a processor, an out-of-band controller, and a hard disk; the processor is in communication with the out-of-band controller; the out-of-band controller is communicated with the hard disk; the processor is used for sending upgrade indication information to the out-of-band controller; the out-of-band controller is used for responding to the upgrade instruction information and sending a first instruction to the hard disk, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file; the hard disk is used for responding to the first instruction and carrying out firmware upgrading based on the firmware upgrading file.
In a possible implementation manner of the third aspect, the out-of-band controller is in data communication with the hard disk through an integrated circuit bus I2C.
In a possible implementation manner of the third aspect, the hard disk is an NVMe hard disk.
In a possible implementation manner of the third aspect, the processor is further in communication with a hard disk; the processor is specifically configured to send upgrade indication information to the out-of-band controller when a hard disk failure is detected, so as to complete failure repair of the hard disk.
In a possible implementation manner of the third aspect, the processor is specifically configured to: under the condition that a hard disk fault is detected, controlling the hard disk to restart; and under the condition that the hard disk fault is detected again after the hard disk is restarted, sending upgrading instruction information to the out-of-band controller so as to finish fault repair of the hard disk.
In a possible implementation manner of the third aspect, the first instruction carries hard disk reset information; the hard disk is specifically used for responding to the first instruction, carrying out reset operation based on the hard disk reset information, and carrying out firmware upgrading based on the firmware upgrading file after the reset operation is completed.
In one possible implementation manner of the third aspect, the reset operation indicated by the hard disk reset information includes one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
In a fourth aspect, a control apparatus for firmware upgrade of a hard disk is provided, the control apparatus is applied to an out-of-band manager of a computing device, and the computing device further includes a processor and a hard disk; the out-of-band manager is respectively communicated with the processor and the hard disk; the device comprises a receiving unit and a sending unit; the receiving unit is used for receiving upgrade instruction information sent by the processor, and the upgrade instruction information is used for instructing the upgrade of the firmware of the hard disk; the sending unit is used for sending a first instruction to the hard disk based on the upgrade instruction information, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file, and the first instruction is used for instructing the hard disk to upgrade the firmware based on the firmware upgrade file.
In a possible implementation manner of the fourth aspect, the out-of-band controller is in data communication with the hard disk through an integrated circuit bus I2C.
In a possible implementation manner of the fourth aspect, the hard disk is an NVMe hard disk.
In a possible implementation manner of the fourth aspect, the upgrade instruction information is sent by the processor when a hard disk failure is detected, so as to complete the repair of the hard disk failure.
In a possible implementation manner of the fourth aspect, the upgrade instruction information is specifically sent by the processor when the hard disk is restarted after detecting the hard disk failure, and then the hard disk failure is detected again, so as to complete the fault repair of the hard disk.
In a possible implementation manner of the fourth aspect, when the first instruction carries hard disk reset information, the first instruction is specifically configured to instruct the hard disk to perform a reset operation based on the hard disk reset information, and perform a firmware upgrade based on the firmware upgrade file after the reset operation is completed.
In one possible implementation manner of the fourth aspect, the reset operation indicated by the hard disk reset information includes one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
In a fifth aspect, an electronic device is provided that includes a processor, an out-of-band controller, and an internal memory; the internal memory is respectively coupled with the processor and the out-of-band controller; wherein the internal memory has stored therein computer program code comprising computer instructions which, when executed by the processor and/or the out-of-band controller, cause the electronic device to perform any one of the methods as provided in the first and/or second aspects above.
In a sixth aspect, there is provided a chip comprising: a processor and interface circuit; the interface circuit is used for receiving the code instruction and transmitting the code instruction to the processor; a processor for executing code instructions to perform any of the methods provided in the first aspect above.
In a seventh aspect, there is provided a computer readable storage medium storing computer executable instructions that when run on a computer cause the computer to perform any one of the methods provided in the first aspect above.
In an eighth aspect, there is provided a computer program product comprising computer-executable instructions which, when run on a computer, cause the computer to perform any one of the methods provided in the first aspect above.
The technical effects caused by any one of the design manners of the second aspect to the eighth aspect may refer to the technical effects caused by different implementation manners of the first aspect, which are not described herein.
Drawings
FIG. 1 illustrates a schematic diagram of a computing device provided by an embodiment of the present application;
FIG. 2 illustrates a schematic diagram of another computing device provided by an embodiment of the present application;
FIG. 3 is an interactive flowchart of a control method for upgrading hard disk firmware according to an embodiment of the present application;
FIG. 4 is an interactive flowchart of another control method for firmware upgrade of a hard disk according to an embodiment of the present application;
FIG. 5 is an interactive flowchart of a control method for upgrading hard disk firmware according to an embodiment of the present application;
fig. 6 is a block diagram illustrating a structure of a control device for upgrading hard disk firmware according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application. Wherein, in the description of the present application, unless otherwise indicated, "a plurality" means two or more than two. "at least one of" or the like means any combination of these items, including any combination of single item(s) or plural items(s). For example, at least one (one) of a, b, or c may represent: a, b, c, a-b, a-c, b-c, or a-b-c, wherein a, b, c may be single or plural.
In addition, in order to clearly describe the technical solutions of the embodiments of the present application, in the embodiments of the present application, the words "first", "second", and the like are used to distinguish the same item or similar items having substantially the same function and effect. It will be appreciated by those of skill in the art that the words "first," "second," and the like do not limit the amount and order of execution, and that the words "first," "second," and the like do not necessarily differ. Meanwhile, in the embodiments of the present application, words such as "exemplary" or "such as" are used to mean serving as examples, illustrations, or descriptions. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion that may be readily understood.
With the development of computer technology, solid state disks (So l id State Di sk, SSD) have been widely used in a plurality of fields, and due to their higher reliability and performance, traditional mechanical hard disks (Hard Di sk Dr ive, HDD) have been gradually replaced.
Firmware (Fi rmware) is installed in the solid state disk, and the firmware is used for realizing the data reading and writing function and the transmission function of the solid state disk. In the use process of the solid state disk, the solid state disk may malfunction. For example, the failure is that the operating system of the computing device cannot identify the solid state disk, thereby causing the operating system to be unable to communicate with the solid state disk.
When a hard disk fails, the hard disk firmware can be upgraded to repair the failure. In the related art, the computing devices send instructions to the solid state disk through the operating system to upgrade the firmware. Under the condition that the operating system of the computing device and the solid state disk cannot communicate, a professional technician is required to manually upgrade the firmware of the solid state disk. Therefore, there are disadvantages of low firmware upgrade efficiency and high upgrade cost.
In view of this, the present application provides a control method for hard disk firmware upgrade, applied to an out-of-band controller of a computing device, the computing device further comprising a processor and a hard disk in communication with the out-of-band controller. The method comprises the following steps: receiving upgrade instruction information sent by a processor, wherein the upgrade instruction information is used for instructing the upgrade of firmware of a hard disk; and sending a first instruction to the hard disk based on the upgrade instruction information, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file. The first instruction is used for indicating the hard disk to carry out firmware upgrading based on the firmware upgrading file. According to the method, the out-of-band controller and the hard disk are in direct communication, so that under the condition that the computing equipment cannot access the hard disk for communication based on the operating system, the first instruction can be sent to the hard disk through the out-of-band controller to finish upgrading of the hard disk firmware, and compared with the method that a professional technician is required to manually upgrade the firmware of the solid state disk, the method improves the efficiency of upgrading the hard disk firmware, and reduces the cost of upgrading the firmware.
The following describes an application scenario of a control method for upgrading hard disk firmware provided in the embodiment of the present application in an exemplary manner:
fig. 1 shows a schematic structural diagram of a computing device 110 provided in an embodiment of the present application. The computing device 110 includes a processor 210, an internal memory 220, an out-of-band controller 230, and a hard disk 240. Wherein the processor communicates with the internal memory 220, the out-of-band controller 230, and the hard disk 240, respectively, and the out-of-band controller 230 communicates with the hard disk 240.
Processor 210 may include one or more processing cores. The processor 210 utilizes various interfaces and lines to connect various portions of the computing device 110, execute various functions of the computing device 110 and process data by executing or executing instructions, programs, code sets, or instruction sets stored in the internal memory 220, and invoking data stored in the internal memory 220. For example, the processor 210 obtains parameter information of the hard disk 240, including the current operating state of the hard disk, by executing or executing instructions, programs, code sets, or instruction sets stored in the internal memory 220.
Alternatively, the processor 210 may be implemented in at least one hardware form of digital signal processing (d igita l s igna l process ing, DSP), field programmable gate array (fie ld-programmab le gate array, FPGA), programmable logic array (programmab le logic array, PLA). The processor 210 may integrate one or a combination of several of a central processing unit (Centra lProcess ing Un it, CPU), an image processor (graph ics process ing un it, GPU), and a modem, etc. It will be appreciated that the modem may not be integrated into the processor 210 and may be implemented solely by a single communication chip.
The internal memory 220 is a memory, and may include a random access memory (random access memory, RAM) or a read-only memory (ROM). Optionally, the internal memory 220 includes a non-transitory computer readable medium (non-trans itory computer-readab le storage med ium). Internal memory 220 may be used to store instructions, programs, code sets, or instruction sets. The internal memory 220 may include a memory program area. The storage program area may store instructions for implementing an operating system, instructions for implementing at least one function (such as a data writing function, a data reading function, etc.), instructions for implementing the above-described respective method embodiments, and so on.
The out-of-band controller 230 may generate operation control signals according to the received instruction operation code and timing signals to complete the operations of acquiring instructions and executing instructions. The out-of-band controller 230 may include one or more interfaces. The interfaces may include an integrated circuit (inter-integrated ci rcu it, I2C) interface, a modified integrated circuit (Improved I nter I ntegrated Ci rcu it, I3C), a serial general purpose input/output (SGPIO) interface, and the like. The out-of-band controller is independent of a central processing unit CPU of the computing device, can communicate with the CPU through an out-of-band management interface of the computing device, and can remotely maintain and manage the computing device through a special data channel. By way of example, the out-of-band controller may be one of a monitoring management unit external to the computer device, a management system in a management chip external to the processor, a baseboard management controller (baseboard management contro l ler, BMC), a system management module (system management mode, SMM). It should be noted that the embodiments of the present application are not limited to the specific form of the out-of-band controller, and the above is merely exemplary.
The I2C interface is a bi-directional synchronous serial bus comprising a serial data line (ser ia l data l ine, SDA) and a serial clock line (derai l C lock l ine, SCL). In some embodiments, multiple sets of I2C buses may be included on the motherboard and back plane. The out-of-band controller 230 provided on the main board may implement connection with the hard disk 240 provided on the back board through the I2C bus interface.
The I3C interface is a modified I2C interface comprising a serial data line (ser ia l data l ine, SDA) and a serial clock line (derai l C lock l ine, SCL). The I3C interface is downward compatible with the I2C interface, the I3C interface realizes the standardization of sensor communication by reducing the physical pins of the sensor system integration, and a quick, low-cost, low-power-consumption and two-wire digital interface standard is provided. In some embodiments, multiple sets of I3C buses may be included on the motherboard and back plane. The out-of-band controller 230 provided on the main board may implement connection with the hard disk 240 provided on the back board through the I3C bus interface.
The SGPIO interface is a serial universal input/output interface that can be configured by software. The SGPIO interface may be configured to transmit control signals as well as data signals. In some embodiments, the SGPIO interface may be used to send control signals. The SGPIO interface may also be configured as an I2C interface, I3C interface.
The out-of-band controller 230 drives devices connected to the out-of-band controller 230 by sending different control signals. In one example, the out-of-band controller 230 may be connected to the hard disk through one of the I2C interface, the I3C interface, or the SGPIO interface, and the out-of-band controller 230 may send a control signal through the I2C interface, the I3C interface, or the SGPIO interface, to control the hard disk 240.
The hard disk 240 may include a solid state disk (So l id State Di sk, SSD) that enables data storage and reading based on a (Non-Vo l at i le Memory Express, NVMe) transport protocol. It can also be understood that: the hard disk 240 is an NVMe hard disk. Optionally, the solid state disk generally includes a control unit and a storage unit; the control unit is provided with firmware (Fi rmware) for realizing the data read-write function and the transmission function in the storage unit.
It should be noted that the number of hard disks 240 may be plural. The out-of-band controller 230 may be connected to the plurality of hard disks 240 shown in fig. 1 through a plurality of interfaces, respectively, to control the plurality of hard disks 240, and thus upgrade firmware of the plurality of hard disks 240. The number of hard disks 240 in computing device 110 is not particularly limited herein.
Optionally, referring to fig. 2, the computing device 110 shown in fig. 1 further includes a motherboard 250 and a back plane 260. The motherboard 250 is connected to the back plate 260. The processor 210, the internal memory 220, and the out-of-band controller 230 are disposed on the motherboard 250, and the hard disk 240 is disposed on the back plate 260. Processor 210 and out-of-band controller 230 communicate with hard disk 240 via a connection of motherboard 250 to backplane 260, respectively.
In particular, in physical implementation, the above-described devices (e.g., the processor 210, the internal memory 220, the out-of-band controller 230, and the hard disk 240) may be devices in the same computing device (e.g., a server); alternatively, at least two of the devices may be disposed in the same computing device, i.e., as different devices in one computing device, such as in a manner similar to the deployment of devices or devices in a distributed system.
It should be appreciated that the architecture illustrated in the present embodiment is not intended to constitute a particular limitation on the computing device 110. In other embodiments of the present application, computing device 110 may include more or fewer components than shown, or may combine certain components, or split certain components, or a different arrangement of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
In the following embodiments, the out-of-band controller 230 is exemplified as a BMC.
It should be noted that different computing devices may be referred to as BMCs differently, for example, some computing devices may be referred to as BMCs, some computing devices may be referred to as iLO (I ntegrated Ligths-out), and another computing device may be referred to as iDRAC (I ntegrated De l lRemote Access Contro l ler). Either called BMC or iLO or iracc may be understood to be BMC in embodiments of the present application.
The following describes a control method for upgrading hard disk firmware provided in the embodiment of the present application with reference to the accompanying drawings. For simplicity of explanation, the explanation will be made below taking the case where the hard disk is a solid state disk.
Fig. 3 is an interaction flow chart of a control method for upgrading hard disk firmware according to an embodiment of the present application. Alternatively, the method may be performed by a computing device 110 having the hardware structure shown in fig. 1 or fig. 2, the computing device 110 including a processor, a BMC, and a hard disk. The method may comprise the steps of:
s301, the processor detects whether the hard disk fails.
Specifically, the failure of the hard disk is that the processor cannot identify the hard disk or cannot communicate with the hard disk based on the operating system. It can also be understood that: in this case, when the processor cannot recognize the hard disk through the operating system and cannot communicate with the hard disk, the processor determines that the hard disk is malfunctioning.
S302, when the processor detects a hard disk fault, the processor sends upgrade instruction information to the BMC.
Specifically, the upgrade instruction information is used for instructing the BMC to instruct upgrading of firmware of the hard disk, so as to complete fault repair of the hard disk.
In some application scenarios, when the processor cannot identify the hard disk or cannot communicate with the hard disk based on the operating system, the processor can repair some hard disks with the fault by controlling the hard disk to restart.
Optionally, in order to avoid upgrading the hard disk firmware in the case that the hard disk is capable of repairing the failure by restarting, referring to fig. 4, S302 described above specifically includes the following steps:
s3021, when the processor detects the hard disk fault, the hard disk is controlled to restart.
As an example, when the processor is disposed on the motherboard and the hard disk is disposed on the back plane, the process of controlling the hard disk restart by the processor may be: the processor is powered on after powering down through controlling the backboard where the hard disk is located, so that the hard disk is controlled to be powered on after powering down, and further the hard disk is controlled to restart.
S3022, after the hard disk is restarted, the processor detects whether the hard disk fails again;
and S3023, when the processor detects the hard disk fault again, the processor sends upgrade instruction information to the BMC.
According to the method, when the processor detects the hard disk fault, the processor restarts the hard disk first, and under the condition that the hard disk still detects the fault after restarting, the processor sends upgrade instruction information to the BMC, so that the BMC can respond to the upgrade instruction information and directly send a firmware upgrade file and an instruction to the hard disk, and the hard disk can finish upgrading the firmware of the hard disk. By the method, under the condition that hard disk fault repair is completed by restarting the hard disk, firmware of the hard disk is not required to be upgraded, so that the repair efficiency of the hard disk fault can be saved, and the repair cost of the hard disk fault is reduced.
S303, the BMC receives the upgrade instruction information sent by the processor and sends a first instruction to the hard disk according to the upgrade instruction information.
Specifically, the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file, where the firmware upgrade file is used to upgrade firmware of the hard disk.
In one possible implementation manner, under the condition that the first instruction carries a storage path of a firmware upgrade file of the hard disk, the hard disk obtains the firmware upgrade file based on the storage path of the firmware upgrade file to realize firmware upgrade of the hard disk.
Illustratively, the first instruction includes an Fi rmware Image download command based on an NVMe protocol and an Fi rmware commit command based on the NVMe protocol. The Fi rmware Image downloading command is used for acquiring the firmware upgrading file by the hard disk based on a storage path of the firmware upgrading file, and the firmware upgrading file is stored in a storage unit of the hard disk. The fi rmware commit command is used for indicating the hard disk to activate the firmware upgrade file stored in the storage unit of the hard disk, and the firmware upgrade of the hard disk is completed.
In another possible implementation manner, under the condition that the first instruction carries the firmware upgrade file of the hard disk, it may also be understood that the BMC may directly send the firmware upgrade file to the hard disk through the first instruction, so that the hard disk stores the firmware upgrade file carried in the first instruction in a storage unit of the hard disk, and directly upgrades the firmware of the hard disk based on the firmware upgrade file.
The specific implementation manner of obtaining the firmware upgrade file by the hard disk and the specific implementation manner of storing the firmware upgrade file by the hard disk are not particularly limited.
In one possible implementation, the BMC may send the first instruction over a communication bus between itself and the hard disk. As an example, the communication bus may be I2C, I C or SGPIO. The BMC may send the first instruction through an I2C channel, an I3C channel, or an SGPIO channel connecting itself to the hard disk. Therefore, the method provided by the application realizes communication based on the communication bus interface configured by the BMC and the hard disk, namely, the firmware upgrading of the hard disk can be realized under the condition that the computing equipment cannot access the hard disk for communication based on the operating system, and the BMC and the hard disk are not required to be respectively provided with additional communication interfaces, so that the cost can be effectively reduced.
S304, responding to the first instruction, and carrying out firmware upgrading on the hard disk based on the firmware upgrading file.
In one example, in a case where the first instruction includes an Fi rmware Image download command based on an NVMe protocol and an Fi rmware commit command based on the NVMe protocol, the hard disk obtains the firmware upgrade file based on a storage path of the firmware upgrade file by executing the Fi rmware Image download command, and stores the firmware upgrade file in a storage unit of the hard disk. And then the hard disk executes the fi rmware commit command to activate the firmware upgrade file stored in the storage unit of the hard disk, thereby completing the firmware upgrade of the hard disk.
In another example, under the condition that the first instruction carries a firmware upgrade file and an fi rmware commit command based on an NVMe protocol, the hard disk firstly stores the firmware upgrade file in a storage unit of the hard disk, and then the hard disk executes the fi rmware commit command to activate the firmware upgrade file stored in the storage unit of the hard disk, so that firmware upgrade of the hard disk is completed.
As can be seen from S301-S304, the method provided by the present application directly communicates with the hard disk through the BMC, so that when the computing device cannot access the hard disk for communication based on the operating system, the first instruction can be sent to the hard disk through the BMC to complete the upgrade of the hard disk firmware.
In one possible implementation, the first instruction carries hard disk reset information.
Optionally, referring to fig. 5, S304 specifically includes the following steps:
s3041, responding to a first instruction, and resetting the hard disk based on hard disk reset information;
optionally, the reset operation indicated by the hard disk reset information includes one or more of a Non-volatile memory (Non-Vo l at i le Memory, NVM) subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
Specifically, the NVM subsystem reset operation refers to the control unit of the hard disk resetting all contro l ler leve l constituting the NVM subsystem. The normal operation of reset may be understood as a control unit of the hard disk performing PCI (Per iphera l Component I nterconnect) Express hot reset, warm reset or cold reset. The controller reset operation can be understood as that the control unit of the hard disk converts cc.en in the NVMe protocol from "1" to "0".
Optionally, the reset operation indicated by the hard disk reset information further includes not performing the reset operation. The fact that the hard disk is not reset means that the control unit of the hard disk does not perform any reset operation, and firmware of the hard disk is directly updated based on the firmware upgrading file.
S3042, after the reset operation is completed, the hard disk carries out firmware upgrading based on the firmware upgrading file.
It should be noted that, after the reset operation is completed, the manner of obtaining the firmware upgrade file by the hard disk is the same as the manner of obtaining the firmware upgrade file in S304, for example, the firmware upgrade file may be obtained based on the storage path carried in the first instruction, and the firmware upgrade may be completed. The firmware upgrade of the hard disk can also be directly completed based on the firmware upgrade file carried in the first instruction, which is not described herein.
In this way, the hard disk can be updated after the hard disk is reset based on the hard disk reset information by carrying the hard disk reset information in the first instruction, so that the reset requirements of users under different use scenes can be met, and the hard disk firmware updating mode is more flexible.
The foregoing description of the embodiments of the present application has been presented primarily from a method perspective. It will be appreciated that, in order to implement the above-mentioned functions, the control device for hard disk firmware upgrade includes at least one of a hardware structure and a software module for executing each function. Those of skill in the art will readily appreciate that the elements and algorithm steps of the examples described in connection with the embodiments disclosed herein may be implemented as hardware or combinations of hardware and computer software. Whether a function is implemented as hardware or computer software driven hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The embodiment of the application can divide the functional units of the control device for upgrading the hard disk firmware according to the method example, for example, each functional unit can be divided corresponding to each function, and two or more functions can be integrated in one processing unit. The integrated units may be implemented in hardware or in software functional units. It should be noted that, in the embodiment of the present application, the division of the units is schematic, which is merely a logic function division, and other division manners may be implemented in actual practice.
Fig. 6 is a block diagram illustrating a control device for upgrading hard disk firmware according to an embodiment of the present application. An out-of-band manager applied to a computing device, the computing device further comprising a processor and a hard disk; the out-of-band manager is respectively communicated with the processor and the hard disk; the above-mentioned apparatus includes a receiving unit 610 and a transmitting unit 620; a receiving unit 610, configured to receive upgrade instruction information sent by the processor, where the upgrade instruction information is used to instruct upgrading of firmware of the hard disk; the sending unit 620 is configured to send, to the hard disk based on the upgrade instruction information, a first instruction, where the first instruction carries a storage path of a firmware upgrade file of the hard disk or the firmware upgrade file, and the first instruction is used to instruct the hard disk to perform firmware upgrade based on the firmware upgrade file.
Optionally, the out-of-band controller is in data communication with the hard disk via an integrated circuit bus I2C.
Optionally, the hard disk is an NVMe hard disk.
Optionally, the upgrade instruction information is sent by the processor when the fault of the hard disk is detected, so as to complete fault repair of the hard disk.
Optionally, the upgrade instruction information is specifically sent by the processor when the hard disk is restarted after the hard disk is detected to be failed, so as to complete the fault repair of the hard disk.
Optionally, when the first instruction carries the hard disk reset information, the first instruction is specifically configured to instruct the hard disk to perform a reset operation based on the hard disk reset information, and perform firmware upgrade based on the firmware upgrade file after the reset operation is completed.
Optionally, the reset operation indicated by the hard disk reset information includes one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
For a specific description of the above alternative modes, reference may be made to the foregoing method embodiments, and details are not repeated here. In addition, the explanation and description of the beneficial effects of any control device for upgrading the hard disk firmware provided above can refer to the corresponding method embodiments, and are not repeated.
The embodiment of the application also provides a computing device, which comprises a processor, an out-of-band controller and a hard disk; the processor is in communication with the out-of-band controller; the out-of-band controller is communicated with the hard disk; the processor is used for sending upgrade indication information to the out-of-band controller; the out-of-band controller is used for responding to the upgrade instruction information and sending a first instruction to the hard disk, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file; the hard disk is used for responding to the first instruction and carrying out firmware upgrading based on the firmware upgrading file.
The embodiment of the application also provides electronic equipment, which comprises a processor, an out-of-band controller and an internal memory; the internal memory is respectively coupled with the processor and the out-of-band controller; wherein the internal memory has stored therein computer program code comprising computer instructions which, when executed by the processor and/or the out-of-band controller, cause the electronic device to perform the method of the various embodiments as above.
Embodiments also provide a computer readable storage medium having stored therein at least one computer instruction that is loaded and executed by a processor or an out-of-band controller to implement the methods of the various embodiments above. For the explanation of the relevant content and the description of the beneficial effects in any of the above-mentioned computer-readable storage media, reference may be made to the above-mentioned corresponding embodiments, and the description thereof will not be repeated here.
The embodiment of the application also provides a chip. The chip integrates a control circuit and one or more ports for realizing the functions of the control device for upgrading the hard disk firmware. Optionally, the functions supported by the chip may be referred to above, and will not be described herein. Those of ordinary skill in the art will appreciate that all or a portion of the steps implementing the above-described embodiments may be implemented by a program to instruct associated hardware. May be stored in a computer readable storage medium. The above-mentioned storage medium may be a read-only memory, a random access memory, or the like. The processing unit or processor may be a central processing unit, a general purpose processor, a specific circuit configuration (app l icat ion specific integrated ci rcu it, ASIC), a microprocessor (d igita ls igna l processor, DSP), a field programmable gate array (fie ld programmable gate array, FPGA) or other programmable logic device, transistor logic device, hardware components, or any combination thereof.
Embodiments of the present application also provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform any of the methods of the above embodiments. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions in accordance with embodiments of the present application are produced in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, a website, computer, server, or data center via a wired (e.g., coaxial cable, fiber optic, digital subscriber line (d igita l subscr iber l ine, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. Computer readable storage media can be any available media that can be accessed by a computer or data storage devices including one or more servers, data centers, etc. that can be integrated with the media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., SSD), etc.
It should be noted that the above-mentioned devices for storing computer instructions or computer programs, such as, but not limited to, the above-mentioned memories, computer-readable storage media, communication chips, and the like, provided in the embodiments of the present application all have non-volatility (non-tradition). Those skilled in the art will appreciate that in one or more of the examples described above, the functions described in the embodiments of the present application may be implemented in hardware, software, firmware, or any combination thereof. When implemented in software, these functions may be stored on or transmitted over as one or more instructions or code on a computer-readable storage medium. Computer-readable storage media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer.
The foregoing description of the preferred embodiments is merely exemplary in nature and is not intended to limit the invention, thus, any modification, equivalent replacement, improvement, etc. that comes within the spirit and principles of the present application are intended to be included in the scope of the present application.

Claims (19)

1. A method for controlling firmware upgrade of a hard disk, the method comprising:
the out-of-band controller receives upgrade instruction information sent by the processor, wherein the upgrade instruction information is used for instructing the upgrade of the firmware of the hard disk;
the out-of-band controller sends a first instruction to the hard disk based on the upgrade instruction information, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file, and the first instruction is used for instructing the hard disk to upgrade the firmware based on the firmware upgrade file.
2. The method of claim 1, wherein the out-of-band controller is in data communication with the hard disk via an integrated circuit bus I2C.
3. The method of claim 1 or 2, wherein the hard disk is an NVMe hard disk.
4. A method according to any one of claims 1-3, wherein the upgrade instruction information is sent by the processor upon detection of a failure of the hard disk to complete the repair of the hard disk.
5. The method according to any one of claims 1-4, wherein the upgrade instruction information is specifically sent by the processor when the hard disk is detected again after restarting the hard disk when the hard disk is detected to complete the repair of the hard disk.
6. The method according to any one of claims 1-5, wherein when the first instruction carries hard disk reset information, the first instruction is specifically configured to instruct the hard disk to perform a reset operation based on the hard disk reset information, and perform a firmware upgrade based on the firmware upgrade file after the reset operation is completed.
7. The method of claim 6, wherein the reset operation indicated by the hard disk reset information comprises one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
8. A method for controlling firmware upgrade of a hard disk, the method comprising:
and when the processor detects the hard disk fault, the processor sends upgrade instruction information to the out-of-band controller, wherein the upgrade instruction information is used for instructing the out-of-band controller to upgrade the firmware of the hard disk.
9. The method of claim 8, wherein the sending upgrade indication information to the out-of-band controller when the processor detects a hard disk failure comprises:
when the processor detects the hard disk fault, controlling the hard disk to restart;
And after the hard disk is restarted, the processor sends the upgrade indication information to the out-of-band controller when detecting the hard disk fault again.
10. The method of claim 8 or 9, wherein the out-of-band controller is in data communication with the hard disk via an integrated circuit bus I2C.
11. The method of any one of claims 8-10, wherein the hard disk is an NVMe hard disk.
12. A computing device, the computing device comprising a processor, an out-of-band controller, and a hard disk; the processor is in communication with the out-of-band controller; the out-of-band controller is in communication with the hard disk;
the processor is used for sending upgrade indication information to the out-of-band controller;
the out-of-band controller is used for responding to the upgrade instruction information and sending a first instruction to the hard disk, wherein the first instruction carries a firmware upgrade file of the hard disk or a storage path of the firmware upgrade file;
the hard disk is used for responding to the first instruction and carrying out firmware upgrading based on the firmware upgrading file.
13. The device of claim 12, wherein the out-of-band controller is in data communication with the hard disk via an integrated circuit bus I2C.
14. The apparatus of claim 12 or 13, wherein the hard disk is an NVMe hard disk.
15. The apparatus of any one of claims 12-14, wherein the processor is further in communication with the hard disk; the processor is specifically configured to send the upgrade instruction information to the out-of-band controller when the hard disk failure is detected, so as to complete failure repair of the hard disk.
16. The apparatus according to any one of claims 12-15, wherein the processor is specifically configured to:
under the condition that the hard disk fault is detected, controlling the hard disk to restart;
and sending the upgrade instruction information to the out-of-band controller to finish fault repair of the hard disk under the condition that the hard disk faults are detected again after the hard disk is restarted.
17. The apparatus of any one of claims 12-16, wherein the first instruction carries hard disk reset information;
the hard disk is specifically configured to respond to the first instruction, perform a reset operation based on the hard disk reset information, and perform firmware upgrade based on the firmware upgrade file after the reset operation is completed.
18. The device of claim 17, wherein the reset operation indicated by the hard disk reset information comprises one or more of a non-volatile memory NVM subsystem reset operation, a reset normal operation, a function level reset operation, and/or a controller reset operation.
19. An electronic device comprising a processor, an out-of-band controller, and an internal memory; the internal memory is coupled with the processor and the out-of-band controller respectively; wherein the internal memory has stored therein computer program code comprising computer instructions which, when executed by the processor and/or the out-of-band controller, cause the electronic device to perform the method of any of claims 1-7 and/or claims 8-11.
CN202310139824.6A 2023-02-20 2023-02-20 Control method and computing device for hard disk firmware upgrade Pending CN116339771A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310139824.6A CN116339771A (en) 2023-02-20 2023-02-20 Control method and computing device for hard disk firmware upgrade

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310139824.6A CN116339771A (en) 2023-02-20 2023-02-20 Control method and computing device for hard disk firmware upgrade

Publications (1)

Publication Number Publication Date
CN116339771A true CN116339771A (en) 2023-06-27

Family

ID=86881367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310139824.6A Pending CN116339771A (en) 2023-02-20 2023-02-20 Control method and computing device for hard disk firmware upgrade

Country Status (1)

Country Link
CN (1) CN116339771A (en)

Similar Documents

Publication Publication Date Title
US8386764B2 (en) BIOS architecture
US9665521B2 (en) System and method for providing a processing node with input/output functionality by an I/O complex switch
US10585816B1 (en) System and method for serial communication at a peripheral interface device
US20060161714A1 (en) Method and apparatus for monitoring number of lanes between controller and PCI Express device
CN112825011A (en) Power-on and power-off control method and system of PCIe device
CN111666111A (en) Multi-node storage system and firmware updating method thereof
CN102253845A (en) Server system
CN102081526B (en) Basic input/output system architecture
CN103475514B (en) Node, group system and BIOS without BMC repair and upgrade method
US7962735B2 (en) Servo device auto-booted upon power supply recovery and method thereof
CN115599191B (en) Power-on method and power-on device of intelligent network card
CN116627472A (en) Firmware program upgrading method and server of high-speed peripheral component equipment
US10572435B2 (en) Techniques of accessing serial console of BMC using host serial port
CN116339771A (en) Control method and computing device for hard disk firmware upgrade
US11586504B2 (en) Electronic apparatus and boot method thereof
CN110737480B (en) Serial port driver multiplexing method and device
CN111176902A (en) Device and method for backing up Controller Device firmware by using BMC Flash
US20240037051A1 (en) Information processing device, signal correction method, and computer-readable recording medium storing signal correction program
CN106548311B (en) Inventory management setting system
US9639438B2 (en) Methods and systems of managing an interconnection
CN113608937B (en) Hard disk backboard LED hard disk-free testing device and method
CN116719712B (en) Processor serial port log output method and device, electronic equipment and storage medium
CN114115955B (en) Method, system, terminal and storage medium for upgrading FPGA firmware of server resource box
CN111414323B (en) Redundant bundle disk
CN116302687A (en) Communication recovery method, device, system and readable storage medium

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