CN111045710B - Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command - Google Patents

Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command Download PDF

Info

Publication number
CN111045710B
CN111045710B CN201911156654.2A CN201911156654A CN111045710B CN 111045710 B CN111045710 B CN 111045710B CN 201911156654 A CN201911156654 A CN 201911156654A CN 111045710 B CN111045710 B CN 111045710B
Authority
CN
China
Prior art keywords
sas
expander
upgrading
expander firmware
firmware
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
CN201911156654.2A
Other languages
Chinese (zh)
Other versions
CN111045710A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201911156654.2A priority Critical patent/CN111045710B/en
Publication of CN111045710A publication Critical patent/CN111045710A/en
Application granted granted Critical
Publication of CN111045710B publication Critical patent/CN111045710B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a method for upgrading SAS-Expander firmware based on IPMI command, which comprises the following steps: determining a mode of SAS-Expander firmware upgrade in response to receiving an IPMI command for calling an SAS-Expander firmware upgrade tool; opening and reading data of the SAS-Expander firmware through an SAS-Expander firmware upgrading tool; applying for a memory space based on the mode, and loading data to the memory space; and upgrading and packaging the data in the memory space, and sending the data package to SAS-Expander firmware for upgrading. The invention also discloses a computer device and a readable storage medium. The method, the equipment and the medium for upgrading the SAS-Expander firmware based on the IPMI command perform read-write operation on the equipment on the I2C bus through the standard IPMI command of the server BMC, and realize the upgrading of the SAS-Expander firmware which is independent of the BMC and supports in-band and out-of-band.

