CN116339790A - Bmc固件升级方法、装置、设备及存储介质 - Google Patents
Bmc固件升级方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116339790A CN116339790A CN202310597113.3A CN202310597113A CN116339790A CN 116339790 A CN116339790 A CN 116339790A CN 202310597113 A CN202310597113 A CN 202310597113A CN 116339790 A CN116339790 A CN 116339790A
- Authority
- CN
- China
- Prior art keywords
- blade
- bmc
- firmware
- firmware upgrade
- computing
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种BMC固件升级方法、装置、设备及存储介质,该方法包括:基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;控制交换刀片通过IPMB通道向计算刀片发送固件升级文件;控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,以使计算刀片的BMC通过固件升级文件完成BMC固件升级。由于本发明是控制交换刀片通过IPMB通道向计算刀片发送固件升级文件,再控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片完成BMC固件升级。相比于现有技术在现场进行一对一的升级修复,解决了计算刀片使用RT‑thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
Description
技术领域
本发明涉及服务器技术领域,尤其涉及一种BMC固件升级方法、装置、设备及存储介质。
背景技术
RT-Thread是一款主要由中国开源社区主导开发的开源实时操作系统。实时线程操作系统不仅仅是一个单一的实时操作系统内核,它也是一个完整的应用系统,包含了实时、嵌入式系统相关的各个组件:TCP/IP协议栈,libc接口,图形用户界面等。基板管理控制器(Baseboard Management Controller,BMC),其主要是用于执行服务器远端管理的控制器。例如,BMC用于监控系统硬件的温度,电压,风扇、电源等,并在系统硬件出现异常时做相应的调节工作,以保证服务器处于健康的状态。
目前,BMC的固件程序存放在主板上的flash内,对应的升级方式是:用户通过WEB登录BMC,并在登录成功后利用WEB页面上提供的升级界面进行BMC的升级。但是,若用户无法成功登录WEB时,便不能通过WEB页面上提供的升级界面进行BMC的升级,此时,只能派技术人员去现场,采用专业烧写器对拆机取下flash芯片进行BMC固件升级程序的烧写,以完成对BMC的升级。而由技术人员去现场进行BMC升级的方式,不仅操作复杂,且耗费时间。
发明内容
本发明的主要目的在于提供了一种BMC固件升级方法、装置、设备及存储介质,旨在解决现有技术中计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
为实现上述目的,本发明提供了一种BMC固件升级方法,所述方法包括以下步骤:
基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;
控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;
控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。
可选地,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤之前,还包括:
确定固件升级的目标源文件;
通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件。
可选地,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤,包括:
控制所述交换刀片向所述计算刀片发送升级启动指令;
当所述计算刀片接收到所述升级启动指令时,将所述计算刀片的flash格式化,并进行分区划分后,向所述交换刀片发送准备就绪指令,所述flash包括boot分区、app分区、switch分区和updateflag分区;
当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件。
可选地,所述当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤,包括:
当所述交换刀片接收到所述准备就绪指令时,对所述固件升级文件按照预设规则进行拆包,得到拆包后的数据;
依次将所述拆包后的数据通过IPMB通道发送至所述计算刀片。
可选地,所述依次将所述拆包后的数据通过IPMB通道发送至所述计算刀片的步骤之后,还包括:
当所述计算刀片的BMC接收的数据达到预设阈值时,将所述数据写入flash中;
当接收到传输完成指令时,关闭flash写操作。
可选地,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令的步骤,还包括:
根据所述flash中boot分区中的预设程序检查所述switch分区的文件格式是否正确;
若正确,则将所述switch分区中的固件升级程序写入所述app分区,并发送写入完成反馈指令;
根据所述写入完成反馈指令,向所述计算刀片的BMC发送启动指令,以使所述BMC启动并完成所述BMC固件升级。
可选地,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤之后,还包括:
检测所述固件升级文件是否发送成功;
若否,则显示异常原因,并提示需重新发送所述固件升级文件。
此外,为实现上述目的,本发明还提出一种BMC固件升级装置,所述装置包括:
通道建立模块,用于基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;
发送模块,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;
升级模块,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。
此外,为实现上述目的,本发明还提出一种BMC固件升级设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的BMC固件升级程序,所述BMC固件升级程序配置为实现如上文所述的BMC固件升级方法的步骤。
此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有BMC固件升级程序,所述BMC固件升级程序被处理器执行时实现如上文所述的BMC固件升级方法的步骤。
本发明基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。由于本发明是通过基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道,再控制交换刀片通过IPMB通道向计算刀片发送固件升级文件,然后控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片的BMC完成BMC固件升级。相比于现有技术需要在现场进行一对一的升级修复,本发明可远程控制,不用限定在固定在场所内,本发明解决了VPX服务器的计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的BMC固件升级设备的结构示意图;
图2为本发明BMC固件升级方法第一实施例的流程示意图;
图3为本发明BMC固件升级方法的软件整体架构示意图;
图4为本发明BMC固件升级方法第二实施例的流程示意图;
图5为本发明BMC固件升级方法第三实施例的流程示意图;
图6为本发明BMC固件升级方法中计算刀片的flash分区划分示意图;
图7为本发明BMC固件升级装置第一实施例的结构框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,图1是本发明实施例方案涉及的硬件运行环境的BMC固件升级设备的结构示意图;
如图1所示,该BMC固件升级设备可以包括:处理器1001,例如中央处理器(CentralProcessing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,WI-FI)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的结构并不构成对BMC固件升级设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及BMC固件升级程序。
在图1所示的BMC固件升级设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明BMC固件升级设备中的处理器1001、存储器1005可以设置在BMC固件升级设备中,所述BMC固件升级设备通过处理器1001调用存储器1005中存储的BMC固件升级程序,并执行本发明实施例提供的BMC固件升级方法。
本发明实施例提供了一种BMC固件升级方法,参照图2,图2为本发明BMC固件升级方法第一实施例的流程示意图。
本实施例中,所述BMC固件升级方法包括以下步骤:
步骤S10:基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道。
需要说明的是,本实施例的执行主体可以是一种具有信号传输以及程序运行功能的计算服务设备,例如平板电脑、个人电脑等,或者是一种能够实现相同或相似功能的电子设备,例如上述图1所示的BMC固件升级设备等。以下以BMC固件升级设备为例,对本实施例及下述各实施例进行举例说明。
应理解的是,IPMB协议规范定义了用于在智能网络二线制串行总线(Inter-Integrated Circuit,I2C)设备之间传输智能平台管理接口(Intelligent PlatformManagement Interface,IPMI)消息的字节级别传输的规则。
IPMB通道是智能平台管理总线,是先进的电信计算平台(Advanced TelecomComputing Architecture,ATCA)的各FRU背板通讯的两组冗余I2C总线的总称。
需要说明的是,计算刀片是VPX架构中的计算刀片,是具有高性能数据处理的刀片服务器,VPX架构作为VME架构的升级和替代,可以支持高速的互联及串行交换机结构,如SRIO、PCIe等,能够满足最苛刻的计算机模块,数字信号处理模块和交换模块的要求。上述交换刀片是RT-thread的BMC系统下的交换刀片。RT-Thread是一款主要由中国开源社区主导开发的开源实时操作系统。
步骤S20:控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件。
需要说明的是,本发明可以通过客户端系统中的命令行输入文件传输指令通过网口控制交换刀片基于IPMB通道向计算刀片发送固件升级文件;也可以通过客户端中文件上传的方式控制交换刀片基于IPMB通道向计算刀片发送固件升级文件,也可以是其他方式控制交换刀片基于IPMB通道向计算刀片发送固件升级文件,本实施例对此不加以限定。
应理解的是,为了知悉固件升级文件是否发送成功,步骤S20之后,还包括:检测所述固件升级文件是否发送成功;若否,则显示异常原因,并提示需重新发送所述固件升级文件,若是,则客户端提示发送成功。
可以通过网口控制交换刀片基于IPMB通道向计算刀片查询是否成功接收到固件升级文件,以检测固件升级文件是否发送成功,也可以通过其他方式检测固件升级文件是否发送成功,本实施例对此不加以限制。
步骤S30:控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。
可理解的是,要完成上述计算刀片的BMC固件升级,就需要将计算刀片的BMC对应的flash格式化,然后进行分区后,重新写入新的固件升级文件,完成上述BMC固件升级。
应理解的是,新的固件升级文件写入之后,要完成上述BMC固件升级,还需要进行重启。
例如,参考图3,图3为本发明BMC固件升级方法的软件整体架构示意图,通过交换刀片与终端的网口,实现设备管理;交换刀片和计算刀片之间建立2个IPMB的物理通道连通,可以有效防止数据传输过程中的通道冗余。
本实施例基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。由于本发明是通过基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道,再控制交换刀片通过IPMB通道向计算刀片发送固件升级文件,然后控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片的BMC完成BMC固件升级。相比于现有技术需要在现场进行一对一的升级修复,本发明可远程控制,不用限定在固定在场所内,本发明解决了VPX服务器的计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
参考图4,图4为本发明BMC固件升级方法第二实施例的流程示意图。
基于上述第一实施例,在本实施例中,所述步骤S20之前,还包括:
步骤S101:确定固件升级的目标源文件。
可理解的是,在BMC固件升级之前,需要先确定完成固件升级的目标源文件。目标源文件是指带有固件升级程序的二进制文件。可以是.bin格式的文件,可以是.dat格式的文件,也可以是其他格式的文件,本实施例对此不加以限制。
步骤S102:通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件。
需要说明的是,为了保证BMC固件升级时的安全性,可以通过打包工具将所述目标源文件进行加密后,进行压缩打包。
在具体实现中,本发明通过QBootPackager_V1.03制作工具,选择目标源文件,然后选择加密方式和压缩工具并输入对应的产品码后,将上述目标源文件转换为rbl格式的固件升级文件。
本实施例基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;确定固件升级的目标源文件,通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件;然后控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。由于本发明是通过基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道,并通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件,再控制交换刀片通过IPMB通道向计算刀片发送固件升级文件,然后控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片的BMC完成BMC固件升级。相比于现有技术需要在现场进行一对一的升级修复,本发明可远程控制,不用限定在固定在场所内且保证了文件传输过程的安全性,解决了VPX服务器的计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
参考图5,图5为本发明BMC固件升级方法第三实施例的流程示意图。
基于上述实施例,在本实施例中,所述步骤S20,包括:
步骤S201:控制所述交换刀片向所述计算刀片发送升级启动指令;
步骤S202:当所述计算刀片接收到所述升级启动指令时,将所述计算刀片的flash格式化,并进行分区划分后,向所述交换刀片发送准备就绪指令,所述flash包括boot分区、app分区、switch分区和updateflag分区;
例如,参考图6,图6为本发明BMC固件升级方法中计算刀片的flash分区划分示意图,boot分区能更好的管理升级流程,比如:修复、检测各软硬件等,app分区是功能区,switch分区是交换分区,非专属区域,可以灵活使用,其中尾部签名区域用于将switch分区中的固件升级程序写入至app分区成功后进行合法性签名。updateflag分区用于标志BMC固件是否升级成功。
需要说明的是,flash片内容量至少1MB,其中512KB作为switch分区。因此,上述固件升级文件小于512KB。
步骤S203:当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件。
需要说明的是,为了向计算刀片发送固件升级文件,步骤S203,包括:
步骤S2031:当所述交换刀片接收到所述准备就绪指令时,对所述固件升级文件按照预设规则进行拆包,得到拆包后的数据;
步骤S2032:依次将所述拆包后的数据通过IPMB通道发送至所述计算刀片。
在具体实现中,可以通过打开终端的web管理界面,进入文件上传界面,将rbl格式的固件升级文件通过网口上传至交换刀片,交换刀片接收到固件升级文件后,通过IPMB通道向计算刀片发送升级启动指令,计算刀片接收到升级启动指令后,将计算刀片的flash格式化分区后通过IPMB通道向交换刀片发送准备就绪指令,交换刀片接收后向计算刀片发送传输开始指令,然后交换刀片以512字节对固件升级文件进行拆包,然后依次发送至计算刀片直至传输完成。
进一步地,为了接收固件升级文件,步骤S2032之后,还包括:当所述计算刀片的BMC接收的数据达到预设阈值时,将所述数据写入flash中;当接收到传输完成指令时,关闭flash写操作。
需要说明的是,预设阈值可以是4K,可以是8K,可以根据实际情况进行设定,本实施例对此不加以限制。
在具体实现中,计算刀片接收到交换刀片发送的传输开始指令后,每当接收到的数据达到预设阈值时,写一次flash,将接收到的数据写入到flash的switch分区中,直到接收到传输完成指令时,关闭flash写操作。
进一步地,为了保证BMC固件升级成功,步骤S30,还包括:
步骤S301:根据所述flash中boot分区中的预设程序检查所述switch分区的文件格式是否正确;
步骤S302:若正确,则将所述switch分区中的固件升级程序写入所述app分区,并发送写入完成反馈指令;
步骤S303:根据所述写入完成反馈指令,向所述计算刀片的BMC发送启动指令,以使所述BMC启动并完成所述BMC固件升级。
在具体实现中,当计算刀片接收到复位生效指令(即固件升级指令)后,进入boot分区,启动boot分区中的预设程序检查switch分区的文件格式是否是rbl格式,然后比对产品码是否匹配,若是文件格式与产品码都符合要求,则将switch分区中的固件升级程序写入app分区,并校验是否写入成功,根据校验结果发送写入完成反馈指令,若写入完成反馈指令表示写入异常,则显示异常原因,升级失败;若写入完成反馈指令表示写入成功,则在switch分区的尾部签名区域完成合法性签名,并向所述计算刀片的BMC发送启动指令,使BMC启动并完成所述BMC固件升级,然后接收到交换刀片询问是否成功升级的相关指令,若计算刀片的BMC升级成功,则修改updateflag分区的标志位updateflag=0xBB,表示升级成功,若计算刀片的BMC升级失败,则根据updateflag的错误返回。
本实施例基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;确定固件升级的目标源文件,通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件;然后控制所述交换刀片向所述计算刀片发送升级启动指令;当所述计算刀片接收到所述升级启动指令时,将所述计算刀片的flash格式化后进行分区划分,并向所述交换刀片发送准备就绪指令,所述flash包括boot分区、app分区、switch分区和updateflag分区;当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。由于本发明是通过基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道,并通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件,再控制交换刀片通过IPMB通道向计算刀片发送固件升级文件并将计算刀片的flash格式化后进行分区划分,然后控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片的BMC完成BMC固件升级。相比于现有技术需要在现场进行一对一的升级修复,本发明可远程控制,不用限定在固定在场所内且保证了文件传输过程的安全性,通过将计算刀片的flash格式化后进行分区划分,明确了各分区的功能,解决了内存容量不足的问题,解决了VPX服务器的计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
参照图7,图7为本发明BMC固件升级装置第一实施例的结构框图。
如图7所示,本发明实施例提出的BMC固件升级装置包括:通道建立模块701、发送模块702和升级模块703。
所述通道建立模块701,用于基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;
所述发送模块702,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;
所述升级模块703,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级;
所述发送模块702,还用于检测所述固件升级文件是否发送成功;若否,则显示异常原因,并提示需重新发送所述固件升级文件。
本实施例基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。由于本发明是通过基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道,再控制交换刀片通过IPMB通道向计算刀片发送固件升级文件,然后控制交换刀片通过IPMB通道向计算刀片发送固件升级指令,使计算刀片的BMC完成BMC固件升级。相比于现有技术需要在现场进行一对一的升级修复,本发明可远程控制,不用限定在固定在场所内,本发明解决了VPX服务器的计算刀片无法使用RT-thread平台的IPMB总线和交换刀片进行远程加载升级BMC固件的技术问题。
基于本发明上述BMC固件升级装置装置第一实施例,提出本发明BMC固件升级装置装置的第二实施例。
在本实施例中,所述发送模块702,还用于确定固件升级的目标源文件;通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件。
所述发送模块702,还用于控制所述交换刀片向所述计算刀片发送升级启动指令;当所述计算刀片接收到所述升级启动指令时,将所述计算刀片的flash格式化后进行分区划分,并向所述交换刀片发送准备就绪指令,所述flash包括boot分区、app分区、switch分区和updateflag分区;当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件。
本发明BMC固件升级装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种BMC固件升级方法,其特征在于,所述BMC固件升级方法包括以下步骤:
基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;
控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;
控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。
2.如权利要求1所述的方法,其特征在于,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤之前,还包括:
确定固件升级的目标源文件;
通过打包工具将所述目标源文件进行打包,以使所述目标源文件转换为rbl格式的固件升级文件。
3.如权利要求1所述的方法,其特征在于,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤,包括:
控制所述交换刀片向所述计算刀片发送升级启动指令;
当所述计算刀片接收到所述升级启动指令时,将所述计算刀片的flash格式化,并进行分区划分后,向所述交换刀片发送准备就绪指令,所述flash包括boot分区、app分区、switch分区和updateflag分区;
当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件。
4.如权利要求3所述的方法,其特征在于,所述当所述交换刀片接收到所述准备就绪指令时,则通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤,包括:
当所述交换刀片接收到所述准备就绪指令时,对所述固件升级文件按照预设规则进行拆包,得到拆包后的数据;
依次将所述拆包后的数据通过IPMB通道发送至所述计算刀片。
5.如权利要求4所述的方法,其特征在于,所述依次将所述拆包后的数据通过IPMB通道发送至所述计算刀片的步骤之后,还包括:
当所述计算刀片的BMC接收的数据达到预设阈值时,将所述数据写入flash中;
当接收到传输完成指令时,关闭flash写操作。
6.如权利要求5所述的方法,其特征在于,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令的步骤,还包括:
根据所述flash中boot分区中的预设程序检查所述switch分区的文件格式是否正确;
若正确,则将所述switch分区中的固件升级程序写入所述app分区,并发送写入完成反馈指令;
根据所述写入完成反馈指令,向所述计算刀片的BMC发送启动指令,以使所述BMC启动并完成所述BMC固件升级。
7.如权利要求1所述的方法,其特征在于,所述控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件的步骤之后,还包括:
检测所述固件升级文件是否发送成功;
若否,则显示异常原因,并提示需重新发送所述固件升级文件。
8.一种BMC固件升级装置,其特征在于,所述装置包括:
通道建立模块,用于基于IPMB协议在交换刀片与计算刀片之间建立IPMB通道;
发送模块,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级文件;
升级模块,用于控制所述交换刀片通过所述IPMB通道向所述计算刀片发送固件升级指令,以使所述计算刀片的BMC通过所述固件升级文件完成所述BMC固件升级。
9.一种BMC固件升级设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的BMC固件升级程序,所述BMC固件升级程序配置为实现如权利要求1至7中任一项所述的BMC固件升级方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有BMC固件升级程序,所述BMC固件升级程序被处理器执行时实现如权利要求1至7任一项所述的BMC固件升级方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310597113.3A CN116339790B (zh) | 2023-05-25 | 2023-05-25 | Bmc固件升级方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310597113.3A CN116339790B (zh) | 2023-05-25 | 2023-05-25 | Bmc固件升级方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116339790A true CN116339790A (zh) | 2023-06-27 |
CN116339790B CN116339790B (zh) | 2023-09-08 |
Family
ID=86887962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310597113.3A Active CN116339790B (zh) | 2023-05-25 | 2023-05-25 | Bmc固件升级方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116339790B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729287A (zh) * | 2008-10-31 | 2010-06-09 | 大唐移动通信设备有限公司 | Ipmc在线升级方法和装置 |
US20170344360A1 (en) * | 2016-05-31 | 2017-11-30 | American Megatrends, Inc. | Protecting firmware flashing from power operations |
CN110515641A (zh) * | 2019-08-30 | 2019-11-29 | 西安易朴通讯技术有限公司 | 服务器固件的更新方法、装置及系统 |
CN111104147A (zh) * | 2019-12-25 | 2020-05-05 | 浪潮商用机器有限公司 | 一种bmc升级方法、装置、终端及存储介质 |
CN111427602A (zh) * | 2020-04-10 | 2020-07-17 | 扬州万方电子技术有限责任公司 | 一种vpx机箱的智能平台管理控制器在线升级固件的方法 |
CN114201197A (zh) * | 2021-11-30 | 2022-03-18 | 苏州浪潮智能科技有限公司 | 固件升级方法、装置、电子设备及可读存储介质 |
-
2023
- 2023-05-25 CN CN202310597113.3A patent/CN116339790B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729287A (zh) * | 2008-10-31 | 2010-06-09 | 大唐移动通信设备有限公司 | Ipmc在线升级方法和装置 |
US20170344360A1 (en) * | 2016-05-31 | 2017-11-30 | American Megatrends, Inc. | Protecting firmware flashing from power operations |
CN110515641A (zh) * | 2019-08-30 | 2019-11-29 | 西安易朴通讯技术有限公司 | 服务器固件的更新方法、装置及系统 |
CN111104147A (zh) * | 2019-12-25 | 2020-05-05 | 浪潮商用机器有限公司 | 一种bmc升级方法、装置、终端及存储介质 |
CN111427602A (zh) * | 2020-04-10 | 2020-07-17 | 扬州万方电子技术有限责任公司 | 一种vpx机箱的智能平台管理控制器在线升级固件的方法 |
CN114201197A (zh) * | 2021-11-30 | 2022-03-18 | 苏州浪潮智能科技有限公司 | 固件升级方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116339790B (zh) | 2023-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20090249319A1 (en) | Testing method of baseboard management controller | |
CN108509215B (zh) | 一种系统软件的更换方法、装置、终端设备及存储介质 | |
CN107066300B (zh) | 一种存储设备的固件升级方法和存储设备 | |
US11886886B2 (en) | System and method for runtime synchronization and authentication of pre-boot device drivers for a rescue operating system | |
US20180357193A1 (en) | Computing device and operation method | |
CN111104139A (zh) | 一种固件升级方法、装置、设备及存储介质 | |
CN112181459B (zh) | 一种cpld升级优化方法及系统 | |
US20190205109A1 (en) | Computer system, baseboard management controller, and os installation method | |
CN111104147A (zh) | 一种bmc升级方法、装置、终端及存储介质 | |
CN113672270A (zh) | 升级方法,计算机系统和远端升级设备 | |
CN116339790B (zh) | Bmc固件升级方法、装置、设备及存储介质 | |
CN102081526A (zh) | 基本输入/输出系统架构 | |
CN111045710B (zh) | 一种基于IPMI命令的SAS-Expander固件升级的方法、设备及介质 | |
CN111522571B (zh) | 设备升级方法、装置、终端设备及存储介质 | |
CN110134423B (zh) | 固件的更新方法、装置及计算机可读存储介质 | |
CN117289963A (zh) | 在线更新服务器平台服务固件的目标区域的方法及设备 | |
CN111880819B (zh) | 一种存储设备固件升级方法、系统、设备及计算机介质 | |
CN112181444B (zh) | 一种基于1553b总线的dsp多核数据烧写方法 | |
CN113434324A (zh) | 异常信息获取方法、系统、设备及存储介质 | |
CN112947337A (zh) | 组态同步方法、装置及电子设备 | |
CN106445571B (zh) | 主机板及开机的方法 | |
US20240134631A1 (en) | Information handling system with a dynamic basic input/output system configuration map | |
TWI556171B (zh) | 主機板及開機的方法 | |
CN117971741B (zh) | 互连链路的控制方法及装置、存储介质及电子设备 | |
CN111506333B (zh) | 一种双dsp程序在线升级方法及系统 |
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 |