目录
前言
RK3568 Android11在单独调试kernel部分时,不想之前RK3288或者RK3399一样烧入kernel.img和resource.img,而是打包进了boot.img;但在调试时,使用build.sh来每次打包很麻烦,而且比较耗时;
现给出在编译kernel部分时,同时打包成boot.img,这样加快了我们开发的速度;
一、在kernel目录下打包boot.img
Android11不能单独烧入kernel.img和resource.img镜像,需要烧入kernel和resource进行开发调试的,需要生成boot.img;
在kernel目录下将编译生成的kerne.img和resource.img打包到boot.img镜像中;
打包命令:
make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3568_r/boot.img rk3568-evb2-lp4x-v10.img
讲解:
1. BOOT_IMG是指定前置的boot.img,因为boot.img镜像里面不单独只有kernel和resource,还有其他文件,所以要指定个boot.img把新的kernel和resource覆盖进去,boot.img的位置在所编译出来的rockdev/Image-rk3568_r/目录下;
2. rk3568-evb2-lp4x-v10.img是指定所使用的设备树DTS;
3. 打包完后,在kernel目录有boot.img镜像生成,就可以把这个boot.img镜像烧入到机器中进行调试了;
注意:如果不指定BOOT_IMG,会导致在下载后,系统会跑进了Recovery
模式(或者引起其他启动错误),而不是进入正常的启动流程;
二、创建kernel专用编译脚本
调试时,可直接在kernel目录下创建个build.sh编译脚本,在调试时可直接在kernel目录下执行该脚本;编译完了,同时boot.img也生成了,可用电脑烧入工具直接烧入了;
cd kerenl
vi build.sh
在build.sh脚本内编辑以下内容:
#!/bin/sh
make ARCH=arm64 rockchip_defconfig android-11.config && make ARCH=arm64 BOOT_IMG=../rockdev/Image-rk3568_r/boot.img rk3568-evb2-lp4x-v10.img -j120
三、烧入boot.img方法
1. 打开RKDevTool_Release_v2.83或者v2.81版本,并加载下parameter.txt(不需要烧入)加载parameter.txt是为了读取里面分区地址
2. 选择kernel目录下的boot.img
注意是kernel目录下的boot.img,不是rockdev/Image-rk3568_r/boot.img;
3. RK3568机器进入loader模式进行升级
RK3568机器进入loader模式进行升级模式有三种方式:
(1)点击RKDevTool工具里面的 切换 按钮;
(2)上电开机同时按住recovery按键;
(3)在机器进入系统后,使用命令重启进入:reboot loader