rk3399pro移植openharmony3.0移植笔记2

说明

本篇文章介绍将rk3399pro内核放入鸿蒙源码并打上hdf驱动框架补丁,linux内核移植openharmony的hdf驱动子系统。

环境介绍

使用的内核为4.4.185版本的,openharmony3.0源码编译环境使用的docker是swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker-standard:0.0.5,在docker环境中输入以下命令编译完整openharmony3.0源码。

./build.sh --product-name Hi3516DV300 

以下步骤皆在docker环境下完成。

内核打hdf补丁

补丁文件链接
将patch_hdf.sh拷贝到OpenHarmony/drivers/adapter/khdf/linux目录下。
再将rk3399pro内核源码放到out/KERNEL_OBJ/kernel/src_tmp/linux/下。

export PROJ_ROOT=/home/openharmony/ #docker环境下openharmony源码根目录路径

#打补丁
$PROJ_ROOT/drivers/adapter/khdf/linux/patch_hdf.sh \
$PROJ_ROOT  # 指定工程根目录路径 \
$PROJ_ROOT/out/KERNEL_OBJ/kernel/src_tmp/linux/kernel4.4  # 打补丁的内核目录路径 \
$PROJ_ROOT/kernel/linux/patches/linux-4.19/hi3516dv300_patch/hdf.patch  # HDF补丁文件

以上补丁存在部分文件修改存在问题,根据错误提示内容自行在相应文件中修改添加内容。
添加完成后在.config文件中添加编译选项。

CONFIG_DRIVERS_HDF=y
CONFIG_HDF_SUPPORT_LEVEL=2
CONFIG_DRIVERS_HDF_PLATFORM=y
CONFIG_DRIVERS_HDF_TEST=y

编译内核

export PROJ_ROOT=/home/openharmony/
export PRODUCT_PATH=vendor/hisilicon/Hi3516DV300
export PATH=$PROJ_ROOT/prebuilts/clang/ohos/linux-x86_64/llvm/bin:$PROJ_ROOT/prebuilts/gcc/linux-x86/aarch64/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/:$PATH
export MAKE_OPTIONS="ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- CC=clang HOSTCC=clang"
make ${MAKE_OPTIONS} rd3399pro-android.img -j12

开始编译,中间会遇到一些文件的编译存在问题,根据问题提示自行修改代码。
等待编译完成,打包镜像,我使用的是rk3399pro源码中提供的mkbootimg来打包。

python3 mkbootimg/mkbootimg --kernel kernel/arch/arm64/boot/Image --second kernel/resource.img --os_version 9 --header_version 1 --os_patch_level 2019-08-05 --cmdline "console=ttyFIQ0 androidboot.baseband=N/A androidboot.wificountrycode=US androidboot.veritymode=enforcing androidboot.hardware=rk30board androidboot.console=ttyFIQ0 firmware_class.path=/vendor/etc/firmware init=/init rootwait ro init=/init root=PARTUUID=af01642c-9b84-11e8-9b2a-234eb5e198a0 loop.max_part=7 androidboot.selinux=permissive" --output /home/xf/work/boot.img

打包完成后在我指定的目录下生成的boot.img烧写到板子上即可。

结果截图

uname -a可以看到我的内核版本是4.4,在板子的/dev目录下存在HDF设备,移植成功。
在这里插入图片描述

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值