CN115576583A - 基于Capsule Update方式更新retimer固件的方法及装置 - Google Patents
基于Capsule Update方式更新retimer固件的方法及装置 Download PDFInfo
- Publication number
- CN115576583A CN115576583A CN202211218748.XA CN202211218748A CN115576583A CN 115576583 A CN115576583 A CN 115576583A CN 202211218748 A CN202211218748 A CN 202211218748A CN 115576583 A CN115576583 A CN 115576583A
- Authority
- CN
- China
- Prior art keywords
- timer
- firmware
- updating
- update
- bios
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration 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
本申请公开一种基于Capsule Update方式更新retimer固件的方法及装置,其中方法包括:BIOS确定当前安装的retimer固件的版本是否为最新版本;如果确定结果为否,则所述BIOS通知EC更新retimer固件;所述EC收到通知后停止retimer对应的串行传输总线上的所有动作;所述BIOS将retimer固件的更新数据写给所述EC;所述EC将收到的所述更新数据写给PD控制器并发送更新命令;所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新。本申请能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,适用于终端用户。
Description
技术领域
本申请涉及retimer固件技术领域,具体涉及一种基于Capsule Update方式更新retimer固件的方法及装置。
背景技术
目前,retimer固件(重定时器固件)系统下更新用工具进行更新,需要手动执行,执行时间需要15分钟左右,由于更新时间较长,有中断的可能性,容易造成失败,导致一系列问题,产生客诉以及需要后续的维修,主要用于研发和测试,有相应的技术要求和条件限制,对于终端用户可执行性低,故而无法给到终端用户。
因此,有必要提供一种更新retimer固件的方法,能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,适用于终端用户。
发明内容
本申请的目的在于提供一种基于Capsule Update方式更新retimer固件的方法、装置、电子设备及计算机可读存储介质,能够解决上述至少一技术问题。
为实现上述目的,本申请提供了一种基于Capsule Update方式更新retimer固件的方法,包括:
BIOS确定当前安装的retimer固件的版本是否为最新版本;
如果确定结果为否,则所述BIOS通知EC更新retimer固件;
所述EC收到通知后停止retimer对应的串行传输总线上的所有动作;
所述BIOS将retimer固件的更新数据写给所述EC;
所述EC将收到的所述更新数据写给PD控制器并发送更新命令;
所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新。
可选地,在所述BIOS将retimer固件的更新数据写给所述EC之前,还包括:
使所述retimer上电,使能所述串行传输总线访问所述SPI ROM,禁用MPU,使能页写入,以及擦除所述SPI ROM;
在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
禁用页写入以及使能MPU。
可选地,在所述禁用页写入以及使能MPU之前,还包括:
校验retimer固件是否更新正确;
如果校验结果为更新正确,则执行禁用页写入以及使能MPU;
如果校验结果为更新失败,则提示更新失败并结束更新行为。
可选地,在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
确定更新后的retimer固件版本。
可选地,在所述BIOS确定当前安装的retimer固件的版本为最新版本时,结束更新行为。
为实现上述目的,本申请还提供了一种基于Capsule Update方式更新retimer固件的装置,包括:
确定模块,用于BIOS确定当前安装的retimer固件的版本是否为最新版本;
通知模块,用于如果确定结果为否,则所述BIOS通知EC更新retimer固件;
停止模块,用于所述EC收到通知后停止retimer对应的串行传输总线上的所有动作;
写给模块,用于所述BIOS将retimer固件的更新数据写给所述EC;
写给及发送模块,用于所述EC将收到的所述更新数据写给PD控制器并发送更新命令;
更新模块,用于所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新。
可选地,在所述BIOS将retimer固件的更新数据写给所述EC之前,还包括:
使所述retimer上电,使能所述串行传输总线访问所述SPI ROM,禁用MPU,使能页写入,以及擦除所述SPI ROM;
在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
禁用页写入以及使能MPU。
可选地,在所述禁用页写入以及使能MPU之前,还包括:
校验retimer固件是否更新正确,
如果校验结果为更新正确,则执行禁用页写入以及使能MPU;
如果校验结果为更新失败,则提示更新失败并结束更新行为。
为实现上述目的,本申请还提供了一种电子设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行如前所述的更新retimer固件的方法。
为实现上述目的,本申请还提供了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时实现如前所述的更新retimer固件的方法。
本申请还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行如前所述的更新retimer固件的方法。
本申请基于Capsule Update方式更新retimer固件,BIOS在确定retimer固件的版本需要更新后通知EC更新retimer固件,EC收到通知后停止retimer对应的串行传输总线上的所有动作,之后BIOS将retimer固件的更新数据写给所述EC,接着EC将收到的所述更新数据写给PD控制器并发送更新命令,使得PD控制器可以把所述更新数据给所述retimer进行固件更新。本申请能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,进而提高客户满意度,减少客诉,以及更新失败后的售后维修,节省维修人力,而且适用于终端用户。
附图说明
图1是本申请实施例更新retimer固件的方法的流程图。
图2是本申请另一实施例更新retimer固件的方法的流程图。
图3是本申请实施例更新retimer固件的装置的示意框图。
图4是本申请实施例电子设备的示意框图。
具体实施方式
为了详细说明本申请的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
实施例一
请参阅图1,本申请公开了一种基于Capsule Update方式更新retimer固件的方法。
本申请中BIOS(Basic Input Output System;基本输入输出系统)具有CapsuleUpdate(胶囊式更新)功能,在进入系统前的BIOS执行的阶段可以实现对retimer固件的更新。关于BIOS具有Capsule Update功能为本领域技术人员所知悉,这里不再赘述。
该更新retimer固件的方法包括:
101、BIOS确定当前安装的retimer固件的版本是否为最新版本,如果确定结果为否,则进入步骤102。
可以理解的,在BIOS确定当前安装的retimer固件的版本为最新版本时,结束更新行为,即不再往下执行后续的更新步骤。正常情况下,在结束更新行为之后,可正常进入系统。
102、BIOS通知EC(嵌入式控制器)更新retimer固件。
在确定当前安装的retimer固件的版本不是最新版本时,则意味着需要更新retimer固件,此时BIOS会发送命令给EC,以通知EC需要更新retimer固件,使EC执行其需要执行的操作。
103、EC收到通知后停止retimer对应的串行传输总线上的所有动作。
在收到命令后,EC首先会停止retimer对应的串行传输总线上的所有动作,以便于对retimer进行固定更新。
具体地,串行传输总线为I2C总线。
104、BIOS将retimer固件的更新数据写给EC。
105、EC将收到的更新数据写给PD(功率传输)控制器并发送更新命令。
106、PD控制器根据更新命令把更新数据给retimer进行固件更新。
本申请基于Capsule Update方式更新retimer固件的方法,BIOS在确定retimer固件的版本需要更新后通知EC更新retimer固件,EC收到通知后停止retimer对应的串行传输总线上的所有动作,之后BIOS将retimer固件的更新数据写给EC,接着EC将收到的更新数据写给PD控制器并发送更新命令,使得PD控制器可以把更新数据给retimer进行固件更新。本申请能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,进而提高客户满意度,减少客诉,以及更新失败后的售后维修,节省维修人力,而且适用于终端用户。
在一些实施方式中,在BIOS将retimer固件的更新数据写给EC之前,还包括:使retimer上电,使能串行传输总线访问SPI ROM(串行外设接口只读存储器),禁用MPU(微处理器和内存保护单元),使能页写入(pagewrite),以及擦除SPI ROM。通过上述操作,使得能够顺利进行retimer固件更新操作,其中借由给retimer上电等操作可以确保EC给PD的命令在PD发给retimer后,retimer可以写给外挂的SPI rom,进而实现固件更新,通过禁用MPU使得MPU停止运行,可以防止更新被中断,待更新结束后可以再恢复MPU的正常运行。
相应的,在PD控制器根据更新命令把更新数据给retimer进行固件更新之后,还包括:禁用页写入以及使能MPU。
在执行完retimer固件更新后,可正常进入系统。
具体地,在禁用页写入以及使能MPU之前,还包括:
校验retimer固件是否更新正确;
如果校验结果为更新正确,则执行禁用页写入以及使能MPU;
如果校验结果为更新失败,则提示更新失败并结束更新行为,正常情况下,在结束更新行为之后,即可正常进入系统。
校验retimer固件是否更新正确可以通过回读数据的方式进行。
在一些实施方式中,在PD控制器根据更新命令把更新数据给retimer进行固件更新之后,还包括:
确定更新后的retimer固件版本。
实施例二
请参阅图2,本申请公开了一种基于Capsule Update方式更新retimer固件的方法。
该更新retimer固件的方法包括:
201、BIOS确定当前安装的retimer固件的版本是否为最新版本,如果确定结果为否,则进入步骤202,如果确定结果为是,则进入步骤211。
202、BIOS通知EC更新retimer固件。
在确定当前安装的retimer固件的版本不是最新版本时,则意味着需要更新retimer固件,此时BIOS会发送命令给EC,以通知EC需要更新retimer固件,使EC执行其需要执行的操作。
203、EC收到通知后停止retimer对应的串行传输总线上的所有动作。
在收到命令后,EC首先会停止retimer对应的串行传输总线上的所有动作,以便于对retimer进行固定更新。
具体地,串行传输总线为I2C总线。
204、使retimer上电,使能串行传输总线访问SPI ROM,禁用MPU,使能页写入,以及擦除SPI ROM。通过上述操作,使得能够顺利进行后续的retimer固件更新操作,其中借由给retimer上电等操作可以确保EC给PD的命令在PD发给retimer后,retimer可以写给外挂的SPI rom,进而实现固件更新,通过禁用MPU使得MPU停止运行,可以防止更新被中断,待更新结束后可以再恢复MPU的正常运行。
205、BIOS将retimer固件的更新数据写给EC。
206、EC将收到的更新数据写给PD控制器并发送更新命令。
207、PD控制器根据更新命令把更新数据给retimer进行固件更新。
208、校验retimer固件是否更新正确,如果更校验结果为更新正确,则进入步骤209,如果校验结果为更新失败,则进入步骤210;
具体地,校验retimer固件是否更新正确可以通过回读数据的方式进行。
209、禁用页写入以及使能MPU,以及确定更新后的retimer固件版本并进入步骤211。
210、提示更新失败并进入步骤211。
211、进入系统。
本申请基于Capsule Update方式更新retimer固件的方法,BIOS在确定retimer固件的版本需要更新后通知EC更新retimer固件,EC收到通知后停止retimer对应的串行传输总线上的所有动作,之后BIOS将retimer固件的更新数据写给EC,接着EC将收到的更新数据写给PD控制器并发送更新命令,使得PD控制器可以把更新数据给retimer进行固件更新。本申请能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,进而提高客户满意度,减少客诉以及更新失败后的售后维修,节省维修人力,而且适用于终端用户。
实施例三
请参阅图3,本申请公开了一种更新retimer固件的装置,包括:
确定模块301,用于BIOS确定当前安装的retimer固件的版本是否为最新版本;
通知模块302,用于如果确定结果为否,则BIOS通知EC更新retimer固件;
停止模块303,用于EC收到通知后停止retimer对应的串行传输总线上的所有动作;
写给模块304,用于BIOS将retimer固件的更新数据写给EC;
写给及发送模块305,用于EC将收到的更新数据写给PD控制器并发送更新命令;
更新模块306,用于PD控制器根据更新命令把更新数据给retimer进行固件更新。
本申请基于Capsule Update方式更新retimer固件的装置,BIOS在确定retimer固件的版本需要更新后通知EC更新retimer固件,EC收到通知后停止retimer对应的串行传输总线上的所有动作,之后BIOS将retimer固件的更新数据写给EC,接着EC将收到的更新数据写给PD控制器并发送更新命令,使得PD控制器可以把更新数据给retimer进行固件更新。本申请能够简化和自动化retimer固件的更新,有利于降低更新时间和更新失败的概率,进而提高客户满意度,减少客诉以及更新失败后的售后维修,节省维修人力,而且适用于终端用户。
实施例四
请结合图4,本申请公开了一种电子设备,包括:
处理器30;
存储器40,其中存储有处理器30的可执行指令;
其中,处理器30配置为经由执行可执行指令来执行如上述实施例所述的更新retimer固件的方法。
实施例五
本申请公开了一种计算机可读存储介质,其上存储有程序,程序被处理器执行时实现如上述实施例所述的更新retimer固件的方法。
实施例六
本申请实施例公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行上述实施例所述的更新retimer固件的方法。
应当理解,在本申请实施例中,所称处理器可以是中央处理模块(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application SpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上所揭露的仅为本申请的较佳实例而已,不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,均属于本申请所涵盖的范围。
Claims (10)
1.一种基于Capsule Update方式更新retimer固件的方法,其特征在于,包括:
BIOS确定当前安装的retimer固件的版本是否为最新版本;
如果确定结果为否,则所述BIOS通知EC更新retimer固件;
所述EC收到通知后停止retimer对应的串行传输总线上的所有动作;
所述BIOS将retimer固件的更新数据写给所述EC;
所述EC将收到的所述更新数据写给PD控制器并发送更新命令;
所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新。
2.如权利要求1所述的更新retimer固件的方法,其特征在于,
在所述BIOS将retimer固件的更新数据写给所述EC之前,还包括:
使所述retimer上电,使能所述串行传输总线访问所述SPI ROM,禁用MPU,使能页写入,以及擦除所述SPI ROM;
在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
禁用页写入以及使能MPU。
3.如权利要求2所述的更新retimer固件的方法,其特征在于,
在所述禁用页写入以及使能MPU之前,还包括:
校验retimer固件是否更新正确;
如果校验结果为更新正确,则执行禁用页写入以及使能MPU;
如果校验结果为更新失败,则提示更新失败并结束更新行为。
4.如权利要求1所述的更新retimer固件的方法,其特征在于,
在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
确定更新后的retimer固件版本。
5.如权利要求1所述的更新retimer固件的方法,其特征在于,
在所述BIOS确定当前安装的retimer固件的版本为最新版本时,结束更新行为。
6.一种基于Capsule Update方式更新retimer固件的装置,其特征在于,包括:
确定模块,用于BIOS确定当前安装的retimer固件的版本是否为最新版本;
通知模块,用于如果确定结果为否,则所述BIOS通知EC更新retimer固件;
停止模块,用于所述EC收到通知后停止retimer对应的串行传输总线上的所有动作;
写给模块,用于所述BIOS将retimer固件的更新数据写给所述EC;
写给及发送模块,用于所述EC将收到的所述更新数据写给PD控制器并发送更新命令;
更新模块,用于所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新。
7.如权利要求6所述的更新retimer固件的装置,其特征在于,
在所述BIOS将retimer固件的更新数据写给所述EC之前,还包括:
使所述retimer上电,使能所述串行传输总线访问所述SPI ROM,禁用MPU,使能页写入,以及擦除所述SPI ROM;
在所述PD控制器根据所述更新命令把所述更新数据给所述retimer进行固件更新之后,还包括:
禁用页写入以及使能MPU。
8.如权利要求6所述的更新retimer固件的装置,其特征在于,
在所述禁用页写入以及使能MPU之前,还包括:
校验retimer固件是否更新正确,
如果校验结果为更新正确,则执行禁用页写入以及使能MPU;
如果校验结果为更新失败,则提示更新失败并结束更新行为。
9.一种电子设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至5任一项所述的更新retimer固件的方法。
10.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时实现如权利要求1至5任一项所述的更新retimer固件方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211218748.XA CN115576583A (zh) | 2022-09-30 | 2022-09-30 | 基于Capsule Update方式更新retimer固件的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211218748.XA CN115576583A (zh) | 2022-09-30 | 2022-09-30 | 基于Capsule Update方式更新retimer固件的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115576583A true CN115576583A (zh) | 2023-01-06 |
Family
ID=84582272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211218748.XA Pending CN115576583A (zh) | 2022-09-30 | 2022-09-30 | 基于Capsule Update方式更新retimer固件的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115576583A (zh) |
-
2022
- 2022-09-30 CN CN202211218748.XA patent/CN115576583A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2009046284A1 (en) | Firmware image update and management | |
EP2798428B1 (en) | Apparatus and method for managing operation of a mobile device | |
CN111913669B (zh) | Ssd掉电速度提高方法、装置、计算机设备及存储介质 | |
CN114866404A (zh) | 智能网关灾难恢复方法、装置、电子设备以及存储介质 | |
CN112905376B (zh) | 一种错误上报的方法、装置及介质 | |
CN110058973B (zh) | 数据储存装置的测试系统与数据储存装置的测试方法 | |
CN107391174B (zh) | 一种系统在线升级的控制方法及控制装置 | |
CN113641537A (zh) | 一种服务器的启动系统,方法及介质 | |
CN113867807A (zh) | 一种缩短服务器上电时间的方法、装置、设备和存储介质 | |
CN115576583A (zh) | 基于Capsule Update方式更新retimer固件的方法及装置 | |
CN115956236A (zh) | 主机装置及存储器系统 | |
CN115576734A (zh) | 一种多核异构日志存储方法和系统 | |
CN109656768A (zh) | 一种查看cpu ieer的测试方法 | |
CN115658152A (zh) | 固件升级方法、固件、电子设备和计算机可读存储介质 | |
TW202238382A (zh) | 主機板、主機板的外接裝置以及主機板的開機方法 | |
CN112749105B (zh) | 一种降低espi总线开销的方法和设备 | |
CN111427719B (zh) | 一种提升soc系统可靠性和异常重启性能的方法和装置 | |
CN110908725A (zh) | 应用程序启动方法、装置、电子设备及可读介质 | |
CN113650498B (zh) | 一种电动车的上电方法、装置、电动车及存储介质 | |
CN112199103B (zh) | 一种设备升级方法及终端设备 | |
CN113722212B (zh) | 一种cpld升级测试方法、装置、设备及介质 | |
CN114968659A (zh) | 一种高可靠性的惯测组合dsp软件在线升级方法及惯测组合 | |
CN117971272A (zh) | 一种程序升级方法和电子设备 | |
US20210373766A1 (en) | Method facilitating data transmission, apparatus, and storage medium thereof | |
CN116719564A (zh) | 基于存储器分区的设备启动方法、装置及电子设备 |
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 |