OpenHarmony富设备移植指南(1)导言 原创 精华

Diemit
发布于 2023-1-31 17:33
浏览
14收藏

开篇引言

在研究学习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

OpenHarmony富设备移植指南(1)导言-鸿蒙开发者社区

标准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,设备(安卓手机,平板,开发板等)相关知识


©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
已于2023-1-31 17:33:11修改
15
收藏 14
回复
举报
7条回复
按时间正序
/
按时间倒序
红叶亦知秋
红叶亦知秋

前排插眼,感觉后续很有东西

回复
2023-1-31 17:38:23
离北况归
离北况归
3
回复
2023-1-31 21:07:36
皮皮虾233
皮皮虾233 回复了 离北况归
​​ https://gitee.com/organizations/ohos-porting-communities/members/list​​​给大家贴一下大佬的仓库

先关注了

1
回复
2023-2-3 10:34:46
0_a_e
0_a_e

我是一个对Openharmony感兴趣的日本个人开发者,

我发现你的系列文章信息量很大,如果你不介意的话,我想把系列的文章翻译成为日文,然后并明确说明这是您的作品, 我的博客上发布。

如果可以的话,我想请您允许我这样做。

谢谢你阅读这个回复。


2
回复
2023-2-10 01:13:56
Diemit
Diemit 回复了 0_a_e
我是一个对Openharmony感兴趣的日本个人开发者,我发现你的系列文章信息量很大,如果你不介意的话,我想把系列的文章翻译成为日文,然后并明确说明这是您的作品, 我的博客上发布。如果可以的话,我想请您允许我这样做。谢谢你阅读这个回复。

可以啊,到时候在这里给一下链接,我应该可以帮忙校对一下,会点日语

3
回复
2023-2-12 12:58:02
qq584686000f2ad
qq584686000f2ad

大佬你好,我想给小米mix2s移植,但是postmarketOS 列表不支持,怎么办?

回复
2024-5-5 03:53:28
Diemit
Diemit 回复了 qq584686000f2ad
大佬你好,我想给小米mix2s移植,但是postmarketOS 列表不支持,怎么办?

你也在B站问过吧,没有可用的内核和驱动,个人是搞不了的,因为这个是要编译的,要搞移植的话必须有源码,安卓的是用不了的,postmarketOS目前是能找到的有内核源码,有驱动开放的系统了,如果它不支持那没戏了


回复
2024-5-6 22:50:11
回复
    相关推荐