CN110780943A - 一种从设备统一固件的方法及*** - Google Patents

一种从设备统一固件的方法及*** Download PDF

Info

Publication number
CN110780943A
CN110780943A CN201910997605.5A CN201910997605A CN110780943A CN 110780943 A CN110780943 A CN 110780943A CN 201910997605 A CN201910997605 A CN 201910997605A CN 110780943 A CN110780943 A CN 110780943A
Authority
CN
China
Prior art keywords
slave
firmware
master
master device
slave device
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
Application number
CN201910997605.5A
Other languages
English (en)
Other versions
CN110780943B (zh
Inventor
欧阳志忠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen Yealink Network Technology Co Ltd
Original Assignee
Xiamen Yealink Network 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 Xiamen Yealink Network Technology Co Ltd filed Critical Xiamen Yealink Network Technology Co Ltd
Priority to CN201910997605.5A priority Critical patent/CN110780943B/zh
Publication of CN110780943A publication Critical patent/CN110780943A/zh
Application granted granted Critical
Publication of CN110780943B publication Critical patent/CN110780943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

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

Abstract

本发明公开了一种从设备统一固件的方法及***,属于统一固件领域。针对现有技术中存在的从设备上的代码维护困难,配件与从设备固件会有冲突的问题,本方案包括以下步骤:S1、从设备在uboot下读取自己的环境变量,并与保存在uboot程序中的机型列表进行对比,如果环境变量不是机型列表中的值或环境变量的值为空,则进入步骤S2,如果环境变量是机型列表中的值,则进入步骤S3;S2、从设备向主设备下载主设备信息文件,返回步骤S1;S3、从设备向主设备下载并启动对应的固件。本发明可以实现统一从设备的固件,使一种从设备可以适用全部主设备,节约从设备的存储空间。

Description

一种从设备统一固件的方法及***
技术领域
本发明涉及统一固件领域,更具体地说,涉及一种从设备统一固件的方法及***。
背景技术
为了获得更好的图像、视频、音频质量和性能体验,新一代的视频会议***采用主从机架构,其中主设备负责***功能,而从设备负责专业的图像、音频处理。而随着视频会议***产品线的扩大,主设备会升级到性能更加强大的SOC,但从设备由于处理的业务单一,并且优化做得十分深入,所以从设备一般不会升级SOC。这样就导致各种主设备SOC与同一从设备SOC的组合产生,这样虽然主要业务一样,但与主设备的交互、硬件接口也会有所变动,由此引入从设备的固件在不同主设备上都不一样。
由于从设备的固件在不同主设备都不相同,因此从设备上的代码维护困难,在不同的主设备平台上,要编译多份从设备固件,对于把从SOC做成配件的设备来说,这样会有配件与从设备固件冲突的问题,导致无法引导。
中国专利申请,申请号CN201410849954.X,公开日2015年4月8日,公开了一种通过有线网络对嵌入式设备进行升级的方法,包括在升级前,将需要升级的嵌入式设备通过有线网络连接主机,所述主机安装有升级工具,当需要升级的设备boot开机时,其首先检测是否连接有线网络,如果连接有线网络,则从升级工具接收升级数据,设备中的Uboot网络升级程序将升级数据中的版本号与设备中现有版本号进行对比,如果升级数据中的版本号为新版本,则将升级数据写入到设备的flash存储器,并对设备进行升级。本发明与该专利不同之处在于,该专利是将从设备与主设备的版本进行对比,对比的是从设备的版本号,如果不同则对从设备进行升级,而本发明是为了统一从设备的固件,对比的是主设备的型号和版本号,从设备向主设备下载对应主设备型号的固件使用即可。
中国专利申请,申请号CN201210149038.6,公开日2015年4月8日,公开了一种ATCA***及其管理固件版本的方法,该方法包括:单板控制器向机框管理器请求固件版本;所述机框管理器查询所述单板控制器需要的固件版本的版本号,查询到所述固件版本的版本号时,从版本存储服务器获取对应所述版本号的单板控制器的固件版本,并将所述固件版本发送给所述单板控制器;所述单板控制器启动所述固件版本。该发明的不足之处在于,机框管理器中需要驻留一个查询版本号的服务程序,占用资源,并且查询版本号时需要借助服务器端,成本高,而本发明无需额外实现查询版本号的客户端和服务端程序,只需复用tftp功能即可,节约***资源与从设备的存储空间。
发明内容
1.要解决的技术问题
针对现有技术中存在的从设备上的代码维护困难,配件与从设备固件会有冲突的问题,本发明提供了一种从设备统一固件的方法及***,它可以实现统一从设备的固件,使一种从设备可以适用全部主设备,节约从设备的存储空间。
2.技术方案
本发明的目的通过以下技术方案实现。
一种从设备统一固件的方法,包括以下步骤:
S1、从设备读取环境变量的值,并与从设备中的机型列表进行对比,如果环境变量不是机型列表中的值或环境变量的值为空,则进入步骤S2,如果环境变量是机型列表中的值,则进入步骤S3;
S2、从设备通过文件传输协议向主设备下载主设备信息文件,返回步骤S1;
S3、从设备向主设备下载并启动符合主设备版本的固件。
进一步的,步骤S2还包括以下步骤,为从设备的环境变量被破坏提供容错处理与恢复方法:
S21、从设备通过文件传输协议向主设备下载主设备信息文件;
S22、从设备读取主设备信息文件中的主设备机型信息;
S23、从设备将主设备信息文件传输给从设备的环境变量与操作***内核。
更进一步的,步骤S3还包括以下步骤:
S31、从设备识别环境变量中对应主设备的硬件和软件版本;
S32、从设备根据主设备的硬件和软件版本通过文件传输协议向主设备下载对应的固件;
S33、从设备的操作***启动固件。
一种从设备统一固件***,包括主设备和从设备,主设备和从设备通过文件传输协议进行数据传输,主设备包括主设备信息文件和从设备的固件;从设备包括环境变量、uboot启动程序、操作***和机型列表。
进一步的,文件传输协议为tftp协议,tftp协议简单可靠,便于复用。
更进一步的,主设备的主设备信息文件保存有主设备的硬件与软件版本号,主设备信息文件使从设备能够识别主设备的型号。
更进一步的,从设备的环境变量用于存放主设备的硬件和软件版本号,在从设备初次运行时为空,使从设备可以兼容多个版本的主设备。
更进一步的,从设备的机型列表编写在uboot程序中,由于从设备在设计时机型就固定不变,因此写在程序中能方便、快速地获取机型信息,在uboot中用文件支持相对繁琐和缓慢,从设备的机型列表为从设备所能适配的主设备的机型,不同型号的从设备所适配的主设备机型不同,从设备所保存的机型列表也不同。
更进一步的,从设备每次关机自动清除固件信息,从设备中不保存固件便于从设备的升级,同时节约闪存成本。
更进一步的,从设备的操作***内核中设置有与若干种主设备机型相对应的固件启动路径,使操作***可以根据匹配的主设备信息启动对应的固件。
3.有益效果
相比于现有技术,本发明的优点在于:
(1)主设备生成保存有硬件和软件版本号的文件,从设备在加载固件之前先去下载该文件,这样从设备就可以识别到主设备的硬件和软件版本号,可以据此加载不同的模块,运行不同的程序,实现统一固件的目的;一种从设备只需要保存一个固件,可以适用全部的主设备,节约从设备的存储空间;统一固件的方式是通过软件实现,减少额外的成本;
(2)从设备只在第一次开机时下载主设备信息文件,后面的开机都可以直接从从设备的环境变量中获取,而从设备第一次开机在生产时进行,不需要下载主设备信息文件,不影响开机时间;为了节约闪存成本,从设备每次关机都会清除固件,从设备之后每次开机只需要向主设备下载固件即可;如果从设备的环境变量被破坏,通过本方法可恢复环境变量。
附图说明
图1为本发明的流程图。
具体实施方式
下面结合说明书附图和具体的实施例,对本发明作详细描述。
实施例1
如图1所示,一种从设备统一固件的方法,包括以下步骤:
从设备在uboot下读取自己的环境变量,并与保存在uboot程序中的机型列表进行对比,如果环境变量不是机型列表中的值或环境变量的值为空,则通过文件传输协议向主设备下载主设备信息文件,并将主设备机型信息传输给从设备的环境变量与操作***内核,重新进行机型列表与环境变量的对比;如果环境变量是机型列表中的值,则从设备识别环境变量的主设备版本,通过文件传输协议向主设备下载并启动对应的固件。在从设备正常运行情况下,环境变量在第一次开机获取主设备信息后就不会改变,如果环境变量不是机型列表的值,那么环境变量遭到了破坏,通过重新下载主设备信息文件即可恢复。
一种从设备统一固件***,包括主设备和从设备,主设备和从设备通过文件传输协议进行数据传输,这里的文件传输协议优选tftp协议,tftp协议简单可靠,文件传输协议也可以是其他常用的文件传输协议,只要能正确获取到主设备信息文件即可,主设备包括主设备信息文件和从设备的固件;从设备包括环境变量、uboot启动程序、操作***和机型列表。主设备的主设备信息文件保存有主设备的硬件与软件版本号,主设备信息文件使从设备能够识别主设备的型号。
从设备的机型列表编写在uboot程序中,由于从设备在设计时机型就固定不变,因此写在程序中能方便、快速地获取机型信息,在uboot中用文件支持相对繁琐和缓慢。从设备的机型列表为从设备所能适配的主设备的机型,不同型号的从设备所适配的主设备机型不同,从设备所保存的机型列表也不同。从设备的环境变量存放主设备的硬件和软件版本号,在从设备初次运行时为空,使从设备可以兼容多个版本的主设备。从设备中不保存固件,每次关机自动清除固件信息,便于从设备的升级,同时节约闪存成本。从设备的操作***内核中设置有与若干种主设备机型相对应的固件启动路径,使操作***可以根据匹配的主设备信息启动对应的固件。
有高端主设备A,低端主设备B,其中主设备A支持8种不同类型的麦克风,主设备B支持2种类型的麦克风,而有从设备C可以支持主设备为A或B的机型。当从设备C与主设备A相连接后,从设备C读取自己的环境变量,与机型列表进行对比,此时由于是第一次连接,环境变量为空,从设备C向主设备A通过tftp协议下载主设备信息文件,并将主设备机型信息传输给从设备的环境变量与操作***内核,重新进行机型列表与环境变量的对比,此时从设备C的环境变量中已有主设备A的机型,从设备C向主设备A下载并驱动主设备A的固件。从设备C也可与主设备B相连,通过同样的方式下载并驱动主设备B的固件。当从设备C与主设备A或B相连后就固定在一起,从设备C不再与其他主设备相连。
以上示意性地对本发明创造及其实施方式进行了描述,该描述没有限制性,在不背离本发明的精神或者基本特征的情况下,能够以其他的具体形式实现本发明。所以,如果本领域的普通技术人员受其启示,在不脱离本创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本专利的保护范围。

Claims (10)

1.一种从设备统一固件的方法,其特征在于,包括以下步骤:
S1、从设备读取环境变量的值,与从设备中的机型列表进行对比,如果环境变量不是机型列表中的值或环境变量的值为空,则进入步骤S2,如果环境变量是机型列表中的值,则进入步骤S3;
S2、从设备通过文件传输协议向主设备下载主设备信息文件,返回步骤S1;
S3、从设备向主设备下载并启动符合主设备版本的固件。
2.根据权利要求1所述的从设备统一固件的方法,其特征在于,步骤S2还包括以下步骤:
S21、从设备通过文件传输协议向主设备下载主设备信息文件;
S22、从设备读取主设备信息文件中的主设备机型信息;
S23、从设备将主设备机型信息传输给从设备的环境变量与操作***内核。
3.根据权利要求1所述的从设备统一固件的方法,其特征在于,步骤S3还包括以下步骤:
S31、从设备识别环境变量中对应主设备的硬件和软件版本;
S32、从设备根据主设备的硬件和软件版本通过文件传输协议向主设备下载对应的固件。
S33、从设备的操作***启动固件。
4.一种基于权利要求1的从设备统一固件***,其特征在于:包括主设备与从设备,主设备和从设备通过文件传输协议进行数据传输,主设备包括主设备信息文件和从设备的固件;从设备包括环境变量、uboot启动程序、操作***和机型列表。
5.根据权利要求4中所述的从设备统一固件***,其特征在于,所述文件传输协议为tftp协议。
6.根据权利要求4所述的从设备统一固件***,其特征在于:主设备的主设备信息文件中保存有主设备的硬件与软件版本号。
7.根据权利要求6所述的从设备统一固件***,其特征在于:从设备的环境变量用于存放主设备的硬件和软件版本号,在从设备初次运行时为空。
8.根据权利要求7所述的从设备统一固件***,其特征在于:从设备的机型列表编写在uboot程序中,机型列表为从设备所能适配的主设备的机型。
9.根据权利要求8所述的从设备统一固件的方法,其特征在于:从设备关机后自动清除固件。
10.根据权利要求4-9中任一所述的从设备统一固件***,其特征在于:从设备的操作***内核中设置有与若干种主设备机型相对应的固件启动路径。
CN201910997605.5A 2019-10-18 2019-10-18 一种从设备统一固件的方法及*** Active CN110780943B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910997605.5A CN110780943B (zh) 2019-10-18 2019-10-18 一种从设备统一固件的方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910997605.5A CN110780943B (zh) 2019-10-18 2019-10-18 一种从设备统一固件的方法及***

Publications (2)

Publication Number Publication Date
CN110780943A true CN110780943A (zh) 2020-02-11
CN110780943B CN110780943B (zh) 2022-07-12

Family

ID=69386049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910997605.5A Active CN110780943B (zh) 2019-10-18 2019-10-18 一种从设备统一固件的方法及***

Country Status (1)

Country Link
CN (1) CN110780943B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145807A1 (en) * 2008-06-02 2011-06-16 Awox Method and device for updating a computer application
CN105978937A (zh) * 2016-04-26 2016-09-28 江苏惠通集团有限责任公司 一种蓝牙从设备及其升级方法
CN106612192A (zh) * 2015-10-22 2017-05-03 阿里巴巴集团控股有限公司 设备的升级方法、装置和***
CN107015829A (zh) * 2017-03-31 2017-08-04 广东欧珀移动通信有限公司 音频***升级方法、装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110145807A1 (en) * 2008-06-02 2011-06-16 Awox Method and device for updating a computer application
CN106612192A (zh) * 2015-10-22 2017-05-03 阿里巴巴集团控股有限公司 设备的升级方法、装置和***
CN105978937A (zh) * 2016-04-26 2016-09-28 江苏惠通集团有限责任公司 一种蓝牙从设备及其升级方法
CN107015829A (zh) * 2017-03-31 2017-08-04 广东欧珀移动通信有限公司 音频***升级方法、装置

Also Published As

Publication number Publication date
CN110780943B (zh) 2022-07-12

Similar Documents

Publication Publication Date Title
RU2417415C2 (ru) Способ и система развертывания программного обеспечения, сервер развертывания программного обеспечения и пользовательский сервер
US20120117557A1 (en) Method and system for upgrading wireless data card
CN106549789B (zh) 一种实现服务器安装的方法及***
CN112615747B (zh) 一种网络设备自动部署配置的方法及装置
CN110750280B (zh) 一种基于Android平台的应用升级方法及***、存储介质
CN111273924B (zh) 软件更新方法及装置
CN111475172B (zh) 一种裸机部署方法及装置
WO2011088701A1 (zh) 一种跨平台版本在线升级的方法及装置
EP3113018A1 (en) Method and apparatus for running version file
CN103024782A (zh) 一种基站软件版本管理的方法和***
CN111901142A (zh) 一种用于嵌入式设备集群的固件静默升级方法及装置
JP4576130B2 (ja) 通信系アプリケーションプログラムのバージョン更新方法及びそのプログラム
CN110780943B (zh) 一种从设备统一固件的方法及***
JPH1021060A (ja) プログラム自動更新処理機能を有する通信システムおよびプログラム更新処理を実行するプログラムを備えた記録媒体
CN112235639A (zh) 一种易升级可扩展的Linux智能电视操作***
CN110308914B (zh) 升级处理方法、装置、设备、***及计算机可读存储介质
CN108833128A (zh) 一种设备更新的方法
CN115328717A (zh) 一种支持多种国产平台的内核测试方法及***
CN115629777A (zh) 一种bmc异构升级方法、***、设备及可读存储介质
CN111324384B (zh) 于预执行环境依装置消息选择开机图像文件的装置及方法
CN101854442B (zh) 网络设备及其固件更新方法
KR100538627B1 (ko) 무선통신단말기의 소프트웨어 부분 업그레이드 방법
CN111552498A (zh) 一种实现显示屏的屏参升级的方法及***
CN111008043A (zh) 一种云平台的服务器启动方法及终端
CN113886218B (zh) 一种验证bios刷新的方法、装置、设备及可读介质

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