在研究学习OpenHamony移植的路上,文档资料的缺失让我倍感痛苦,如今移植树莓派4b以及小米6的成功让我确信我的移植方法是可行的,在此分享经验给大家。因移植涉及各方各面,单篇文章无法一次讲完,我需要慢慢整理出来,尽我最大的努力把移植流程讲清,知识点理清,这需要一段时间,人无完人如文章有疏漏的地方请大家谅解,也欢迎大家进行指正。
1,确认你要移植的设备可以解锁刷机
2,确认你的设备有TWRP类似的第三方Recovery,方便刷机
3,确认有可用的内核源码版本,不是内核源码开源就能移植的,OpenHarmony的内核目前为止是以标准Linux5.10内核为基础的,4.19已不再支持,移植时需要你的设备有5.10或者5.10以上的内核源码,理论上其他版本也可以,但是要求你是内核大神,精通各个版本内核的变动,并了解驱动如何升级降级适配。
4,确认设备驱动源码、固件是否可以获取到
快速评估:访问Devices - postmarketOS,查看设备是否有postmarketOS支持,比如我移植的设备是小米6,属于testing分类,大部分功能都已经是可用状态
Xiaomi Mi 6 (xiaomi-sagit) - postmarketOS
标准Linux内核源码,驱动固件,启动配置等等都可以统一从postmarketOS获取,比较方便,所以我采用了postmarketOS的源码。
1,准备OpenHarmony代码编译环境,下载源码,比如我采用的是3.2Beta3版本;(社区有大量帖子介绍OH环境安装,在此不再重复介绍)
2,官方设备(rk3568)编译一次确认环境配置正确;
3,准备postmarketOS编译环境,并进行一次编译;(方便获取boot配置,内核配置,驱动固件等)
4,利用第三方内核移植加入OH内核特性的方式,移植适配内核;
5,移植适配OH的init启动脚本,图形渲染框架;
6,编译OH系统刷机文件;
7,利用解包打包工具,打包出自己的boot.img;
8,利用twrp刷入boot.img,system.img,vendor.img实现OH的启动。
1,操作系统相关知识,设备启动相关知识;
2,Linux内核相关知识,驱动相关知识;
3,OpenHarmony系统相关知识;
4,Linux操作系统命令相关知识;
5,设备(安卓手机,平板,开发板等)相关知识。
(文章作者:开鸿智谷技术团队成员-许源申)
全部0条评论
快来发表一下你的评论吧 !