A method, apparatus, device, and medium for power firmware burning.
Patent Information
- Application Number
- CN202411846994.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-04-08
Smart Images

Figure CN119781785A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a method, device, equipment and medium for burning power supply firmware. Background Art
[0002] The processor power supply solution in server products will use a multi-phase solution of controller + three-in-one packaged integrated power tube (Driverand MOSFET, DrMOS). The controller needs to write power firmware (Firmware, FW) to control the output state of the entire solution. The power firmware will be set and tested and optimized during the server product development stage. The debugging results will meet the working conditions of the back-end components. However, whether it is the development test or the customer test stage, some parameters may be changed or the firmware may be re-burned. The current methods for burning power firmware include the following:
[0003] Manually burn the chip using the burning tool provided by the chip supplier. However, manual burning consumes manpower and time, and requires the supplier to provide the tool. Only one chip can be burned at a time. This burning method requires the machine to be opened. It can be done in the R&D stage, but not on the client side. The machine needs to be taken off the shelf, and it is also very time-consuming when updating multiple machines.
[0004] Baseboard Management Controller (BMC) burning: This burning method requires the R&D end to develop a burning program and burn based on the program. Although BMC burning can solve some of the problems of manual burning, the R&D personnel put the program in a fixed location, and each program has only one firmware version. Changing parameters requires re-modifying the program, which improves efficiency to a certain extent compared to manual burning, but it will consume development time;
[0005] Offline burning means that the batch burning is completed before the chips are shipped out of the factory. However, offline burning is only applicable to chips before they are shipped out of the factory in batches. They need to be burned in advance and can only burn fixed versions and cannot be updated.
[0006] In summary, the current method of burning power supply firmware has the problems of manual burning consuming manpower and working hours, BMC burning parameter change requires re-modification of the program, and offline burning can only burn fixed versions and cannot be updated. Summary of the invention
[0007] The embodiments of the present application provide a power supply firmware burning method, device, equipment and medium to solve the problem that the existing burning method consumes manpower and working hours and cannot flexibly update the version of the burned firmware.
[0008] In a first aspect, an embodiment of the present application provides a method for burning power supply firmware, which is applied to an electronic device, and the method includes:
[0009] Receive a burning request, and determine that the burning request carries identification information of a target version firmware FW;
[0010] According to the identification information, the target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space in the fixed storage space of the out-of-band system of the baseboard management controller BMC is obtained; wherein the first storage space stores firmware data corresponding to multiple versions FW;
[0011] The power supply firmware is burned based on the target firmware data corresponding to the target version FW.
[0012] Through the above method, the firmware data corresponding to each version of FW is stored in the first storage space in the fixed storage space of the BMC out-of-band system, so that after selecting the target version of FW according to different business needs, the target version of FW stored in the first storage space is obtained for burning, which not only enables the power firmware to be updated flexibly, but also reduces labor costs, and there is no need to re-modify the program, thereby improving the burning efficiency.
[0013] In a possible implementation manner, before receiving the burning request, the method further includes:
[0014] Receive the input first instruction, and modify the sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW;
[0015] Control the new version of firmware data corresponding to the new version of FW to take effect, and obtain the test results under the new version of FW;
[0016] Determine whether the test result meets the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
[0017] Through the above method, during the test process, the original sample firmware data of the sample version FW cached in the second storage space is modified according to the update parameter value carried in the first instruction, and the updated new version FW is obtained. The new version FW is stress tested to determine whether the new version FW can meet the preset requirements, and the new version firmware data and identification information corresponding to the new version FW that meets the preset requirements are written into the first storage space, which is convenient for burning directly based on the various versions of FW stored in the first storage space during the development process, thereby further improving efficiency.
[0018] In a possible implementation manner, after burning the new version firmware data value and identification information corresponding to the new version FW into the first storage space, the method includes:
[0019] The identification information of the new version FW is added to the BMC interface so as to select the target version FW to be burned.
[0020] Through the above method, the identification information of the new version of FW that meets the preset requirements is added to the BMC interface, so that during the development stage, the account can select the target version of FW to be burned in the BMC interface without the need to remove the electronic equipment from the shelf, power off, etc., and without the assistance of external personnel, which greatly improves efficiency and reduces operational difficulty.
[0021] In a possible implementation manner, obtaining the test result under the new version FW includes:
[0022] The first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW are obtained.
[0023] Through the above manner, the first actual CPU power consumption and the first actual CPU frequency within the preset time counted under the new version FW are obtained, so as to obtain the test result under the new version FW.
[0024] In a possible implementation manner, determining whether the test result meets a preset requirement includes:
[0025] It is determined whether the first actual CPU power consumption meets the preset CPU power consumption and whether the first CPU power meets the preset CPU frequency.
[0026] Through the above method, the first actual CPU power consumption and the first actual CPU frequency within the preset time counted under the new version FW are obtained, and it is determined whether the first actual CPU power consumption meets the preset CPU power consumption, and whether the first CPU power meets the preset CPU frequency, so as to determine whether the test result under the new version FW meets the preset requirements.
[0027] In a possible implementation manner, the first storage space is a read-only memory (ROM); and the second storage space is a random access memory (RAM).
[0028] In a second aspect, the embodiment of the present application further provides a power supply firmware burning device, which has the function of implementing the behavior of the device in the method embodiment of the first aspect above, and the beneficial effects can be referred to the description of the first aspect and will not be repeated here. The power supply firmware burning device includes:
[0029] A determination module, configured to receive a burning request and determine whether the burning request carries identification information of a target version firmware FW;
[0030] An acquisition module is used to acquire, according to the identification information, target firmware data corresponding to the target version FW corresponding to the identification information stored in a first storage space in a fixed storage space of a baseboard management controller BMC out-of-band system; wherein the first storage space stores firmware data corresponding to multiple versions FW;
[0031] The burning module is used to burn the power supply firmware based on the target firmware data corresponding to the target version FW.
[0032] In a third aspect, an embodiment of the present application further provides an electronic device, which includes at least a processor and a memory, and the processor is used to implement the steps of the power firmware burning method as described in any one of the above items when executing a computer program stored in the memory.
[0033] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the power supply firmware burning method as described in any one of the above items.
[0034] In a fifth aspect, an embodiment of the present application provides a computer program product, which includes: a computer program code, which, when executed on a computer, enables the computer to execute the steps of the power supply firmware burning method as described in any one of the first aspects. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0036] Figure 1 A schematic diagram of a power supply firmware burning process provided in an embodiment of the present application;
[0037] Figure 2 A schematic diagram of a BMC interface provided in an embodiment of the present application;
[0038] Figure 3 A schematic diagram of a test process for generating a FW version according to an embodiment of the present application;
[0039] Figure 4 A schematic diagram of a power supply firmware burning process provided in an embodiment of the present application;
[0040] Figure 5 A schematic diagram of the structure of a power supply firmware burning device provided in an embodiment of the present application;
[0041] Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0042] In order to make the purpose and implementation method of the present application clearer, the exemplary implementation method of the present application will be clearly and completely described below in conjunction with the drawings in the exemplary embodiments of the present application. Obviously, the described exemplary embodiments are only part of the embodiments of the present application, rather than all the embodiments.
[0043] It should be noted that the brief description of terms in this application is only for the convenience of understanding the embodiments described below, and is not intended to limit the embodiments of this application. Unless otherwise specified, these terms should be understood according to their ordinary and common meanings.
[0044] The terms "first", "second", "third", etc. in the specification and claims of this application and the above drawings are used to distinguish similar or similar objects or entities, and do not necessarily mean to limit a specific order or sequence, unless otherwise noted. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances.
[0045] The terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover but not exclude inclusion, for example, a product or device comprising a list of components is not necessarily limited to all the components expressly listed but may include other components not expressly listed or inherent to such product or device.
[0046] The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and / or software code that is capable of performing the functions associated with that element.
[0047] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.
[0048] For the convenience of explanation, the above description has been made in conjunction with specific embodiments. However, the above exemplary discussion is not intended to be exhaustive or limit the embodiments to the specific forms disclosed above. Based on the above teachings, various modifications and variations can be obtained. The selection and description of the above embodiments are to better explain the principles and practical applications, so that those skilled in the art can better use the embodiments and various different variations of the embodiments suitable for specific use considerations.
[0049] The embodiment of the present application provides a method, device, equipment and medium for burning power firmware, the method comprising: receiving a burning request, determining the identification information of the target version firmware FW carried in the burning request; according to the identification information, obtaining the target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space in the fixed storage space of the baseboard management controller BMC out-of-band system; wherein the first storage space stores firmware data corresponding to multiple versions of FW; based on the target firmware data corresponding to the target version FW, the power firmware is burned. Since the firmware data corresponding to each version FW is stored in the first storage space in the fixed storage space of the BMC out-of-band system in the embodiment of the present application, it is convenient to obtain the target version FW stored in the first storage space for burning after selecting the target version FW according to different business needs, which not only enables the power firmware to be updated flexibly, but also reduces the labor cost, and does not need to re-modify the program, thereby improving the burning efficiency.
[0050] Embodiment 1:
[0051] Figure 1 A schematic diagram of a power firmware burning process provided in an embodiment of the present application, the process includes:
[0052] S101: receiving a burning request, and determining whether the burning request carries identification information of a target version FW.
[0053] The power firmware burning method provided in the embodiment of the present application is applied to an electronic device, which may be a computer (Personal Computer, PC), a server, etc.
[0054] The account logs into the BMC interface of the electronic device through the Internet Protocol (IP) address of the BMC interface. The schematic diagram of the BMC interface is as follows: Figure 2 As shown in the figure, the BMC interface includes a version selection area, and the version selection area displays identification information of multiple FW versions to meet various business needs, such as Figure 2 V01, V02, V03, ..., VXX shown in FIG. And, as Figure 2As shown, the BMC interface also includes a version information display area and a power consumption information display area. The version information display area includes the identification information of the software program (Voltage Regulation Firmware, VR FW) version that is currently in effect in the system and the specific burning time of the FW version; the power consumption information display area displays the real-time frequency and real-time power consumption of the CPU.
[0055] Therefore, in an embodiment of the present application, since the BMC interface includes a version selection area, the version selection area displays identification information of multiple FW versions, and the BMC interface may also include an introduction to the detailed information of each FW version. For example, for any version of FW, the version of FW is a frequency and power consumption balance version, or a high frequency and high power consumption version, or a low frequency and low power consumption version, etc., which corresponds to more business scenario requirements. Therefore, the account can select the corresponding target version FW according to different business scenario requirements and the introduction of the detailed information of each FW version.
[0056] For example, business scenario requirements include but are not limited to: the business is more concerned with power consumption optimization, and has relatively low requirements on the frequency of the central processing unit (CPU), and only needs to meet the main frequency; the business purpose is to maximize the CPU performance, and there are requirements for the main frequency and overclocking frequency, while power consumption has a lower priority, etc.
[0057] After the electronic device recognizes that the account has selected the target version FW in the BMC interface and determines to execute the burning, it determines that the burning request sent by the account is received, and parses the burning request to determine the identification information of the target version FW carried in the burning request. The identification information of the target version FW carried in the burning request is the identification information corresponding to the target version FW selected by the account in the BMC interface.
[0058] S102: According to the identification information, obtain target firmware data corresponding to the target version FW corresponding to the identification information stored in a first storage space in a fixed storage space of a BMC out-of-band system; wherein the first storage space stores firmware data corresponding to multiple versions FW.
[0059] In an embodiment of the present application, the BMC out-of-band system fixed storage space of the electronic device includes a first storage space, which may be a ROM, and the first storage space stores identification information of multiple versions of FW and corresponding firmware data. In a possible implementation, the firmware data of each version of FW is stored in a corresponding data packet and stored in the first storage space in the form of a data packet, that is, the first storage space stores identification information of multiple versions of FW and corresponding data packets, and each data packet stores corresponding firmware data.
[0060] Therefore, after determining the identification information of the target version FW carried in the burning request, the electronic device determines the target FW data packet corresponding to the target version FW stored in the first storage space and the target firmware data stored in the target FW data packet based on the identification information of the target version FW and the identification information of multiple versions FW stored in the first storage space and the corresponding FW data packets.
[0061] S103: Burning the power supply firmware based on the target firmware data corresponding to the target version FW.
[0062] After determining the target firmware data corresponding to the target version FW, the electronic device burns the target firmware data into the register of the power chip based on the target firmware data corresponding to the target version FW, thereby realizing the burning of the power firmware.
[0063] For example, a Universal Serial Bus (USB) to Transistor-Transistor Logic (TTL) serial port burning tool is used to communicate with the power chip, that is, a target version FW data packet containing target firmware data is sent to the power chip, and the non-volatile random access memory (Flash) area where the program of the currently burned version FW is located in the power chip register is determined, the data stored in the Flash area is erased, and the target firmware data (i.e., the program data of the target version FW) contained in the target version FW data packet is written to the Flash area where the program of the currently burned version FW is located, and then the power chip is powered off and restarted to realize the burning of the power firmware.
[0064] In an embodiment of the present application, the firmware data corresponding to each version of FW is stored in the first storage space in the fixed storage space of the BMC out-of-band system, so that after selecting the target version of FW according to different business needs, the target version of FW stored in the first storage space is obtained for burning. This not only enables the power firmware to be updated flexibly, but also reduces labor costs, and there is no need to re-modify the program, thereby improving the burning efficiency.
[0065] Embodiment 2:
[0066] In order to further improve the efficiency, based on the above embodiment, in the embodiment of the present application, before receiving the burning request, the method further includes:
[0067] Receive an input first instruction, and modify the sample firmware data of the current sample FW version cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW;
[0068] Control the new version of firmware data corresponding to the new version of FW to take effect, and obtain the test results under the new version of FW;
[0069] Determine whether the test result meets the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
[0070] In order to generate multiple FW versions before the development stage, and each FW version can meet different needs, in an embodiment of the present application, multiple FW versions are generated during the testing process (i.e., before the development stage), so that the account in the subsequent development stage can select the target version FW for burning based on the multiple generated FW versions.
[0071] In an embodiment of the present application, the electronic device receives a first instruction input by an account, wherein the first instruction is an instruction capable of calling a second storage space in a fixed storage space of a BMC out-of-band system and capable of reading and writing the second storage space; and the first instruction carries a parameter to be updated and a corresponding update parameter value.
[0072] The second storage space is a RAM, and the second storage space caches sample firmware data of the current sample version FW.
[0073] After receiving the first instruction, the electronic device calls the second storage space and reads the sample firmware data of the current sample version FW cached in the second storage space; and according to the parameters to be updated and the corresponding update parameter values carried in the first instruction, modifies the parameter values of the corresponding parameters to be updated in the sample firmware data of the current sample version FW cached in the second storage space to obtain the new version firmware data corresponding to the updated new version FW.
[0074] In order to determine whether the new version FW meets the preset requirements, in an embodiment of the present application, the electronic device tests the new version FW to determine whether the new version FW can meet the preset requirements.
[0075] Specifically, after obtaining the updated new version FW, the new version firmware data corresponding to the new version FW is controlled to take effect, the test results under the new version FW are obtained, and according to the preset requirements stored in the electronic device, it is determined whether the test results meet the preset requirements. It should be noted that the process of controlling the new version firmware data corresponding to the new version FW to take effect is different from the burning process. When controlling the new version firmware data corresponding to the new version FW to take effect, there is no need to power off and restart. The content of the new version FW cached in the second storage space (i.e., the new version firmware data) is directly called, and the new version firmware data is made effective.
[0076] Among them, it can be understood that since the second storage space is RAM, when the electronic device is powered on, the second storage space can perform tasks such as caching or modifying cached data, but once the electronic device is powered off, the cached data in the second storage space will disappear together, but the first storage space is ROM, that is, the data stored in the first storage space can only be read but not changed, and the data stored in the first storage space will not be lost when the electronic device is powered off. Therefore, in order to ensure that the new version of firmware data corresponding to the new version FW that is tested and meets the preset requirements is not lost, in an embodiment of the present application, if it is determined that the test result of the new version FW meets the preset requirements, the new version of firmware data and identification information corresponding to the new version FW that meets the preset requirements are written into the first storage space.
[0077] If it is determined that the test result of the new version FW does not meet the preset requirements, the new version firmware data corresponding to the new version FW is used as the sample firmware data of the current sample version FW, cached in the second storage space, and a prompt message that does not meet the preset requirements is output to prompt the customer to modify the new version firmware data corresponding to the new version FW.
[0078] In addition, in a possible implementation, the second storage space may cache identification information of multiple sample versions of FW and corresponding original sample firmware data, and each sample version of FW corresponds to different test requirements. Moreover, during the test process, the identification information of the above multiple sample versions of FW may be displayed in the BMC interface, so that the account can select the identification information of any sample version of FW to test the sample version.
[0079] Before receiving the input of the first instruction, if it is recognized that the account selects any sample version FW for testing in the BMC interface, a test request input by the account is received, and the test request carries the identification information of the sample version FW to be tested. According to the identification information, the original sample firmware data of the sample version FW to be tested corresponding to the identification information is determined in the second storage space, the original sample firmware data corresponding to the sample version FW to be tested is controlled to take effect, and the test result under the sample version FW to be tested is obtained; since the correspondence between each sample version FW and the test requirement is stored in the electronic device, the test requirement corresponding to the sample version FW to be tested is determined, and it is judged whether the test result meets the test requirement. If so, the original sample firmware data and the corresponding identification information corresponding to the sample version FW to be tested can be written into the first storage space; if not, a prompt message is output to prompt the customer to modify the original sample firmware data corresponding to the sample version FW to be tested.
[0080] If the electronic device recognizes that the account selects any sample version FW in the BMC interface and determines to modify the original sample firmware data, it is determined that the first instruction is received, and the first instruction carries the identification information of the sample version FW to be modified; the second storage space is called to read the original sample firmware data of the sample version FW to be modified corresponding to the identification information cached in the second storage space; according to the parameters to be updated carried in the first instruction and the corresponding update parameter values, the parameter values corresponding to the parameters to be updated in the original sample firmware data of the sample version FW to be modified cached in the second storage space are modified to obtain the new version firmware data corresponding to the updated new version FW.
[0081] For ease of understanding, the process of generating a FW version during the test process in this application is explained below through a specific embodiment. Figure 3 , Figure 3 A schematic diagram of a test process for generating a FW version is provided in an embodiment of the present application. The process includes the following steps:
[0082] Step one, receive the test request input by the account, determine the original sample firmware data of the sample version FW to be tested in the second storage space according to the identification information of the sample version FW to be tested carried in the test request, control the original sample firmware data corresponding to the sample version FW to be tested to take effect, obtain the test results under the sample version FW to be tested, and complete the actual stress testing process of the sample version FW to be tested.
[0083] Step 2: Determine the test requirements corresponding to the sample version FW to be tested based on the correspondence between the saved sample version FW and the test requirements; determine whether the test result of the sample version FW to be tested meets the test requirements. If not, execute step 3; if yes, execute step 6.
[0084] Step three, output prompt information to prompt the account to modify the original sample firmware data corresponding to the sample version FW to be tested; receive the first instruction input by the account, which carries the identification information of the sample version FW to be modified, the parameters to be updated and the corresponding update parameter values.
[0085] Step 4. After receiving the first instruction, call the second storage space, and read the original sample firmware data of the sample version FW to be modified cached in the second storage space according to the identification information of the sample version FW to be modified carried in the first instruction; modify the parameter values corresponding to the parameters to be updated in the original sample firmware data of the sample version FW to be modified cached in the second storage space according to the parameters to be updated carried in the first instruction and the corresponding update parameter values, and obtain the new version firmware data corresponding to the updated new version FW; control the new version firmware data corresponding to the new version FW to take effect, obtain the test results under the new version FW, and judge whether the test results meet the test requirements corresponding to the sample version FW to be modified. If so, execute step 5; if not, execute step 3. Specifically, output a prompt message to prompt the account to modify the firmware data corresponding to the current sample version FW (i.e., the new version firmware data corresponding to the new version FW).
[0086] Step 5: Determine and generate a new version of FW that meets the requirements, and proceed to step 6.
[0087] Step six: write the firmware data and identification information corresponding to any version of FW that meets the test requirements into the first storage space.
[0088] In an embodiment of the present application, during the test process, the original sample firmware data of the sample version FW cached in the second storage space is modified according to the update parameter value carried in the first instruction to obtain an updated new version FW, and the new version FW is stress tested to determine whether the new version FW can meet the preset requirements, and the new version firmware data and identification information corresponding to the new version FW that meets the preset requirements are written into the first storage space, so as to facilitate direct burning based on the various versions of FW stored in the first storage space during the development process, thereby further improving efficiency.
[0089] Embodiment 3:
[0090] In order to reduce the difficulty of operation, based on the above embodiments, in the embodiment of the present application, after the new version firmware data and identification information corresponding to the new version FW are burned into the first storage space, the following steps are included:
[0091] The identification information of the new version FW is added to the BMC interface so as to select the target version FW to be burned.
[0092] In an embodiment of the present application, after determining that the new version firmware data and identification information corresponding to the new version FW that meets the preset requirements are burned into the first storage space, the identification information of the new version FW is added to the BMC interface for display, so that during the development stage, the customer can directly view different versions of FW that meet various requirements in the BMC interface, and select the target version FW to be burned and burn it according to the business scenario requirements.
[0093] In an embodiment of the present application, the identification information of the new version of FW that meets the preset requirements is added to the BMC interface, so that during the development stage, the account can select the target version of FW to be burned in the BMC interface without the need to remove the electronic device from the shelf, turn off the power, or perform other operations, and without the assistance of external personnel, which greatly improves efficiency and reduces operational difficulty.
[0094] Embodiment 4:
[0095] In order to determine the test results under the new version FW, based on the above embodiments, in the embodiment of the present application, obtaining the test results under the new version FW includes:
[0096] The first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW are obtained.
[0097] In an embodiment of the present application, after the new version of firmware data corresponding to the new version of FW takes effect, the power consumption and frequency of the CPU under the new version of FW are monitored in real time, and the first actual CPU power consumption and the first actual CPU frequency within a preset time under the new version of FW are obtained and counted.
[0098] In the embodiment of the present application, the first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW are obtained, thereby obtaining the test result under the new version FW.
[0099] Embodiment 5:
[0100] In order to determine whether the test results under the new version of FW meet the preset requirements, based on the above embodiments, in the embodiment of the present application, the determination of whether the test results meet the preset requirements includes:
[0101] It is determined whether the first actual CPU power consumption meets the preset CPU power consumption and whether the first CPU power meets the preset CPU frequency.
[0102] In an embodiment of the present application, a preset requirement corresponding to the new version FW is determined, and the preset requirement includes a preset CPU power consumption and / or a preset CPU frequency, and the preset CPU power consumption and / or preset CPU frequency included in the preset requirements corresponding to different application scenarios are different.
[0103] After obtaining the first actual CPU power consumption and the first actual CPU frequency within the preset time counted under the new version of FW, determine the preset requirement corresponding to the new version of FW, and determine the preset CPU power consumption and / or preset CPU frequency specified in the preset requirement, and judge whether each first actual CPU power consumption within the preset time meets the requirement of the preset CPU power consumption, and / or whether each first CPU frequency within the preset time meets the requirement of the preset CPU frequency. If both are satisfied, it is determined that the test result under the new version of FW meets the preset requirement.
[0104] For example, for an application scenario with a large business volume and the need for CPU overclocking, with high requirements for overclocking frequency but no requirements for actual power consumption, the preset requirements saved in the electronic device for the application scenario specify a preset frequency, and the preset frequency is the minimum CPU frequency threshold. Therefore, it is determined whether each first CPU frequency reaches the preset minimum CPU frequency threshold within the preset time, and if so, it is determined that the test results under the new version of FW meet the preset requirements.
[0105] Another example is that for an application scenario with a large volume of business, the CPU needs to be overclocked, and there are high requirements for the overclocking frequency while the power consumption is not too high. The preset requirements saved in the electronic device for the application scenario specify the preset power consumption and preset frequency, and the preset power consumption is the maximum CPU power consumption threshold, and the preset frequency is the minimum CPU frequency threshold. In other words, it is determined whether the first actual CPU power consumption within the preset time does not exceed the maximum CPU power consumption threshold, and whether the first CPU frequency within the preset time reaches the minimum CPU frequency threshold. If so, it is determined that the test results under the new version of FW meet the preset requirements.
[0106] In another example, for an application scenario with a small business volume and a high emphasis on power consumption, a preset power consumption is specified in the preset requirements saved in the electronic device for the application scenario, and the preset power consumption is the maximum CPU power consumption threshold. Therefore, it is determined whether each first actual CPU power consumption within the preset time does not exceed the maximum CPU power consumption threshold. If so, it is determined that the test result under the new version of FW meets the preset requirements.
[0107] In an embodiment of the present application, the first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version of FW are obtained, and it is determined whether the first actual CPU power consumption meets the preset CPU power consumption, and whether the first CPU power meets the preset CPU frequency, so as to determine whether the test results under the new version of FW meet the preset requirements.
[0108] Embodiment 6:
[0109] Based on the above embodiments, the present application embodiment provides a schematic diagram of a power supply firmware burning process, such as Figure 4As shown, the process includes:
[0110] S401: During the test process, a first instruction is received as input, and according to the update parameter value carried in the first instruction, sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system is modified to obtain an updated new version FW.
[0111] S402: Control the new version firmware data corresponding to the new version FW to take effect, and obtain the first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW.
[0112] S403: Determine whether the first actual CPU power consumption within the preset time satisfies the preset CPU power consumption, and whether the first CPU power within the preset time satisfies the preset CPU frequency. If so, execute S404; if not, output a prompt message to modify the firmware data of the current sample version FW (i.e., the new version firmware data corresponding to the above-mentioned new version FW), and execute S401.
[0113] S404: writing the new version firmware data and identification information corresponding to the new version FW into the first storage space, and adding the identification information of the new version FW to the BMC interface, so as to select the target version FW to be burned.
[0114] S405: In the development stage, a burning request is received, and it is determined that the burning request carries identification information of the target version firmware FW.
[0115] S406: According to the identification information, obtain target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space.
[0116] S407: Burn the power supply firmware based on the target firmware data corresponding to the target version FW.
[0117] Embodiment 7:
[0118] Based on the same technical concept, on the basis of the above embodiments, the present application provides a power supply firmware burning device, Figure 5 A schematic diagram of the structure of a power supply firmware burning device provided in an embodiment of the present application is shown in FIG. Figure 5 As shown, the device comprises:
[0119] The determination module 501 is used to receive a burning request and determine whether the burning request carries identification information of the target version firmware FW;
[0120] The acquisition module 502 is used to acquire, according to the identification information, target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space in the fixed storage space of the baseboard management controller BMC out-of-band system; wherein the first storage space stores firmware data corresponding to multiple versions FW;
[0121] The burning module 503 is used to burn the power supply firmware based on the target firmware data corresponding to the target version FW.
[0122] In a possible implementation, the determination module 501 is also used to receive a first input instruction before receiving a burning request, and modify the sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW; control the new version firmware data corresponding to the new version FW to take effect, and obtain the test results under the new version FW; determine whether the test results meet the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
[0123] In a possible implementation, the determination module 501 is specifically configured to add the identification information of the new version FW to the BMC interface after burning the new version firmware data and identification information corresponding to the new version FW into the first storage space, so as to select the target version FW to be burned.
[0124] In a possible implementation manner, the determination module 501 is specifically configured to obtain the first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW.
[0125] In a possible implementation, the determination module 501 is specifically configured to determine whether the first actual CPU power consumption meets a preset CPU power consumption, and whether the first CPU power meets a preset CPU frequency.
[0126] In a possible implementation manner, the first storage space is a read-only memory ROM; and the second storage space is a random access memory RAM.
[0127] Embodiment 8:
[0128] Based on the same technical concept, the present application also provides an electronic device, Figure 6 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application is shown in FIG. Figure 6As shown, it includes: a processor 601, a communication interface 602, a memory 603 and a communication bus 604, wherein the processor 601, the communication interface 602, and the memory 603 communicate with each other through the communication bus 604;
[0129] The memory 603 stores a computer program. When the program is executed by the processor 601, the processor 601 performs the following steps:
[0130] Receive a burning request, and determine that the burning request carries identification information of a target version firmware FW;
[0131] According to the identification information, the target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space in the fixed storage space of the out-of-band system of the baseboard management controller BMC is obtained; wherein the first storage space stores firmware data corresponding to multiple versions FW;
[0132] The power supply firmware is burned based on the target firmware data corresponding to the target version FW.
[0133] In a possible implementation, the processor 601 is further used to receive a first input instruction before receiving a burning request, and modify the sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW; control the new version firmware data corresponding to the new version FW to take effect, and obtain the test results under the new version FW; determine whether the test results meet the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
[0134] In a possible implementation, the processor 601 is specifically configured to add the identification information of the new version FW to the BMC interface after burning the new version firmware data and identification information corresponding to the new version FW into the first storage space, so as to select the target version FW to be burned.
[0135] In a possible implementation manner, the processor 601 is specifically configured to obtain a first actual CPU power consumption and a first actual CPU frequency within a preset time period that are counted under the new version FW.
[0136] In a possible implementation, the processor 601 is specifically configured to determine whether the first actual CPU power consumption meets a preset CPU power consumption, and whether the first CPU power meets a preset CPU frequency.
[0137] In a possible implementation manner, the first storage space is a read-only memory ROM; and the second storage space is a random access memory RAM.
[0138] The communication bus mentioned in the above electronic device can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
[0139] The communication interface 602 is used for communication between the above electronic device and other devices.
[0140] The memory may include a random access memory (RAM) or a non-volatile memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located away from the aforementioned processor.
[0141] The above-mentioned processor can be a general-purpose processor, including a central processing unit, a network processor (Network Processor, NP), etc.; it can also be a digital signal processing processor (Digital Signal Processing, DSP), an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc.
[0142] Embodiment 9:
[0143] Based on the same technical concept, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program that can be executed by an electronic device. When the program runs on the electronic device, the electronic device implements any of the above embodiments when executing.
[0144] The above-mentioned computer-readable storage medium can be any available medium or data storage device that can be accessed by the processor in the electronic device, including but not limited to magnetic storage such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc., optical storage such as CD, DVD, BD, HVD, etc., and semiconductor storage such as ROM, EPROM, EEPROM, non-volatile memory (NANDFLASH), solid-state drive (SSD), etc.
[0145] Based on the same technical concept, the embodiment of the present application also provides a computer program product, which includes: computer program code, when the computer program code is run on a computer, the computer executes any of the above embodiments. Since the principle of solving the problem by the above computer program product is similar to the power firmware burning method, the implementation of the above computer program product can refer to the implementation of the method, and the repeated parts will not be repeated.
[0146] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0147] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0148] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0149] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 A process or multiple processes and / or boxes Figure 1The steps of the functions specified in one or more boxes. Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A method for burning power supply firmware, characterized in that: The method comprises: Receive a burning request, and determine that the burning request carries identification information of a target version firmware FW; According to the identification information, the target firmware data corresponding to the target version FW corresponding to the identification information stored in the first storage space in the fixed storage space of the baseboard management controller BMC out-of-band system is obtained; wherein the first storage space stores firmware data corresponding to multiple versions FW; The power supply firmware is burned based on the target firmware data corresponding to the target version FW.
2. The method according to claim 1, characterized in that Before receiving the burning request, the method further includes: Receive the input first instruction, and modify the sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW; Control the new version of firmware data corresponding to the new version of FW to take effect, and obtain the test results under the new version of FW; Determine whether the test result meets the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
3. The method according to claim 2, characterized in that After the new version firmware data and identification information corresponding to the new version FW are burned into the first storage space, the method includes: The identification information of the new version FW is added to the BMC interface so as to select the target version FW to be burned.
4. The method according to claim 2, characterized in that: The obtaining of the test result under the new version FW includes: The first actual CPU power consumption and the first actual CPU frequency within a preset time period counted under the new version FW are obtained.
5. The method according to claim 4, characterized in that The determining whether the test result meets the preset requirement includes: It is determined whether the first actual CPU power consumption meets the preset CPU power consumption and whether the first CPU power meets the preset CPU frequency.
6. The method according to any one of claims 1 to 5, characterized in that: The first storage space is a read-only memory ROM; the second storage space is a random access memory RAM.
7. A power supply firmware burning device, characterized in that: The device comprises: A determination module, configured to receive a burning request and determine whether the burning request carries identification information of a target version firmware FW; An acquisition module is used to acquire, according to the identification information, target firmware data corresponding to the target version FW corresponding to the identification information stored in a first storage space in a fixed storage space of a baseboard management controller BMC out-of-band system; wherein the first storage space stores firmware data corresponding to multiple versions FW; The burning module is used to burn the power supply firmware based on the target firmware data corresponding to the target version FW.
8. The device according to claim 7, characterized in that The determination module is also used to receive an input first instruction before receiving a burning request, and modify the sample firmware data of the current sample version FW cached in the second storage space in the fixed storage space of the BMC out-of-band system according to the update parameter value carried in the first instruction to obtain an updated new version FW; control the new version firmware data corresponding to the new version FW to take effect, and obtain the test results under the new version FW; determine whether the test results meet the preset requirements, and if so, write the new version firmware data and identification information corresponding to the new version FW into the first storage space.
9. An electronic device, characterized in that: The electronic device comprises at least a processor and a memory, and the processor is used to implement the steps of the power supply firmware burning method as described in any one of claims 1 to 6 when executing a computer program stored in the memory.
10. A computer storage medium, characterized in that: It stores a computer program executable by an electronic device. When the program runs on the electronic device, the electronic device executes the steps of the power firmware burning method according to any one of claims 1 to 6.
Citation Information
Cited By
Firmware updating method, electronic equipment and storage medium
CN120428991A