Description

Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command
Technical Field
The present invention relates to the field of firmware upgrade, and more particularly, to a method, device and readable medium for updating SAS-Expander firmware based on IPMI command.
Background
The BMC (Baseboard Management Controller) is a specific Management Controller of the server, and the BMC may automatically monitor the operating state of the server and perform control in time according to the current state, wherein one of the main functions is to manage upgrading of other firmware, such as BIOS (Basic Input Output System) firmware upgrading, PSU (Power Supply Unit, power Supply) firmware upgrading, CPLD (Complex Programmable Logic Device) firmware upgrading, SAS-Expander (Serial Attached SCSI, small Computer System Interface) backplane firmware upgrading, and the like.
Some BMC web pages of the server project have the function of using web to upgrade SAS-Expander firmware, and can be directly upgraded by using the web. However, the BMC web page of some server projects does not use the function of web upgrading SAS-Expander firmware, while the development of web upgrading SAS-Expander functions seriously affects the compatibility of project codes, and the development workload is large, so that the development of a web upgrading SAS-Expander firmware tool independent of BMC is urgently needed.
Disclosure of Invention
In view of this, an object of the embodiments of the present invention is to provide a method, a device, and a medium for updating SAS-Expander firmware based on IPMI commands, where read/write operations of devices on an I2C bus are performed through a standard IPMI command of a server BMC, so as to implement upgrading of SAS-Expander firmware that is independent of the BMC and supports in-band and out-of-band.
Based on the above object, an aspect of the embodiments of the present invention provides a method for updating SAS-Expander firmware based on IPMI command, including the following steps: determining a mode of the SAS-Expander firmware upgrade in response to receiving an IPMI command for calling an SAS-Expander firmware upgrade tool; opening and reading data of the SAS-Expander firmware through an SAS-Expander firmware upgrading tool; applying for a memory space based on the mode, and loading the data to the memory space; and upgrading and packaging the data in the memory space, and sending the data packet to the SAS-Expander firmware for upgrading.
In some embodiments, further comprising: in response to receiving an IPMI command for SAS-Expander firmware upgrade, device access on the I2C bus on which the SAS-Expander resides is stopped.
In some embodiments, further comprising: and responding to the completion of the data packet transmission, and controlling the writing end mark word of the I2C bus where the SAS-Expander firmware is located by the SAS-Expander firmware upgrading tool through an IPMI command.
In some embodiments, further comprising: judging whether to return a correct ending mark word; and in response to not returning the correct end marker word, rewriting the end marker word and judging whether to return the correct end marker word again.
In some embodiments, further comprising: judging whether the number of times of not returning the correct end marker word reaches a threshold value; and in response to the number of times that the correct end marker word is not returned reaching a threshold value, exiting the SAS-Expander firmware upgrading process and recording the returned error code.
In another aspect of the embodiments of the present invention, there is also provided a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions being executable by the processor to perform the steps of: determining a mode of the SAS-Expander firmware upgrade in response to receiving an IPMI command for calling an SAS-Expander firmware upgrade tool; opening and reading data of the SAS-Expander firmware through an SAS-Expander firmware upgrading tool; applying for a memory space based on the mode, and loading the data to the memory space; and upgrading and packaging the data in the memory space, and sending the data packet to the SAS-Expander firmware for upgrading.
In some embodiments, the steps further comprise: in response to receiving an IPMI command for SAS-Expander firmware upgrade, device access on the I2C bus on which the SAS-Expander resides is stopped.
In some embodiments, the steps further comprise: in response to the completion of the data packet transmission, the SAS-Expander firmware upgrading tool controls the I2C bus write-in end flag word where the SAS-Expander firmware is located through an IPMI command.
In some embodiments, the steps further comprise: judging whether to return a correct ending flag word; and in response to not returning the correct end marker word, rewriting the end marker word and judging whether to return the correct end marker word again.
In another aspect of the embodiments of the present invention, a computer-readable storage medium is further provided, in which a computer program for implementing the above method steps is stored when the computer program is executed by a processor.
The invention has the following beneficial technical effects: read-write operation of equipment on the I2C bus is carried out through a standard IPMI command of a server BMC, and upgrading of SAS-Expander firmware which is independent of the BMC and supports in-band and out-of-band is achieved; batch and networking firmware upgrading can be carried out on SAS-expanders of mass servers; error reporting and upgrading results which possibly occur in the SAS-Expander firmware upgrading process are stored in a local log, the SAS-Expander firmware upgrading results can be checked through the local log after the SAS-Expander firmware upgrading is completed, the reasons of upgrading failure can be checked if the SAS-Expander firmware upgrading fails, and therefore server operation and maintenance personnel can quickly and effectively locate the problems.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments or the prior art descriptions will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other embodiments can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic diagram of an embodiment of a method for upgrading SAS-Expander firmware based on IPMI commands provided by the present invention;
FIG. 2 is a flowchart of an embodiment of a method for upgrading SAS-Expander firmware based on IPMI commands provided by the present invention;
fig. 3 is a schematic hardware structure diagram of an embodiment of the method for updating SAS-Expander firmware based on IPMI commands provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two entities with the same name but different names or different parameters, and it should be noted that "first" and "second" are only used for convenience of expression and should not be construed as a limitation to the embodiments of the present invention, and no description is given in the following embodiments.
In view of the above objects, a first aspect of the embodiments of the present invention proposes an embodiment of a method for updating SAS-Expander firmware based on IPMI commands. Fig. 1 is a schematic diagram illustrating an embodiment of a method for updating SAS-Expander firmware based on IPMI command according to the present invention. As shown in fig. 1, the embodiment of the present invention includes the following steps:
s1, determining a SAS-Expander firmware upgrading mode in response to receiving an IPMI command for calling an SAS-Expander firmware upgrading tool;
s2, opening and reading data of the SAS-Expander firmware through the SAS-Expander firmware upgrading tool;
s3, applying for a memory space based on the mode, and loading data into the memory space; and
and S4, upgrading and packaging the data in the memory space, and sending the data packet to SAS-Expander firmware for upgrading.
IPMI (Intelligent Platform Management Interface) is based on Management
Figure BDA0002284984700000041
An industrial standard adopted by peripheral equipment used in an enterprise system with a structure is that a user can monitor physical health characteristics of a server, such as temperature, voltage, fan working state, power state and the like, by using IPMI, and can perform read-write operation on equipment on an I2C bus on a mainboard by sending an IPMI command.
In some embodiments, further comprising: in response to receiving an IPMI command for SAS-Expander firmware upgrade, device access on the I2C bus on which the SAS-Expander resides is stopped. Because many other devices are accessed by the BMC on the I2C bus where the SAS-Expander is located, an IPMI command for preparing an I2C channel before responding to the SAS-Expander firmware upgrade needs to be developed in the BMC, after the BMC receives the SAS-Expander firmware upgrade preparation command, the BMC stops accessing the devices on the I2C bus where the SAS-Expander is located, and the I2C bus access control right is given to the SAS-Expander firmware upgrade for use.
In response to receiving an IPMI command that invokes the SAS-Expander firmware upgrade tool, a mode of SAS-Expander firmware upgrade is determined. The embodiment of the invention supports two upgrading modes of in-band and out-of-band, judges the mode for upgrading the SAS-Expander firmware according to the command input when the SAS-Expander firmware upgrading tool is called under the Linux system, and judges whether the upgrading command is correct and effective according to the input parameter. If the upgrading command is invalid or wrong, saving the input command into a local log file, wherein the local log file can be, for example, expander _ update.log, stopping the upgrading process and returning an error code; if the upgrading command is valid and correct, the SAS-Expander firmware upgrading process can be started.
The SAS-Expander firmware upgrade tool opens and reads data of the SAS-Expander firmware. The SAS-Expander firmware upgrading tool opens and reads the SAS-Expander firmware file, if the opening fails, information returned by the failure is stored in a local log file Expander _ update.
And applying for a memory space based on the mode, and loading the data to the memory space. And loading the firmware file data into the memory space applied by the upgrading tool for upgrading data packaging. After the firmware file is successfully loaded to the memory space applied by the SAS-Expander firmware upgrading tool, packaging data in the memory space according to an SAS-Expander firmware upgrading protocol, then sending an upgrading state query command to the SAS-Expander to query whether the current state of the SAS-Expander is idle or upgrading, exiting if the current state of the SAS-Expander is upgrading, entering an upgrading mode if the current state of the SAS-Expander is idle, and recording the description of the event starting to be upgraded and the starting time into a local log file Expander _ update.
And upgrading and packaging the data in the memory space, and sending the data package to SAS-Expander firmware for upgrading. And after the upgrading tool executes an upgrading mode, sending a data packet to the SAS-Expander according to a format specified by an upgrading protocol, reading out the current upgrading state and progress, storing the returned state into a local log file Expander-update log file, and printing and outputting the current upgrading progress to a screen for a server operation and maintenance worker to observe the current upgrading progress and condition. If an upgrade error occurs to cause upgrade failure, recording an upgrade state returned when the upgrade fails so as to analyze the reason of the upgrade failure, then exiting the current upgrade process, and restarting to attempt to upgrade the firmware, wherein an attempt threshold value can be set, for example, 5 times, if 5 times of failures are all failures, the operation of the whole upgrade firmware is exited, an error code returned when the failures are recorded, and if no error exists, the subsequent upgrade process is continued.
In some embodiments, further comprising: and responding to the completion of the data packet transmission, and controlling the writing end mark word of the I2C bus where the SAS-Expander firmware is located by the SAS-Expander firmware upgrading tool through an IPMI command. When the firmware upgrading process is executed to the end stage, the SAS-Expander firmware upgrading tool writes an end mark word through an IPMI command operation I2C bus, and reads the end state of the SAS-Expander firmware upgrading.
In some embodiments, further comprising: judging whether to return a correct ending mark word; and in response to not returning the correct end marker word, rewriting the end marker word and judging whether to return the correct end marker word again. If the correct end marker word is returned, the upgrade is successful, the description of the upgrade successful event is recorded and saved in the local log file, if the return is failed, the upgrade end marker word is retried to be written, the end state is read,
in some embodiments, further comprising: judging whether the frequency of not returning the correct end marker word reaches a threshold value; and in response to the number of times that the correct end marker word is not returned reaching a threshold value, exiting the SAS-Expander firmware upgrading process and recording the returned error code. A threshold value, for example 5, may be set, and if 5 times are failures, the whole operation of upgrading the firmware is exited, and the error code returned when the failures occur is recorded. If no error exists, the SAS-Expander is subjected to the final reset operation after the specified delay, the upgraded firmware is enabled to take effect, and the event description successfully upgraded is stored in a local log file for operation and maintenance personnel to check.
The embodiment of the invention provides an IPMI command-based SAS-Expander upgrading method independent of BMC, which can be widely applied to SAS-Expander firmware upgrading of a server, has the functions of recording key information in an upgrading process and storing log files, meets the requirements of batch and networking operation of server operation and maintenance personnel when upgrading SAS-Expander firmware, can quickly and effectively find problems and locate the problems, increases the accuracy of fault diagnosis of a server management system, and is convenient for the operation and maintenance personnel to upgrade management and fault location of the SAS-Expander firmware of the server.
FIG. 2 is a flow chart illustrating an embodiment of a method for upgrading SAS-Expander firmware based on IPMI command provided by the present invention. As shown in fig. 2, beginning at block 101 and proceeding to block 102, a determination is made as to whether an IPMI command to invoke the SAS-Expander firmware upgrade tool is received, and if not, returning to block 102, and if so, proceeding to block 103, determining a mode of SAS-Expander firmware upgrade; proceeding to block 104, the SAS-Expander firmware upgrade tool opens and reads data from the SAS-Expander firmware; then, proceeding to block 105, applying for a memory space based on the mode, and loading the data into the memory space; proceeding to block 106, the data in the memory space is upgraded and packaged, and the data package is sent to the SAS-Expander firmware for upgrade, and proceeding to block 107 is complete.
It should be particularly noted that, the steps in the above-mentioned embodiments of the method for updating SAS-Expander firmware based on IPMI command may be mutually intersected, replaced, added, or deleted, so that these reasonable permutation and combination transformations should also belong to the scope of the present invention, and should not limit the scope of the present invention to the embodiments.
In view of the above object, a second aspect of an embodiment of the present invention provides a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions being executable by the processor to perform the steps of: s1, determining a mode of SAS-Expander firmware upgrading in response to receiving an IPMI command for calling a SAS-Expander firmware upgrading tool; s2, the SAS-Expander firmware upgrading tool is opened and reads data of the SAS-Expander firmware; s3, applying for a memory space based on the mode, and loading data into the memory space; and S4, upgrading and packaging the data in the memory space, and sending the data packet to SAS-Expander firmware for upgrading.
In some embodiments, further comprising: in response to receiving an IPMI command for SAS-Expander firmware upgrade, device access on the I2C bus on which the SAS-Expander resides is stopped.
In some embodiments, further comprising: and responding to the completion of the data packet transmission, and controlling the writing end mark word of the I2C bus where the SAS-Expander firmware is located by the SAS-Expander firmware upgrading tool through an IPMI command.
In some embodiments, further comprising: judging whether to return a correct ending flag word; and in response to not returning the correct end marker word, rewriting the end marker word and judging whether to return the correct end marker word again.
In some embodiments, further comprising: judging whether the number of times of not returning the correct end marker word reaches a threshold value; and in response to the number of times that the correct end marker word is not returned reaching a threshold value, exiting the SAS-Expander firmware upgrading process and recording the returned error code.
Fig. 3 is a schematic hardware structure diagram of an embodiment of the method for updating the SAS-Expander firmware based on the IPMI command according to the present invention.
Taking the apparatus shown in fig. 3 as an example, the apparatus includes a processor 301 and a memory 302, and may further include: an input device 303 and an output device 304.
The processor 301, the memory 302, the input device 303 and the output device 304 may be connected by a bus or other means, and the bus connection is taken as an example in fig. 3.
Memory 302, which may be a non-volatile computer-readable storage medium, may be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as program instructions/modules corresponding to the methods for IPMI command-based SAS-Expander firmware upgrade in the embodiments of the present application. The processor 301 executes various functional applications of the server and data processing, i.e., implementing the method of the above-described method embodiment for SAS-Expander firmware upgrade based on IPMI command, by executing nonvolatile software programs, instructions, and modules stored in the memory 302.
The memory 302 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created according to the use of the method of the SAS-Expander firmware upgrade based on the IPMI command, or the like. Further, the memory 302 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 302 may optionally include memory located remotely from processor 301, which may be connected to local modules over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The input device 303 may receive information such as a user name and a password that are input. The output means 304 may comprise a display device such as a display screen.
Program instructions/modules corresponding to one or more methods for upgrading firmware of SAS-Expander based on IPMI commands are stored in the memory 302, and when executed by the processor 301, perform the method for upgrading firmware of SAS-Expander based on IPMI commands in any of the above-described method embodiments.
Any embodiment of a computer device implementing the above-described method for updating SAS-Expander firmware based on IPMI commands may achieve the same or similar effects as any of the preceding method embodiments corresponding thereto.
The invention also provides a computer readable storage medium storing a computer program which, when executed by a processor, performs the method as above.
Finally, it should be noted that, as one of ordinary skill in the art can appreciate that all or part of the processes of the methods of the above embodiments can be implemented by instructing relevant hardware through a computer program, a program of the method for updating SAS-Expander firmware based on IPMI commands can be stored in a computer readable storage medium, and the program can include the processes of the embodiments of the methods as described above when executed. The storage medium of the program may be a magnetic disk, an optical disk, a Read Only Memory (ROM), a Random Access Memory (RAM), or the like. The embodiments of the computer program may achieve the same or similar effects as any of the above-described method embodiments.
Furthermore, the methods disclosed according to embodiments of the present invention may also be implemented as a computer program executed by a processor, which may be stored in a computer-readable storage medium. Which when executed by a processor performs the above-described functions defined in the methods disclosed in embodiments of the invention.
Further, the above method steps and system elements may also be implemented using a controller and a computer readable storage medium for storing a computer program for causing the controller to implement the functions of the above steps or elements.
Further, it should be appreciated that the computer-readable storage media (e.g., memory) herein can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example, and not limitation, nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM), which can act as external cache memory. By way of example and not limitation, RAM may be available in a variety of forms such as synchronous RAM (DRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The storage devices of the disclosed aspects are intended to comprise, without being limited to, these and other suitable types of memory.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as software or hardware depends upon the particular application and design constraints imposed on the overall system. 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 disclosure.
The various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein may be implemented or performed with the following components designed to perform the functions herein: a general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination of these components. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP, and/or any other such configuration.
The steps of a method or algorithm described in connection with the disclosure herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
In one or more exemplary designs, the functions may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable 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. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a general-purpose or special-purpose computer, or a general-purpose or special-purpose processor. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital Subscriber Line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes Compact Disc (CD), laser disc, optical disc, digital Versatile Disc (DVD), floppy disk, blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The numbers of the embodiments disclosed in the embodiments of the present invention are merely for description, and do not represent the merits of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, and the program may be stored in a computer-readable storage medium, where the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of the embodiments of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.

Claims (6)

1. A method for upgrading SAS-Expander firmware based on IPMI commands is characterized by comprising the following steps:
determining a mode of the SAS-Expander firmware upgrade in response to receiving an IPMI command for calling an SAS-Expander firmware upgrade tool;
opening and reading data of the SAS-Expander firmware through an SAS-Expander firmware upgrading tool;
applying for a memory space based on the mode, and loading the data to the memory space; and
upgrading and packaging the data in the memory space, sending the data package to the SAS-Expander firmware for upgrading,
the method further comprises the following steps: stopping accessing the equipment on the I2C bus where the SAS-Expander is located in response to receiving an IPMI command of the SAS-Expander firmware upgrade; and responding to the completion of the data packet transmission, and controlling the writing end mark word of the I2C bus where the SAS-Expander firmware is located by the SAS-Expander firmware upgrading tool through an IPMI command.
2. The method of claim 1, further comprising:
judging whether to return a correct ending mark word; and
in response to not returning the correct end marker word, the end marker word is rewritten and it is determined again whether the correct end marker word is returned.
3. The method of claim 2, further comprising:
judging whether the frequency of not returning the correct end marker word reaches a threshold value;
and in response to the number of times that the correct end marker word is not returned reaching a threshold value, exiting the SAS-Expander firmware upgrading process and recording the returned error code.
4. A computer device, comprising:
at least one processor; and
a memory storing computer instructions executable on the processor, the instructions when executed by the processor implementing the steps of:
determining a mode of the SAS-Expander firmware upgrade in response to receiving an IPMI command for calling an SAS-Expander firmware upgrade tool;
opening and reading data of the SAS-Expander firmware through an SAS-Expander firmware upgrading tool;
applying for a memory space based on the mode, and loading the data to the memory space; and
upgrading and packaging the data in the memory space, sending the data package to the SAS-Expander firmware for upgrading,
the method also comprises the following steps: stopping accessing the equipment on the I2C bus where the SAS-Expander is located in response to receiving an IPMI command of the SAS-Expander firmware upgrade; and responding to the completion of the data packet transmission, and controlling the writing end mark word of the I2C bus where the SAS-Expander firmware is located by the SAS-Expander firmware upgrading tool through an IPMI command.
5. The computer device of claim 4, wherein the steps further comprise:
judging whether to return a correct ending flag word; and
in response to not returning the correct end marker word, the end marker word is rewritten and it is determined again whether the correct end marker word is returned.
6. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 3.
CN201911156654.2A 2019-11-22 2019-11-22 Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command Active CN111045710B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911156654.2A CN111045710B (en) 2019-11-22 2019-11-22 Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911156654.2A CN111045710B (en) 2019-11-22 2019-11-22 Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command

Publications (2)

Publication Number Publication Date
CN111045710A CN111045710A (en) 2020-04-21
CN111045710B true CN111045710B (en) 2022-11-22

Family

ID=70233156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911156654.2A Active CN111045710B (en) 2019-11-22 2019-11-22 Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command

Country Status (1)

Country Link
CN (1) CN111045710B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181468A (en) * 2020-09-21 2021-01-05 苏州浪潮智能科技有限公司 CPLD updating method, server and computer readable storage medium
CN116880868B (en) * 2023-06-07 2024-06-04 珠海妙存科技有限公司 UFS-based card opening method, system, device and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291497A (en) * 2017-06-08 2017-10-24 Tcl通力电子(惠州)有限公司 Multi-firmware upgrading method and system and readable storage medium
CN107608695A (en) * 2017-09-21 2018-01-19 曙光信息产业(北京)有限公司 Hard disk firmware upgrade method, device and server
CN107783776A (en) * 2016-08-26 2018-03-09 阿里巴巴集团控股有限公司 The processing method and processing device of firmware upgrade bag, electronic equipment
CN109842523A (en) * 2019-02-14 2019-06-04 上海华测导航技术股份有限公司 A kind of firmware upgrade method, device, equipment and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107783776A (en) * 2016-08-26 2018-03-09 阿里巴巴集团控股有限公司 The processing method and processing device of firmware upgrade bag, electronic equipment
CN107291497A (en) * 2017-06-08 2017-10-24 Tcl通力电子(惠州)有限公司 Multi-firmware upgrading method and system and readable storage medium
CN107608695A (en) * 2017-09-21 2018-01-19 曙光信息产业(北京)有限公司 Hard disk firmware upgrade method, device and server
CN109842523A (en) * 2019-02-14 2019-06-04 上海华测导航技术股份有限公司 A kind of firmware upgrade method, device, equipment and storage medium

Also Published As

Publication number Publication date
CN111045710A (en) 2020-04-21

Similar Documents

Publication Publication Date Title
EP3816783B1 (en) Method and device for data migration
CN110968477B (en) Method, device and medium for acquiring backup BMC version information
EP3690653A1 (en) Bios recovery and update
CN111045710B (en) Method, equipment and medium for upgrading SAS-Expander firmware based on IPMI command
CN111090545B (en) Method, device and medium for recovering failed CPLD
KR20170040734A (en) Electronic system with update control mechanism and method of operation thereof
CN111124722B (en) Method, equipment and medium for isolating fault memory
CN111142896A (en) Method and device for upgrading firmware of storage device and readable medium
CN111198703A (en) Version upgrading method, system, equipment and medium
CN110764799A (en) Method, equipment and medium for optimizing and remotely updating FPGA (field programmable Gate array) accelerator card
CN112527345A (en) Method, device and equipment for online upgrading of CPLD (complex programmable logic device) of expansion cabinet and readable medium
CN111856257B (en) Method, system, equipment and medium for detecting and protecting CPLD (complex programmable logic device) firmware
CN116578327B (en) Program updating method and device, electronic equipment and storage medium
CN111309553B (en) Method, system, equipment and medium for monitoring storage Jbod
CN110399264B (en) FRU information management method, device and equipment
CN111104673A (en) System data monitoring and protecting method and device
EP4296860A1 (en) Method for running startup program of electronic device, and electronic device
CN111124597B (en) Method, equipment and medium for positioning fault item in Vtermination test
CN112328287B (en) Method, device, equipment and storage medium for updating embedded equipment system
CN110781042B (en) Method, device and medium for detecting UBM (Universal boot Module) backboard based on BMC (baseboard management controller)
WO2019056545A1 (en) Test machine automation management method and apparatus, device, and storage medium
CN110427199B (en) Method, equipment and readable medium for upgrading BMC and BIOS in matching manner
CN111193818A (en) Method, system, equipment and medium for obtaining IP address
US9584131B2 (en) Programmable device, information processing device, and control method for processing circuit of programmable device
CN111125678A (en) Method, device and medium for managing Option ROM loading

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