DTS修改的方法、装置及计算机可读存储介质制造方法及图纸

技术编号:26689383 阅读:37 留言:0更新日期:2020-12-12 02:38
本发明专利技术公开一种DTS修改的方法、装置及计算机可读存储介质,该方法包括:获取保存DTS数据二进制格式的dts.bin文件;加载DTS的修改内容和解析服务;通过管理服务接口解析修改内容,并将修改内容同步至dts.bin文件;根据同步后的dts.bin文件生成DTS,写入DTS分区。本发明专利技术将DTS解析为能被内核直接解析的二进制dts.bin文件,并利用dts.bin文件作为DTS的修改中间媒介,通过对dts.bin文件修改来实现DTS修改,不仅实现DTS的实时修改,支持不同设备,满足各种使用场景需求,而且修改流程简单,系统工作量小,不会对原生系统造成影响。

【技术实现步骤摘要】
DTS修改的方法、装置及计算机可读存储介质
本专利技术属于嵌入式领域,更具体而言,涉及一种DTS(DeviceTreeSource,设备树源)修改的方法、装置及计算机可读存储介质。
技术介绍
在基于Linux内核系统的设备中,利用设备树描述设备的硬件资源,并采用DTS描述设备树架构,DTS是便于人类阅读和理解的源文件,但是无法直接被Linux内核解析。而在实际应用中,存在同一设备有不同硬件配置,或者设备更换主板外设的可能,此时需要对DTS或其参数进行相应修改。目前,行业内对DTS及其参数进行修改的主要方案都存在缺陷:(1)需在特定的场景下进行修改,如进入到uboot(universalbootloader,通用引导加载程序)模式下,使用fdt命令进行修改;而在实际的场景使用中,需要实时对DTS进行修改或增加参数,如在商显领域需要对同样的固件适用几十上百款显示设备,该方案无法满足在所有场景对DTS实时修改的需求;(2)在应用层上直接对某些DTS参数进行修改,这部分参数通过在内核驱动层上做相应的接口与上层进行交互;该方案不仅会导致潜在的修改风险,而且每次驱动修改会带来非常庞大的工作量,并破坏原生的系统方式;(3)通过PC或其它工具对固件DTS进行修改,生成新的固件后再对目标板进行更新;这种通过修改工具先对固件DTS修改的方式,对于量产及线上使用工程量巨大,且固件更新时间周期长。
技术实现思路
本专利技术的主要目的在于提供一种DTS修改的方法、装置及计算机可读存储介质,能够通过管理服务接口实现DTS修改,不仅优化系统的维护和操作方法,而且能够满足在目标板上实时对DTS修改的需求。根据本专利技术的第一方面,一种DTS修改的方法,包括以下步骤:获取保存DTS数据二进制格式的dts.bin文件;加载DTS的修改内容和解析服务;通过管理服务接口解析所述修改内容,并将所述修改内容同步至dts.bin文件;根据同步后的dts.bin文件生成DTS,写入DTS分区。本实施例将DTS解析为能被内核直接解析的dts.bin文件,并利用dts.bin文件作为DTS的修改中间媒介,通过对dts.bin文件修改来实现DTS修改,不仅实现DTS的实时修改,支持不同设备,满足各种使用场景需求,而且修改流程简单,系统工作量小,不会对原生系统造成影响。本专利技术的一个特定的实施例中,所述获取保存DTS数据二进制格式的dts.bin文件,包括:判断是否存在dts.bin文件,如果不存在dts.bin文件,生成dts.bin文件。保证能够获取到dts.bin文件,提高DTS修改的可靠性。本专利技术的一个特定的实施例中,所述获取保存DTS数据二进制格式的dts.bin文件,包括:启动引导加载程序,判断是否存在dts.bin文件;如果不存在,生成dts.bin文件,然后启动操作系统;如果存在,启动操作系统。引导加载程序启动后,需要将DTS传递给内核,在引导加载程序启动过程获取DTS数据的二进制格式文件dts.bin文件,能够简化工作流程。本专利技术的一个特定的实施例中,所述生成dts.bin文件为利用设备树编译器对DTS进行编译得到二进制格式的dts.bin文件。充分利用引导加载程序,减少其他程序添加,简化工作流程。本专利技术的一个特定的实施例中,所述dts.bin文件和DTS保存在系统存储空间的不同分区中。dts.bin文件是DTS的修改存储介质,分开保存,可以保证不影响当前系统的正常运行,降低风险。本专利技术的一个特定的实施例中,所述加载DTS的修改内容的方式包括以下至少一项:加载目标设备的硬件配置,并将所述目标设备的硬件配置与DTS对比,得到所述修改内容;或从修改请求中获取用户输入的DTS的修改内容;或从修改请求中获取用户输入的DTS的修改内容,并将用户输入的DTS的修改内容与DTS对比,得到最终的所述修改内容。本专利技术的一个特定的实施例中,在所述通过管理服务接口解析修改内容,并将修改内容同步至dts.bin文件前,还包括判断是否进入DTS修改;如果进入DTS修改,通过管理服务接口解析修改内容,并将修改内容同步至dts.bin文件;否则,操作系统保持正常工作。由于本专利技术的DTS修改可以随时进行,在开始DTS修改前,进行判断提示,可以避免DTS修改对系统上正在运行的程序造成影响,提高用户体验感。本专利技术的另一个特定的实施例中,在所述通过管理服务接口解析修改内容,并将修改内容同步至dts.bin文件前,还包括判断是否进行dts.bin文件修改;如果进行dts.bin文件修改,通过管理服务接口解析修改内容,并将修改内容同步至dts.bin文件;如果不进行dts.bin文件修改,判断是否重启操作系统;如果重启,根据同步后的dts.bin文件生成DTS,写入DTS分区;否则,操作系统恢复正常工作。这是判断提示,可以避免DTS修改对系统上正在运行的程序造成影响,提高用户体验感。根据本专利技术的第三方面,提供了一种DTS修改的装置,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如包括本专利技术第三方面任一种实施方式的一种DTS修改的方法。本专利技术的第三方面,提供了计算机可读存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令用于执行本专利技术第三方面任一种实施方式的一种DTS修改的方法。本专利技术上述技术方案中的一个技术方案至少具有如下优点或有益效果之一:将DTS解析为能被内核直接解析的dts.bin文件,并利用dts.bin文件作为DTS的修改中间媒介,通过对dts.bin文件修改来实现DTS修改,不仅实现DTS的实时修改,支持不同设备,满足各种使用场景需求,而且修改流程简单,系统工作量小,不会对原生系统造成影响。附图说明图1是本专利技术实施例提供的一种DTS修改的方法的流程图;图2是本专利技术实施例中步骤S100的具体流程图;图3是本专利技术实施例中系统存储空间分区示意图;图4是本专利技术实施例中步骤S300的具体流程图;图5是本专利技术实施例提供的一种DTS修改的装置的结构框图。具体实施方式下面详细描述本专利技术的实施方式,实施方式的示例在附图中示出,其中相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本专利技术,而不能理解为对本专利技术的限制。下文的公开提供了许多不同的实施方式或例子用来实现本专利技术的不同方案。参照图1所示,为本专利技术实施例提供的一种DTS修改的方法,包括以下步骤:步骤S100、获取保存DTS数据二进制格式的dts.bin文件(能够被操作系统内核直接解析)。步骤S200、加载DTS的修改内容和解析服务;在本专利技术的一实施例中,本文档来自技高网...

