【技术实现步骤摘要】
嵌入式设备参数配置方法、电子设备和存储介质
[0001]本申请涉及嵌入式设备
,特别涉及嵌入式设备参数配置方法、电子设备和存储介质。
技术介绍
[0002]在嵌入式设备研发过程中,厂家通常会研发一系列的产品,如面向高端、中端、低端以及面向特定场景的定制产品。属于同一系列的产品通常基于同一套核心固件代码,仅仅在启动引导程序、内核子系统和驱动程序、用户空间子模块和应用的部分处理逻辑不一样(如使用不同的外设,一些特定的定制逻辑)。现有方法通常需要静态编译出所有不同产品的固件进行单独维护,开发和维护工作量大。同时已有的参数配置方法,要么其参数无法在内核初始化的早期访问,如无法在内核空间的存储介质驱动(如eMMC驱动)加载之前使用;要么不支持从启动程序到用户空间的统一的全流程配置参数访问;要么无法与现有的kernel DTB访问方式无缝融合;要么不支持在设备端进行实时参数配置。
技术实现思路
[0003]本申请提供了嵌入式设备参数配置方法、电子设备和存储介质,其能够解决现有的嵌入式设备的参数配置方法中,无法实现配置参数在内核初始化的早起访问以及不支持从启动程序到用户空间的统一的全流程配置参数访问的问题。
[0004]在一个方面,提供了一种嵌入式设备参数配置方法。该方法包括:响应于嵌入式设备的启动,根据设备分区表中的配置参数分区的启动引导程序参数区内的配置参数,对前级启动引导程序各功能模块和外设驱动的参数进行配置;根据所述配置参数分区的内核参数区内的配置参数,由启动引导程序引导操作系统内核,并且传递 ...
【技术保护点】
【技术特征摘要】
1.一种嵌入式设备参数配置方法,其特征在于,包括:响应于嵌入式设备的启动,根据设备分区表中的配置参数分区的启动引导程序参数区内的配置参数,对前级启动引导程序各功能模块和外设驱动的参数进行配置;根据所述配置参数分区的内核参数区内的配置参数,由启动引导程序引导操作系统内核,并且传递内核二进制设备树的内存加载地址到操作系统内核;以及根据所述配置参数分区的用户空间参数区内的配置参数,对用户空间内的各个功能模块进行初始化,并且访问所述内核二进制设备树中的参数值。2.根据权利要求1所述的嵌入式设备参数配置方法,其特征在于,还包括:在所述嵌入式设备的所述设备分区表中增加所述配置参数分区,所述配置参数分区包括所述启动引导程序参数区、所述内核参数区和所述用户空间参数区;以及将配置参数烧录到所述配置参数分区中。3.根据权利要求2所述的嵌入式设备参数配置方法,其特征在于,将配置参数烧录到所述配置参数分区中包括:将各个固件之间的差异部分以所述配置参数的形式放置在所述配置参数分区中,使得启动引导程序、内核子系统和驱动程序、以及用户空间子模块和应用程序通过读取所述配置参数来完成差异化逻辑的处理。4.根据权利要求3所述的嵌入式设备参数配置方法,其特征在于,将各个固件之间的差异部分以所述配置参数的形式放置在所述配置参数分区中包括:将所述差异部分作为普通参数与其他可能的各种参数一起以所述配置参数的形式进行配置。5.根据权利要求2所述的嵌入式设备参数配置方法,其特征在于,将配置参数烧录到所述配置参数分区中包括:将配置参数转化为二进制文件后烧录至所述配置参数分区中,所述二进制文件包括固定大小的文件头、所述启动引导程序参数区、所述内核参数区和所述用户空间参数区,所述文件头包括配置文件魔幻数、校验和、启动引导程序参数区偏移地址、启动引导程序参数区长度、内核参数区偏移地址、内核参数区长度、用户空间参数区偏移地址和用户空间参数区长度。6.根据权利要求1所述的嵌入式设备参数配置方法,其特征在于,根据所述配置参数分区的内核参数区内的配置参数,由启动引导程序引导操作系统内核,并且传递内核二进制设备树的内存加载地址到操作系统内核包括:通过所述启动引导程序将所述内核参数区内的配置参数动态插入传递给操作系统内核使用的二进制设备树空间,使得所述操作系统内核按标准方式直接进行访问来实现初始化。7.根据权利要求1所述的嵌入式设备参数配置方法,其特征在于,还包括:通过用户空间的配置参数修改模块来对所述配置参数分区中的配置参数进行实时修改。8.根据权利要求7所述的嵌入式设备参数配置方法,其特征在于,通过用户空间的配置参数修改模块来对所述配置参数分区中的配置参数进行实时修改包括:通过只读方式访问所述配置参数分区的块设备节点,读取文件头到临时数临时缓冲
区;检查临时数临时缓冲区中的文件头的配置文件魔幻数是否与预期一致;若一致,则检查启动引导程序参数区长度是否大于0,如果是,则根据临时数临时缓冲区中文件头的启动引导程序参数区偏移地址和启动引导程序参数区长度从配置参数分区的块设备节点文件中读取对应的数据存储到启动引导程序参数临时缓冲区,否则设置启动引导程序参数临时缓冲区为空;检查内核参数区长度是否大于0,如果是,则根据临时数临时缓冲区中文件头的内核参数区偏移地址和内核参数区长度,从配置参数分区块设备节点文件中读出对应的数据存储到内核参数临时缓冲区,否则设置内核参数临时缓冲区为空;检查用户空间参数区长度是否大于0,如果是,则根据临时数临时缓冲区中文件头的用户空间参数区偏移地址和用户空间参数区长度,从配置参数分区块设备节点文件中读出对应的数据存储到用户空间参数临时缓冲区,否则设备用户空间参数临时缓冲区为空;若不一致,则设置启动引导程序参数临时缓冲...
【专利技术属性】
技术研发人员:纪大峣,
申请(专利权)人:瑞芯微电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。