瑞芯微RK3568|SDK开发之Kernel编译

1. Kernel手动编译

1.1       kernel查询帮助

使用./build.sh -h kernel查看kernel的详细编译命令如下所示。

SDK2-1.png

图1.1编译内核

上图表示,单独编译kernel固件分为三步,进入kernel目录,选择默认配置文件,编译镜像。

1.2       kernel默认配置

对应平台的默认配置文件由./build.shlunch操作中选择的mk文件决定,如下所示。

瑞芯微RK3568|SDK开发之Kernel编译_第1张图片

图1.2选择SDK配置文件

配置完后,直接查看device/rockchip/rk356x/BoardConfig-rk3568-evb1-ddr4-v10.mk文件,由RK_KERNEL_DEFCONFIG和RK_KERNEL_DEFCONFIG_FRAGMENT决定,如下所示。

瑞芯微RK3568|SDK开发之Kernel编译_第2张图片

图1.3配置文件Kernel部分内容

另外还有RK_KERNEL_DTS指定配置的设备树。

1.3       kernel修改配置

首先导入上面指定的默认配置,操作命令如下:

cd kernel

make ARCH=arm64rockchip_linux_defconfig

进入menuconfig修改内核,命令如下所示。

make ARCH=arm64 menuconfig

进入配置界面如下所示。

瑞芯微RK3568|SDK开发之Kernel编译_第3张图片

图1.4内核配置

输入“/”可以进入menuconfig的搜索功能,如下所示。

瑞芯微RK3568|SDK开发之Kernel编译_第4张图片

图1.5内核查找配置

搜索功能可在复制的配置路径中快速寻找到所需的目标配置,例如输入“dhcp”查看该选项的描述,如下所示。

瑞芯微RK3568|SDK开发之Kernel编译_第5张图片

图1.6目标配置帮助

选项名为IP_PNP_DHCP,在menuconfig的名称由Prompt指定,选项配置的路径由Location指定,选项的依赖关系由Depends on指定。

使用空格键可以修改配置,按ESC键可以退出menuconfig。

1.4       kernel保存默认配置
 

输入以下命令可以覆盖默认配置。

make ARCH=arm64 savedefconfig

cp defconfig arch/arm64/configs/rockchip_linux_defconfig

注:建议覆盖前备份一下原始rockchip_linux_defconfig.
 

1.5       kernel编译固件

进入kernel目录,输入以下命令单独编译内核固件。

make ARCH=arm64rk3568-evb1-ddr4-v10-linux.img -j12

内核的编译结果如下所示。

SDK2-7.png

图1.7编译完成打印


由此看出,内核固件组成部件为:resource.img(由设备树文件dtb、logo图片组成的)+Image(内核代码)。
 

1.6       kernel编译模块


输入以下命令可独立编译ko文件。

make ARCH=arm64 modules

你可能感兴趣的:(服务器,linux,运维)