【技术保护点】
1.一种DTS修改的方法,其特征在于,包括以下步骤:/n获取保存DTS数据二进制格式的dts.bin文件;/n加载DTS的修改内容和解析服务;/n通过管理服务接口解析所述修改内容,并将所述修改内容同步至dts.bin文件;/n根据同步后的dts.bin文件生成DTS,写入DTS分区。/n

【技术特征摘要】
1.一种DTS修改的方法,其特征在于,包括以下步骤:
获取保存DTS数据二进制格式的dts.bin文件;
加载DTS的修改内容和解析服务;
通过管理服务接口解析所述修改内容,并将所述修改内容同步至dts.bin文件;
根据同步后的dts.bin文件生成DTS,写入DTS分区。


2.根据权利要求1所述的方法,其特征在于,所述获取保存DTS数据二进制格式的dts.bin文件,包括:
判断是否存在dts.bin文件,如果不存在dts.bin文件,生成dts.bin文件。


3.根据权利要求2所述的方法,其特征在于,所述获取保存DTS数据二进制格式的dts.bin文件,包括:
启动引导加载程序,判断是否存在dts.bin文件;
如果不存在,生成dts.bin文件,然后启动操作系统;
如果存在,启动操作系统。


4.根据权利要求2所述的方法,其特征在于,所述生成dts.bin文件为利用设备树编译器对DTS进行编译得到二进制格式的dts.bin文件。


5.根据权利要求1所述的方法,其特征在于,所述dts.bin文件和DTS保存在系统存储空间的不同分区中。


6.根据权利要求1所述的方法,其特征在于,所述加载DTS的修改内容的方式包括以下至少一项:
加载目标设备的硬件配置,并将所述目标设备的硬件配置与DTS对比,得到所述修改内容;或
从...

【专利技术属性】
技术研发人员:叶友鑫朱振华
申请(专利权)人:珠海全志科技股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1