一种支持多种厂商模块数据的模块配置方法及终端
文献发布时间:2024-04-18 19:54:45
技术领域
本发明涉及模块配置技术领域,特别涉及一种支持多种厂商模块数据的模块配置方法及终端。
背景技术
现有的手机、POS机和收银机,很多是基于国内芯片厂家进行开发,在开发的整机阶段经常会采购不同模块厂家的不同模块进行贴片整合,比如厂商A、厂商B和厂商C模块厂家,每个模块厂家都有不同的硬件配置,其主要表现是在硬件射频上的不同和制式上的不同。即使是做相同的一个模块,每个模块厂家所调的参数也不一样。
为此,现有技术中,展锐平台有一套成熟的单软多硬机制,该方案主要是根据不同的硬件获取不同的ADC(Analog-to-digitalconverter,数模转换器)值或是不同的GPIO(GeneralPurposeInputOutput,端口扩展器)组合值所对应的level透传rf_board(射频板)id到modem(调制解调器)侧,modem侧这边默认搬运deltanv分区前面128KB到DDR(DoubleDataRate,随机存储器),待拿到数据后进行组装成并取得hw_verxx.nv,通过与nv_ver_flag的值比较,决定是否要去合并hw_verxx.nv参数,即可以理解为一个hw_verxx.nv配置就是一个模块配置。
deltanv分区,大小为1M,展锐平台默认最大支持到64个nv(Non-Volatile,非易失)配置,一般而言足够使用,但实际上展锐平台最大只能搬运128KB的数据,如果deltanvbin超出128KB,则在搬运到DDR时会出现搬运数据截断的问题。deltanv的生成是由nvtool工具制作的,工具制作环节无法检查有没有超出128KB,往往需要客户对生成后的deltanv.bin文件做大小检查,容易导致错误。
而在实际项目过程中,单一厂商的模块的配置压缩制作成deltanv镜像后就已经达到128KB,因此现有的开发平台无法满足多个模块厂家多个模块的配置需求。
发明内容
本发明所要解决的技术问题是:提供一种支持多种厂商模块数据的模块配置方法及终端,能够满足多个模块厂家多个模块的配置需求。
为了解决上述技术问题,本发明采用的技术方案为:
一种支持多种厂商模块数据的模块配置方法,预先将deltanv分区分为多个子分区,所述子分区包括待烧录分区和多个分别对应一个模块厂商的模块数据分区,模块数据分区存放有对应厂商的模块数据,所述待烧录分区默认状态为空白分区;
在待开发产品的开发阶段,执行以下步骤:
S1、获取待开发产品的硬件设备对应的模块厂商;
S2、根据获取的模块厂商,拷贝对应的模块数据分区的模块数据到待烧录分区;
S3、将待烧录分区的模块数据搬运至modem的DDR;
S4、根据所述modem的DDR的模块数据组装modem的nv数据,获取nv拼接数据;
S5、比较步骤S4获取的nv拼接数据和现有存储的nv拼接数据的版本,若步骤S4获取的nv拼接数据较新,则根据步骤S4获得的nv拼接数据更新nv配置。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种支持多种厂商模块数据的模块配置终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下方法:
预先将deltanv分区分为多个子分区,所述子分区包括待烧录分区和多个分别对应一个模块厂商的模块数据分区,模块数据分区存放有对应厂商的模块数据,所述待烧录分区默认状态为空白分区;
在待开发产品的开发阶段,执行以下步骤:
S1、获取待开发产品的硬件设备对应的模块厂商;
S2、根据获取的模块厂商,拷贝对应的模块数据分区的模块数据到待烧录分区;
S3、将待烧录分区的模块数据搬运至modem的DDR;
S4、根据所述modem的DDR的模块数据组装modem的nv数据,获取nv拼接数据;
S5、比较步骤S4获取的nv拼接数据和现有存储的nv拼接数据的版本,若步骤S4获取的nv拼接数据较新,则根据步骤S4获得的nv拼接数据更新nv配置。
本发明的有益效果在于:一种支持多种厂商模块数据的模块配置方法及终端,通过识别检测硬件的厂商,选择硬件的厂商所对应的模块数据拷贝至待烧录分区,在搬运时仅搬运待烧录分区的数据,实现了满足多个模块厂家多个模块的配置需求。
附图说明
图1为本发明实施例的一种支持多种厂商模块数据的模块配置方法的流程示意图;
图2为本发明实施例的一种支持多种厂商模块数据的模块配置终端的结构示意图。
标号说明:
1、一种支持多种厂商模块数据的模块配置终端;2、处理器;3、存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1,一种支持多种厂商模块数据的模块配置方法,预先将deltanv分区分为多个子分区,所述子分区包括待烧录分区和多个分别对应一个模块厂商的模块数据分区,模块数据分区存放有对应厂商的模块数据,所述待烧录分区默认状态为空白分区;
在待开发产品的开发阶段,执行以下步骤:
S1、获取待开发产品的硬件设备对应的模块厂商;
S2、根据获取的模块厂商,拷贝对应的模块数据分区的模块数据到待烧录分区;
S3、将待烧录分区的模块数据搬运至modem的DDR;
S4、根据所述modem的DDR的模块数据组装modem的nv数据,获取nv拼接数据;
S5、比较步骤S4获取的nv拼接数据和现有存储的nv拼接数据的版本,若步骤S4获取的nv拼接数据较新,则根据步骤S4获得的nv拼接数据更新nv配置。
由上述描述可知,本发明的有益效果在于:一种支持多种厂商模块数据的模块配置方法及终端,通过检测硬件的厂商,将厂商对应的模块数据拷贝至待烧录分区,在搬运时仅搬运待烧录分区的数据,实现了满足多个模块厂家多个模块的配置需求。
进一步地,所述待烧录分区为deltanv分区的第一段分区,其大小与开发阶段所用开发平台搬运的最大数据大小一致。
由上述描述可知,在保证开发需求的前提下,实现了对于deltanv分区的充分利用。
进一步地,所述待烧录分区的大小具体是128KB。
由上述描述可知,其适配现有技术广泛应用的开发平台。
进一步地,所述deltanv分区还包括位于deltanv分区末尾的扩展分区。
由上述描述可知,实现了对于deltanv分区的充分利用。
进一步地,所述步骤S1具体是通过读取待开发产品的产品配置表或是coreID值获取待开发产品的硬件设备对应的模块厂商。
由上述描述可知,实现了获取硬件设备对应的模块厂商。
一种支持多种厂商模块数据的模块配置终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下方法:
预先将deltanv分区分为多个子分区,所述子分区包括待烧录分区和多个分别对应一个模块厂商的模块数据分区,模块数据分区存放有对应厂商的模块数据,所述待烧录分区默认状态为空白分区;
在待开发产品的开发阶段,执行以下步骤:
S1、获取待开发产品的硬件设备对应的模块厂商;
S2、根据获取的模块厂商,拷贝对应的模块数据分区的模块数据到待烧录分区;
S3、将待烧录分区的模块数据搬运至modem的DDR;
S4、根据所述modem的DDR的模块数据组装modem的nv数据,获取nv拼接数据;
S5、比较步骤S4获取的nv拼接数据和现有存储的nv拼接数据的版本,若步骤S4获取的nv拼接数据较新,则根据步骤S4获得的nv拼接数据更新nv配置。
由上述描述可知,本发明的有益效果在于:一种支持多种厂商模块数据的模块配置方法及终端,通过检测硬件的厂商,将厂商对应的模块数据拷贝至待烧录分区,在搬运时仅搬运待烧录分区的数据,实现了满足多个模块厂家多个模块的配置需求。
进一步地,所述待烧录分区为deltanv分区的第一段分区,其大小与开发阶段所用开发平台搬运的最大数据大小一致。
由上述描述可知,在保证开发需求的前提下,实现了对于deltanv分区的充分利用。
进一步地,所述待烧录分区的大小具体是128KB。
由上述描述可知,其适配现有技术广泛应用的开发平台。
进一步地,所述deltanv分区还包括位于deltanv分区末尾的扩展分区。
由上述描述可知,实现了对于deltanv分区的充分利用。
进一步地,所述步骤S1具体是通过读取待开发产品的产品配置表或是coreID值获取待开发产品的硬件设备对应的模块厂商。
由上述描述可知,实现了获取硬件设备对应的模块厂商。
本发明用于Android设备,针对整机终端厂家会贴多个不同模块厂家的不同模块,例如A厂商,有AM、WU、JP、CN等模块;可分别代表美洲区域、全球区域、日本区域、中国区域对应的模块,适配多个不同模块厂家的不同模块的配置方案,以便支持更多的不同模块配置。
请参照图1,本发明的实施例一为:
基于为了实现整机能够适配多个不同的模块厂家的不同模块。仍基于展锐平台现有的单软多硬方案的基础上进行延伸扩展(平台限制搬运128KB),由于平台是默认搬运分区前面的128KB到DDR。
因此,提供一种支持多种厂商模块数据的模块配置方法,预先将deltanv分区分为多个子分区,所述子分区包括待烧录分区和分别对应一个模块厂商的多个模块数据分区,其中,待烧录分区为deltanv分区的第一段分区,其大小与开发平台搬运的最大数据大小一致,其为空白分区,模块数据分区存放有对应厂商的模块数据。
具体而言,本实施例中,deltanv分区第1-128KB为待烧录分区xxxx_manufacturer_default_deltanv.bin,第129-256KB为存放厂商A模块数据的第一模块数据分区xxxx_manufacturer_A_deltanv.bin,257-384KB为存放厂商B模块数据的第二模块数据分区xxxx_manufacturer_B_deltanv.bin,385-512KB为存放厂商C模块数据的第三模块数据分区xxxx_manufacturer_C_deltanv.bin,513-640KB为存放厂商D模块数据的第四模块数据分区xxxx_manufacturer_D_deltanv.bin。如下表1所示:
表1
本实施例中,还包括区段为641KB-1MB的扩展分区,其用于以后扩展使用。
在待开发产品的开发阶段,执行以下步骤:
S1、获取待开发产品的硬件设备对应的模块厂商。
具体而言,在U-boot(UniversalBootLoader通用引导)阶段通过读取待开发产品的产品配置表或是core(处理器)ID值,从而区分是哪个模块厂商,以及rf_boardid的值。
S2、根据获取的模块厂商,拷贝对应的模块数据分区的模块数据到待烧录分区。
S3、将待烧录分区的模块数据搬运至modem的DDR。
S4、根据所述modem的DDR的模块数据组装modem的nv数据,获取nv拼接数据。
具体而言,根据搬运至modem的DDR的模块数据组装modem的nv数据,并根据产品配表预设的模块值,在modem侧会取得该模块值与hw_ver进行拼接成nv拼接数据hw_verxx.nv,其中,所述产品配表预设的模块值,本实施例中,AM模块值对应为1,WU模块值对应为2。
S5、比较步骤S4获取的nv拼接数据和现有存储的nv拼接数据的版本,若步骤S4获取的nv拼接数据较新,则根据步骤S4获得的nv拼接数据更新nv配置。
比较nv_ver_flag与终端的nv_ver_flag的大小,若比终端的大,就进行合并项NV操作。
请参照图2,本发明的实施例二为:
一种支持多种厂商模块数据的模块配置终端1,包括存储器3、处理器2及存储在存储器3上并可在处理器2上运行的计算机程序,处理器2执行计算机程序时实现上述实施例一的步骤。
综上所述,本发明提供的一种支持多种厂商模块数据的模块配置方法及终端,通过检测硬件的厂商,将厂商对应的模块数据拷贝至待烧录分区,在搬运时仅搬运待烧录分区的数据,实现了满足多个模块厂家多个模块的配置需求。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
- 一种特高压换流变压器故障信号模拟试验平台
- 一种模拟特高压换流变压器火灾的实验平台和试验方法