CN106681700A - 一种基于主板id的固件判别方法及系统 - Google Patents
一种基于主板id的固件判别方法及系统 Download PDFInfo
- Publication number
- CN106681700A CN106681700A CN201510753621.1A CN201510753621A CN106681700A CN 106681700 A CN106681700 A CN 106681700A CN 201510753621 A CN201510753621 A CN 201510753621A CN 106681700 A CN106681700 A CN 106681700A
- Authority
- CN
- China
- Prior art keywords
- mainboard
- firmware
- gpio
- type
- level
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/4408—Boot device selection
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于主板ID的固件判别方法及系统,涉及计算机技术领域。该方法包括:接收主板的开机请求;根据开机请求获取主板中南桥芯片上GPIO的准位;根据GPIO的准位判断主板的类型;根据主板的类型调用对应的开机画面数据进行开机。本发明能够实现使用同一套固件代码来适配不同的主板,并针对不同的主板实现不同的配置,减少了固件维护的成本,克服了现有技术中存在的需要开发多套固件源代码来适配不同的主板的问题。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种基于主板ID的固件判别方法及系统。
背景技术
固件是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机上电自检程序和系统启动自检程序。其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。在主板设计中,开发一套主板需要配套开发一套固件源码。同一芯片组的主板,会针对不同客户、不同的配置开发多款主板,这样就需要多套固件源代码来适配不同的主板。每次更新固件code base时,需要所有项目的固件源代码一起更新,这样就大大地增加了固件维护的成本,而且固件的一致性得不到解决,往往会出现某个更新遗漏问题。
发明内容
本发明实施例的目的在于提供一种基于主板ID的固件判别方法,旨在解决上述需要开发多套固件源代码来适配不同的主板,导致每次更新固件code base时,需要所有项目的固件源代码一起更新,大大地增加了固件维护的成本,而且固件的一致性得不到解决,往往会出现某个更新遗漏的问题。
本发明实施例是这样实现的,一种基于主板ID的固件判别方法,包括:
接收主板的开机请求;
根据所述开机请求获取所述主板中南桥芯片上GPIO的准位;
根据所述GPIO的准位判断所述主板的类型;
根据所述主板的类型调用对应的开机画面数据进行开机。
在本发明实施例所述的基于主板ID的固件判别方法中,所述接收主板的开机请求之前还包括:
根据主板的类型对所述主板中南桥芯片上GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。
在本发明实施例所述的基于主板ID的固件判别方法中,所述根据所述GPIO的准位判断所述主板的固件类型具体包括:
根据所述GPIO的准位查找所述对应关系表,以获取所述主板的类型。
在本发明实施例所述的基于主板ID的固件判别方法中,所述根据所述主板的类型调用对应的开机画面数据进行开机之前还包括:
预先设置并存储不同类型的主板所对应的开机画面数据。
在本发明实施例所述的基于主板ID的固件判别方法中,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。
本发明实施例的另一目的在于提供一种基于主板ID的固件判别系统,包括:
接收模块,用于接收主板的开机请求;
GPIO准位读取模块,用于根据所述开机请求获取所述主板中南桥芯片上GPIO的准位;
主板类型判断模块,用于根据所述GPIO的准位判断所述主板的类型;
开机画面数据选择模块,用于根据所述主板的类型调用对应的开机画面数据进行开机。
在本发明实施例所述的基于主板ID的固件判别系统中,还包括:
GPIO准位设置模块,用于根据主板的类型对所述主板中南桥芯片上GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。
在本发明实施例所述的基于主板ID的固件判别系统中,所述主板类型判断模块具体用于:
根据所述GPIO的准位查找所述对应关系表,以获取所述主板的类型。
在本发明实施例所述的基于主板ID的固件判别系统中,所述还包括:
开机画面数据设置模块,用于预先设置并存储不同类型的主板所对应的开机画面数据。
在本发明实施例所述的基于主板ID的固件判别系统中,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。
实施本发明实施例提供的基于主板ID的固件判别方法及系统具有以下有益效果:
本发明实施例由于首先接收主板的开机请求,根据所述开机请求获取所述主板中南桥芯片上GPIO的准位,然后根据所述GPIO的准位判断所述主板的类型,并根据所述主板的类型调用对应的开机画面数据进行开机,从而能够实现使用同一套固件代码来适配不同的主板,并针对不同的主板实现不同的配置,大大减少了固件维护的成本,克服了现有技术中存在的需要开发多套固件源代码来适配不同的主板,导致每次更新固件code base时,需要所有项目的固件源代码一起更新,大大地增加了固件维护的成本,而且固件的一致性得不到解决,往往会出现某个更新遗漏的问题。
附图说明
图1是本发明实施例提供的基于主板ID的固件判别方法的具体实现流程图;
图2是本发明实施例提供的基于主板ID的固件判别系统的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1是本发明实施例提供的基于主板ID的固件判别方法的具体实现流程图。参见图1所示,本发明实施例提供的一种基于主板ID的固件判别方法,包括:
在S101中,接收主板的开机请求。
在本发明实施例中,所述接收主板的开机请求之前还包括:根据主板的类型对所述主板中南桥芯片上GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。需要说明的是,本发明实施例中所述主板的类型与所述GPIO的准位一一对应,不同的主板类型对应的GPIO的准位也不相同。在具体实现时,我们可以根据用户的需要选择作为主板ID的GPIO的位置与数量,例如:若我们用主板中南桥芯片上的GPIO21和GPIO22两个GPIO来做主板的ID,而一个GPIO对应有0(低)和1(高)两个准位,那么这两个GPIO的准位状态的组合就可以对应4个类型的主板,在做硬件设计时,直接对这两个GPIO的准位进行高/低预设,如表1所示。
主板的类型 | GPIO21 | GPIO22 |
客户A | 0 | 0 |
客户B | 0 | 1 |
客户C | 1 | 0 |
客户D | 1 | 1 |
表1
在S102中,根据所述开机请求获取所述主板中南桥芯片上GPIO的准位。
在本发明实施例中,若用上述GPIO21和GPIO22两个GPIO来做主板的ID,则在接收到主板发送的开机请求时,自动读取主板上GPIO21和GPIO22两个GPIO的准位。
在S103中,根据所述GPIO的准位判断所述主板的类型。
在本发明实施例中,所述根据所述GPIO的准位判断所述主板的固件类型具体包括:根据所述GPIO的准位查找所述对应关系表,以获取所述主板的类型。例如:若以上述GPIO21和GPIO22来做主板的ID,并且读取到GPIO21的准位为0、GPIO22的准位为0,则根据表1可以判断所述主板的类型为客户A。
在S104中,根据所述主板的类型调用对应的开机画面数据进行开机。
在本发明实施例中,所述根据所述主板的类型调用对应的开机画面数据进行开机之前还包括:预先设置并存储不同类型的主板所对应的开机画面数据,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。这里我们可以将不同类型的主板所对应的开机画面数据以数据表的形式存储,这样我们便可以在后续根据主板的类型调用不同的开机画面数据进行开机,以实现针对不同类型的主板实现不同的配置。
表2 示出了四个不同类型的主板所对应的开机画面数据:
主板的类型 | 开机Logo | 音频设定 | SVID&SSID |
客户A | logoA.jpg | CusA_verb_table | AAAA0001 |
客户B | logoB.jpg | CusB_verb_table | BBBB0001 |
客户C | logoC.jpg | CusC_verb_table | CCCC0001 |
客户C | logoD.jpg | CusD_verb_table | DDDD0001 |
表2
其中,开机logo是指开机过程中客户特定的画面;音频设定是指使用同一个音频芯片,每个音频的孔位会随客户的变化而变化;SVID是指客户识别码;SSID是指客户定义的系统识别码。参见表2所示,若我们判断出主板的类型为客户A,则所述根据所述固件类型调用预先设置的与所述固件类型相对应的开机画面数据进行开机具体包括:在开机画面上填写客户A所对应的客户识别码和系统识别码:AAAA0001;在开机画面上显示客户A所对应的开机logo:logoA.jpg;将开机音频初始化客户A对应的音频设定数据:CusA_verb_table;完成开机。
以上可以看出,本发明实施例提供的一种基于主板ID的固件判别方法由于首先接收主板的开机请求,根据所述开机请求获取所述主板中南桥芯片上GPIO的准位,然后根据所述GPIO的准位判断所述主板的类型,并根据所述主板的类型调用对应的开机画面数据进行开机,从而能够实现使用同一套固件代码来适配不同的主板,并针对不同的主板实现不同的配置,大大减少了固件维护的成本,克服了现有技术中存在的需要开发多套固件源代码来适配不同的主板,导致每次更新固件code base时,需要所有项目的固件源代码一起更新,大大地增加了固件维护的成本,而且固件的一致性得不到解决,往往会出现某个更新遗漏的问题。
图2是本发明实施例提供的基于主板ID的固件判别系统的结构框图,该系统用于运行图1实施例提供的方法。为了便于说明仅仅示出了与本发明实施例相关的部分,
参见图2所示,本发明实施例提供一种基于主板ID的固件判别系统,包括:
接收模块1,用于接收主板的开机请求;
GPIO准位读取模块2,用于根据所述开机请求获取所述主板中南桥芯片上两个GPIO的准位;
主板类型判断模块3,用于根据所述两个GPIO的准位判断所述主板的类型;
开机画面数据选择模块4,用于根据所述主板的类型调用对应的开机画面数据进行开机。
可选的,所述基于主板ID的固件判别系统还包括:
GPIO准位设置模块5,用于根据主板的类型对所述主板中南桥芯片上的两个GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。
可选的,所述主板类型判断模块3具体用于:
根据所述两个GPIO的准位查找所述对应关系表,以获取所述主板的类型。
可选的,所述基于主板ID的固件判别系统还包括:
开机画面数据设置模块6,用于预先设置并存储不同类型的主板所对应的开机画面数据。
可选的,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。
需要说明的是,本发明实施例提供的上述系统中各个模块,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
因此,可以看出本发明实施例提供的一种基于主板ID的固件判别系统同样由于首先接收主板的开机请求,根据所述开机请求获取所述主板中南桥芯片上GPIO的准位,然后根据所述GPIO的准位判断所述主板的类型,并根据所述主板的类型调用对应的开机画面数据进行开机,从而能够实现使用同一套固件代码来适配不同的主板,并针对不同的主板实现不同的配置,大大减少了固件维护的成本,克服了现有技术中存在的需要开发多套固件源代码来适配不同的主板,导致每次更新固件code base时,需要所有项目的固件源代码一起更新,大大地增加了固件维护的成本,而且固件的一致性得不到解决,往往会出现某个更新遗漏的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于主板ID的固件判别方法,其特征在于,包括:
接收主板的开机请求;
根据所述开机请求获取所述主板中南桥芯片上GPIO的准位;
根据所述GPIO的准位判断所述主板的类型;
根据所述主板的类型调用对应的开机画面数据进行开机。
2.如权利要求1所述的基于主板ID的固件判别方法,其特征在于,所述接收主板的开机请求之前还包括:
根据主板的类型对所述主板中南桥芯片上GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。
3.如权利要求2所述的基于主板ID的固件判别方法,其特征在于,所述根据所述GPIO的准位判断所述主板的固件类型具体包括:
根据所述GPIO的准位查找所述对应关系表,以获取所述主板的类型。
4.如权利要求3所述的基于主板ID的固件判别方法,其特征在于,所述根据所述主板的类型调用对应的开机画面数据进行开机之前还包括:
预先设置并存储不同类型的主板所对应的开机画面数据。
5.如权利要求4所述的基于主板ID的固件判别方法,其特征在于,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。
6.一种基于主板ID的固件判别系统,其特征在于,包括:
接收模块,用于接收主板的开机请求;
GPIO准位读取模块,用于根据所述开机请求获取所述主板中南桥芯片上GPIO的准位;
主板类型判断模块,用于根据所述GPIO的准位判断所述主板的类型;
开机画面数据选择模块,用于根据所述主板的类型调用对应的开机画面数据进行开机。
7.如权利要求6所述的基于主板ID的固件判别系统,其特征在于,还包括:
GPIO准位设置模块,用于根据主板的类型对所述主板中南桥芯片上GPIO的准位进行高/低的预设,并将预设结果以对应关系表的形式进行存储。
8.如权利要求7所述的基于主板ID的固件判别系统,其特征在于,所述主板类型判断模块具体用于:
根据所述GPIO的准位查找所述对应关系表,以获取所述主板的类型。
9.如权利要求8所述的基于主板ID的固件判别系统,其特征在于,所述还包括:
开机画面数据设置模块,用于预先设置并存储不同类型的主板所对应的开机画面数据。
10.如权利要求9所述的基于主板ID的固件判别系统,其特征在于,所述开机画面数据包括客户识别码、系统识别码、开机logo以及音频设定数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510753621.1A CN106681700A (zh) | 2015-11-09 | 2015-11-09 | 一种基于主板id的固件判别方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510753621.1A CN106681700A (zh) | 2015-11-09 | 2015-11-09 | 一种基于主板id的固件判别方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106681700A true CN106681700A (zh) | 2017-05-17 |
Family
ID=58863147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510753621.1A Pending CN106681700A (zh) | 2015-11-09 | 2015-11-09 | 一种基于主板id的固件判别方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106681700A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020000957A1 (zh) * | 2018-06-26 | 2020-01-02 | 郑州云海信息技术有限公司 | 一种单主板多版本程序适配方法、系统、装置及存储介质 |
CN110780931A (zh) * | 2019-09-25 | 2020-02-11 | 芯创智(北京)微电子有限公司 | 一种自适应型固件启动方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1904829A (zh) * | 2005-07-29 | 2007-01-31 | 联想(北京)有限公司 | 实现多个模式控制方式切换的方法和系统 |
CN101398763A (zh) * | 2007-09-27 | 2009-04-01 | 鸿富锦精密工业(深圳)有限公司 | 电脑主板及其开机方法 |
CN102023875A (zh) * | 2009-09-11 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 实现不同主板共用相同bios的系统及方法 |
CN202551158U (zh) * | 2012-03-20 | 2012-11-21 | 惠州Tcl移动通信有限公司 | 便于检测硬件类型的移动终端 |
-
2015
- 2015-11-09 CN CN201510753621.1A patent/CN106681700A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1904829A (zh) * | 2005-07-29 | 2007-01-31 | 联想(北京)有限公司 | 实现多个模式控制方式切换的方法和系统 |
CN101398763A (zh) * | 2007-09-27 | 2009-04-01 | 鸿富锦精密工业(深圳)有限公司 | 电脑主板及其开机方法 |
CN102023875A (zh) * | 2009-09-11 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 实现不同主板共用相同bios的系统及方法 |
CN202551158U (zh) * | 2012-03-20 | 2012-11-21 | 惠州Tcl移动通信有限公司 | 便于检测硬件类型的移动终端 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020000957A1 (zh) * | 2018-06-26 | 2020-01-02 | 郑州云海信息技术有限公司 | 一种单主板多版本程序适配方法、系统、装置及存储介质 |
CN110780931A (zh) * | 2019-09-25 | 2020-02-11 | 芯创智(北京)微电子有限公司 | 一种自适应型固件启动方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108768875B (zh) | 应用的灰度发布方法、装置及计算机可读存储介质 | |
CN107168726B (zh) | 一种动态配置应用程序的方法和装置 | |
US20220222070A1 (en) | Techniques to deploy an application as a cloud computing service | |
CN109325195B (zh) | 浏览器的渲染方法和系统、计算机设备、计算机存储介质 | |
CN108462760B (zh) | 电子装置、集群访问域名自动生成方法及存储介质 | |
CN108255707B (zh) | 测试用例的开发角色创建方法、装置、设备及存储介质 | |
CN111078539B (zh) | 一种测试方法、装置、系统、计算机可读存储介质 | |
CN102063299A (zh) | 移动终端中应用运行条件的评估方法及装置、移动终端 | |
CN101571809A (zh) | 一种插件注册的实现方法及其装置 | |
CN104834555A (zh) | 调用功能模块的方法、相关装置及装置修复方法 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN106873970B (zh) | 一种操作系统的安装方法和装置 | |
CN112954040B (zh) | 嵌入应用发布服务器的方法、系统、设备及存储介质 | |
US11283689B2 (en) | Method for managing multiple servers and device employing method | |
CN104113430A (zh) | 一种云计算数据中心自动化部署软件架构设计 | |
CN109684008A (zh) | 卡片渲染方法、装置、终端及计算机可读存储介质 | |
CN111611441A (zh) | 异构数据的处理方法、装置以及计算机设备 | |
CN106681700A (zh) | 一种基于主板id的固件判别方法及系统 | |
US10520929B2 (en) | Techniques for implementing universal commands in a welding or cutting system | |
US20180059650A1 (en) | Techniques for multiple application banks in a welding or cutting system | |
CN111414154A (zh) | 前端开发的方法、装置、电子设备和存储介质 | |
KR20170066586A (ko) | 벤더 고유의 주변 장치 클래스 식별자들 | |
CN114035786A (zh) | 一种基于依赖的微前端兼容迁移方法及系统 | |
CN112685006A (zh) | 流程管理方法、装置、电子设备及存储介质 | |
CN109426505B (zh) | 一种软件的安装方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information |
Address after: 518000 computer building of the Great Wall, Nanshan District science and Technology Park, Shenzhen, Guangdong Applicant after: China the Great Wall science and technology group Limited by Share Ltd Address before: 518000 the Great Wall computer building, 3 FA FA Road, Nanshan District science and Technology Park, Guangdong, Shenzhen Applicant before: China Changcheng Computer Shenzhen Co., Ltd. |
|
CB02 | Change of applicant information | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170517 |
|
RJ01 | Rejection of invention patent application after publication |