CN105320553A - 一种基于国产处理器平台更新网卡固件的方法及系统 - Google Patents
一种基于国产处理器平台更新网卡固件的方法及系统 Download PDFInfo
- Publication number
- CN105320553A CN105320553A CN201510896615.1A CN201510896615A CN105320553A CN 105320553 A CN105320553 A CN 105320553A CN 201510896615 A CN201510896615 A CN 201510896615A CN 105320553 A CN105320553 A CN 105320553A
- Authority
- CN
- China
- Prior art keywords
- firmware
- data
- driver module
- mac address
- application program
- 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
- 238000000034 method Methods 0.000 title claims abstract description 12
- 238000012795 verification Methods 0.000 claims description 15
- 238000004458 analytical method Methods 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 abstract description 9
- 238000012986 modification Methods 0.000 abstract 1
- 230000004048 modification Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Landscapes
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及国产CPU平台下的网络控制器烧录技术领域,特别涉及一种基于国产处理器平台更新网卡固件的方法及系统。本发明方法通过开发应用程序,访问网卡驱动模块程序接口,将网卡固件或MAC地址写入EEPROM或Flash芯片,最终能够有效解决调试和生产过程中网卡固件烧录和MAC地址修改问题,大幅提高调试和生产效率。
Description
技术领域
本发明涉及国产CPU平台下的网络控制器烧录技术领域,特别涉及一种基于国产处理器平台更新网卡固件的方法及系统。
背景技术
随着国产CPU的技术进步与行业发展加速,目前涉及国产CPU的设计研发厂商越来越多。由于国产处理器架构与X86架构CPU存在较大差异,网络控制器固件烧录工具无法在国产平台上使用。因此在产品调试和生产过程中,网络控制器固件烧录成为了让研发人员、生产线操作人员的一大困扰。
发明内容
为了解决现有技术的问题,本发明提供了一种基于国产处理器平台更新网卡固件的方法及系统,其能够有效解决在国产处理器平台下,调试和生产过程中网卡固件烧录和MAC地址修改的问题,大幅提高调试和生产效率。
本发明所采用的技术方案如下:
一种基于国产处理器平台更新网卡固件的方法,包括以下步骤:
A、固件烧录应用程序启动后首先加载驱动模块,并判断是否加载成功,如不成功则重试;
B、如果成功,则要求用户选择要烧录的固件文件,并解析文件内容,获取固件适用的设备类型;
C、数据收发组件访问驱动模块,后者读取硬件寄存器获取设备型号数据;
D、校验组件校验设备型号是否相符,若不相符则显示错误信息并退出;若设备型号符合固件适用范围,则数据收发组件访问驱动模块,由后者读取硬件寄存器,获取当前MAC地址,若MAC地址为FF:FF:FF:FF:FF:FF,则判断原EEPROM/Flash芯片中为空,直接要求用户输入需要设置的MAC地址,并由校验组件完成校验码计算;否则校验组件使用获取的MAC地址与固件文件数据计算新的校验码;
E、最后由数据收发组件访问驱动模块,将包含新MAC地址、校验码的固件数据写入EEPROM/Flash芯片。
固件烧录应用程序与驱动模块均采用C语言编写。
一种基于国产处理器平台更新网卡固件的系统,包括固件烧录应用程序和驱动模块,固件烧录应用程序包括文件解析组件、校验组件和数据收发组件;
所述的文件解析组件用于读取用户指定的固件文件,并进行解析,并将数据读出备用;
所述的校验组件用于校验网络控制器芯片与固件文件是否吻合,并根据原有MAC地址和新固件文件数据计算相应的校验码;
所述的数据收发组件负责与驱动模块通信,将固件烧录应用程序准备好的数据发往驱动模块或从驱动模块读取网络控制器数据;
所述的驱动模块工作于内核态,负责直接访问网络控制器寄存器及硬件,读取数据并发送给烧录软件,或将固件烧录应用程序提供的数据写入寄存器和EEPROM/Flash芯片。
本发明提供的技术方案带来的有益效果是:
本发明方法通过开发应用程序,访问网卡驱动模块程序接口,将网卡固件或MAC地址写入EEPROM或Flash芯片,最终能够有效解决调试和生产过程中网卡固件烧录和MAC地址修改问题,大幅提高调试和生产效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种基于国产处理器平台更新网卡固件的方法及系统的方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如图1所示,固件烧录应用程序启动后首先加载驱动模块,并判断是否加载成功,如不成功则重试;然后要求用户选择要烧录的固件文件,并解析文件内容,获取固件适用的设备类型;数据收发组件访问驱动模块,后者读取硬件寄存器获取设备型号数据;校验组件校验设备型号是否相符,若不相符则显示错误信息并退出;若设备型号符合固件适用范围,则数据收发组件访问驱动模块,由后者读取硬件寄存器,获取当前MAC地址,若MAC地址为FF:FF:FF:FF:FF:FF则判断原EEPROM/Flash芯片中为空,直接要求用户输入需要设置的MAC地址,并由校验组件完成校验码计算;否则校验组件使用获取的MAC地址与固件文件数据计算新的校验码;最后由数据收发组件访问驱动模块,将包含新MAC地址、校验码的固件数据写入EEPROM/Flash芯片。
固件烧录应用程序主要包含文件解析组件、校验组件和数据收发组件。文件解析组件主要功能是读取用户指定的固件文件,并进行解析,并将重点数据(例如MAC地址、校验码)读出备用;校验组件具有两大功能,一是校验网络控制器芯片与固件文件是否吻合,防止误刷新导致的硬件和功能故障,二是根据原有MAC地址和新固件文件数据计算相应的校验码;数据收发组件负责与驱动模块通信,将固件烧录应用程序准备好的数据发往驱动模块或从驱动模块读取网络控制器数据(例如MAC地址);驱动模块工作于内核态,负责直接访问网络控制器寄存器及硬件,读取数据并发送给烧录软件,或将固件烧录应用程序提供的数据写入寄存器和EEPROM/Flash芯片。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于国产处理器平台更新网卡固件的方法,包括以下步骤:
A、固件烧录应用程序启动后首先加载驱动模块,并判断是否加载成功,如不成功则重试;
B、如果成功,则要求用户选择要烧录的固件文件,并解析文件内容,获取固件适用的设备类型;
C、数据收发组件访问驱动模块,后者读取硬件寄存器获取设备型号数据;
D、校验组件校验设备型号是否相符,若不相符则显示错误信息并退出;若设备型号符合固件适用范围,则数据收发组件访问驱动模块,由后者读取硬件寄存器,获取当前MAC地址,若MAC地址为FF:FF:FF:FF:FF:FF,则判断原EEPROM/Flash芯片中为空,直接要求用户输入需要设置的MAC地址,并由校验组件完成校验码计算;否则校验组件使用获取的MAC地址与固件文件数据计算新的校验码;
E、最后由数据收发组件访问驱动模块,将包含新MAC地址、校验码的固件数据写入EEPROM/Flash芯片。
2.根据权利要求1所述的一种基于国产处理器平台更新网卡固件的方法,其特征在于,所述的固件烧录应用程序与驱动模块均采用C语言编写。
3.一种基于国产处理器平台更新网卡固件的系统,包括固件烧录应用程序和驱动模块,其特征在于,所述的固件烧录应用程序包括文件解析组件、校验组件和数据收发组件;
所述的文件解析组件用于读取用户指定的固件文件,并进行解析,并将数据读出备用;
所述的校验组件用于校验网络控制器芯片与固件文件是否吻合,并根据原有MAC地址和新固件文件数据计算相应的校验码;
所述的数据收发组件负责与驱动模块通信,将固件烧录应用程序准备好的数据发往驱动模块或从驱动模块读取网络控制器数据;
所述的驱动模块工作于内核态,负责直接访问网络控制器寄存器及硬件,读取数据并发送给烧录软件,或将固件烧录应用程序提供的数据写入寄存器和EEPROM/Flash芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510896615.1A CN105320553A (zh) | 2015-12-07 | 2015-12-07 | 一种基于国产处理器平台更新网卡固件的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510896615.1A CN105320553A (zh) | 2015-12-07 | 2015-12-07 | 一种基于国产处理器平台更新网卡固件的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105320553A true CN105320553A (zh) | 2016-02-10 |
Family
ID=55247978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510896615.1A Pending CN105320553A (zh) | 2015-12-07 | 2015-12-07 | 一种基于国产处理器平台更新网卡固件的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105320553A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108563458A (zh) * | 2018-04-09 | 2018-09-21 | 济南浪潮高新科技投资发展有限公司 | 固件更新方法及系统、Web客户端、基板管理控制器 |
CN108616382A (zh) * | 2018-03-07 | 2018-10-02 | 华为技术有限公司 | 升级网卡固件的方法、装置、网卡和设备 |
CN108628625A (zh) * | 2018-04-28 | 2018-10-09 | 济南浪潮高新科技投资发展有限公司 | 整机柜服务器中以太网控制器的固件更新方法及smc |
CN108804955A (zh) * | 2018-06-11 | 2018-11-13 | 郑州云海信息技术有限公司 | 网卡eeprom的保护方法、系统、装置及存储介质 |
CN109951842A (zh) * | 2019-03-19 | 2019-06-28 | 厦门市思芯微科技有限公司 | 一种蓝牙固件升级中保留ble名称及mac地址的方法 |
CN111027104A (zh) * | 2019-11-26 | 2020-04-17 | 深圳中电长城信息安全系统有限公司 | 一种防止网卡标识数据丢失的方法、装置及主板 |
CN112073556A (zh) * | 2020-09-15 | 2020-12-11 | 成都申威科技有限责任公司 | 一种用于批量网卡的mac地址烧写方法、存储介质及终端 |
CN113741916A (zh) * | 2021-07-20 | 2021-12-03 | 深圳市智微智能科技股份有限公司 | 一种网卡mac地址烧录兼容方法、系统、终端及存储介质 |
CN114579495A (zh) * | 2022-05-06 | 2022-06-03 | 成都前锋信息技术股份有限公司 | 基于飞腾处理器的全国产通用计算机固件的实现方法 |
CN114911488A (zh) * | 2022-04-27 | 2022-08-16 | 北京计算机技术及应用研究所 | 一种基于国产处理器平台的uefi固件logo更换及恢复方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030120820A1 (en) * | 2001-12-21 | 2003-06-26 | Yi-Ping Chen | Set -up method and apparatus for auto-negotiation |
CN1584822A (zh) * | 2003-08-19 | 2005-02-23 | 联想(北京)有限公司 | 一种升级计算机固件程序的方法 |
CN102364443A (zh) * | 2011-06-27 | 2012-02-29 | 浪潮电子信息产业股份有限公司 | 一种在线烧写网卡配置文件的方法 |
JP2013046243A (ja) * | 2011-08-24 | 2013-03-04 | Aiphone Co Ltd | インターホンシステム |
CN103914324A (zh) * | 2013-01-08 | 2014-07-09 | 海尔集团公司 | 一种自动烧写嵌入式设备固件的方法及其系统 |
-
2015
- 2015-12-07 CN CN201510896615.1A patent/CN105320553A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030120820A1 (en) * | 2001-12-21 | 2003-06-26 | Yi-Ping Chen | Set -up method and apparatus for auto-negotiation |
CN1584822A (zh) * | 2003-08-19 | 2005-02-23 | 联想(北京)有限公司 | 一种升级计算机固件程序的方法 |
CN102364443A (zh) * | 2011-06-27 | 2012-02-29 | 浪潮电子信息产业股份有限公司 | 一种在线烧写网卡配置文件的方法 |
JP2013046243A (ja) * | 2011-08-24 | 2013-03-04 | Aiphone Co Ltd | インターホンシステム |
CN103914324A (zh) * | 2013-01-08 | 2014-07-09 | 海尔集团公司 | 一种自动烧写嵌入式设备固件的方法及其系统 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108616382B (zh) * | 2018-03-07 | 2020-12-08 | 华为技术有限公司 | 升级网卡固件的方法、装置、网卡和设备 |
CN108616382A (zh) * | 2018-03-07 | 2018-10-02 | 华为技术有限公司 | 升级网卡固件的方法、装置、网卡和设备 |
CN112491600A (zh) * | 2018-03-07 | 2021-03-12 | 华为技术有限公司 | 升级网卡固件的方法、装置、网卡和设备 |
CN108563458A (zh) * | 2018-04-09 | 2018-09-21 | 济南浪潮高新科技投资发展有限公司 | 固件更新方法及系统、Web客户端、基板管理控制器 |
CN108628625A (zh) * | 2018-04-28 | 2018-10-09 | 济南浪潮高新科技投资发展有限公司 | 整机柜服务器中以太网控制器的固件更新方法及smc |
CN108804955A (zh) * | 2018-06-11 | 2018-11-13 | 郑州云海信息技术有限公司 | 网卡eeprom的保护方法、系统、装置及存储介质 |
CN109951842A (zh) * | 2019-03-19 | 2019-06-28 | 厦门市思芯微科技有限公司 | 一种蓝牙固件升级中保留ble名称及mac地址的方法 |
CN111027104A (zh) * | 2019-11-26 | 2020-04-17 | 深圳中电长城信息安全系统有限公司 | 一种防止网卡标识数据丢失的方法、装置及主板 |
CN112073556A (zh) * | 2020-09-15 | 2020-12-11 | 成都申威科技有限责任公司 | 一种用于批量网卡的mac地址烧写方法、存储介质及终端 |
CN113741916A (zh) * | 2021-07-20 | 2021-12-03 | 深圳市智微智能科技股份有限公司 | 一种网卡mac地址烧录兼容方法、系统、终端及存储介质 |
CN114911488A (zh) * | 2022-04-27 | 2022-08-16 | 北京计算机技术及应用研究所 | 一种基于国产处理器平台的uefi固件logo更换及恢复方法 |
CN114911488B (zh) * | 2022-04-27 | 2024-04-09 | 北京计算机技术及应用研究所 | 一种基于国产处理器平台的uefi固件logo更换及恢复方法 |
CN114579495A (zh) * | 2022-05-06 | 2022-06-03 | 成都前锋信息技术股份有限公司 | 基于飞腾处理器的全国产通用计算机固件的实现方法 |
CN114579495B (zh) * | 2022-05-06 | 2022-09-30 | 成都前锋信息技术股份有限公司 | 基于飞腾处理器的通用计算机固件的实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105320553A (zh) | 一种基于国产处理器平台更新网卡固件的方法及系统 | |
CN115146568B (zh) | 一种基于uvm的芯片验证系统及验证方法 | |
CN107111595B (zh) | 用于检测早期引导错误的方法、设备及系统 | |
CN102917242A (zh) | 一种多格式视频解码器的测试系统和测试方法 | |
CN116679986A (zh) | 寄存器的访问方法、装置、服务器、系统及存储介质 | |
CN112115055A (zh) | 一种多机自动化测试方法、装置及计算机设备 | |
US20120054560A1 (en) | Verifying correctness of processor transactions | |
CN103729202A (zh) | 一种基于gel脚本的dsp可靠在线flash烧写方法 | |
CN106293797A (zh) | 一种在线更新单片机程序的方法及系统 | |
US20230214153A1 (en) | Memory device forensics and preparation | |
CN109857583B (zh) | 一种处理方法及装置 | |
CN115242753B (zh) | 网卡mac地址烧录方法、系统、电子设备与存储介质 | |
CN102750167B (zh) | 应用程序启动方法、装置和计算机系统 | |
CN112885403B (zh) | 一种Flash控制器的功能测试方法、装置及设备 | |
CN109582334A (zh) | 可编程逻辑器件的升级方法及装置 | |
CN103235921B (zh) | 一种计算机系统 | |
CN103294837A (zh) | 一种集成电路的验证调试方法及系统 | |
CN114265786A (zh) | 自动化测试方法、装置,计算机设备及可读存储介质 | |
CN110321171B (zh) | 开机检测装置、系统及其方法 | |
CN102736976B (zh) | 调试系统及其调试方法 | |
EP3734491A1 (en) | Method, apparatus, device, and medium for implementing simulator | |
CN107301037A (zh) | 操作系统内核的加载方法和装置 | |
CN108829592B (zh) | 快速访问寄存器和表项的验证方法、装置和验证设备 | |
US11397662B2 (en) | Method for debugging computer program, device employing method, and storage medium | |
US20220066911A1 (en) | Virtual machine for developing and testing target code for hardware designs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160210 |
|
WD01 | Invention patent application deemed withdrawn after publication |