rk3399pro移植openharmony3.0移植笔记1
说明
通过网上现有资料和文章,我在rk3399pro上移植openharmony3.0标准版。并支持屏幕显示,触摸,HDF驱动框架,支持使用HDF驱动gpio点亮led。文章主要是对网上移植资料的整理和移植步骤的说明。移植过程中还会小问题,这里不做说明,只介绍大体过程,对移植过程做记录,方便后期查看。
环境介绍
修改挂载镜像关键文件
openharmony/base/startup/init_lite/services/etc/init.cfg
"mount ext4 /dev/block/platform/fe330000.sdhci/by-name/oem /vendor wait rdonly barrier=1",
"mount ext4 /dev/block/platform/fe330000.sdhci/by-name/userdata /data wait nosuid nodev noatime barrier=1,data=ordered,noauto_da_alloc"
屏幕
我使用的是1280x800的十寸的mipi屏。
openharmony/foundation/graphic/standard/frameworks/wm/src
修改以上内容,否则无法进入系统ui界面。
触摸
openharmony/third_party/eudev/rules.d/touchscreen.rules
ATTRS{
name}=="ft5x0x_ts_2", ENV{
ID_INPUT}="1", ENV{
ID_INPUT_TOUCHSCREEN}="1"
ATTRS{
name}=="VSoC keyboard", ENV{
ID_INPUT}="1", ENV{
ID_INPUT_KEYBOARD}="1"
DRIVERS=="hid-multitouch", ENV{
ID_INPUT}="1", ENV{
ID_INPUT_TOUCHSCREEN}="1"
在板子上使用cat /proc/bus/input/devices查看触摸屏名称,这里ATTRS{name}==指定自己触摸屏的名字。
内核
内核使用的4.4版本的,在.config添加以下配置项,打开虚拟终端设备,否则屏幕无法点亮。
CONFIG_VT=y CONFIG_CONSOLE_TRANSLATIONS=y CONFIG_VT_CONSOLE=y CONFIG_VT_CONSOLE_SLEEP=y CONFIG_HW_CONSOLE=y CONFIG_VT_HW_CONSOLE_BINDING=y
内核的编译:一开始可以将内核单独编译使用make ARCH=arm64 CROSS_COMPILE=/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- rd3399pro-android.img -j12
CROSS_COMPILE#指明交叉编译工具的路径和使用的工具。
