Rockchip Uboot 平台配置
- 本文主要介绍 RK Uboot 上与平台相关的重要配置文件以及配置项。
配置文件
// 各平台公共文件
./arch/arm/mach-rockchip/Kconfig
./include/configs/rockchip-common.h
// 各平台独有,以RK3399为例
./include/configs/rk3399_common.h
./include/configs/evb_rk3399.h
./configs/rk3399_defconfig
配置说明
-
rockchip-common.h、rkxx_common.h、evb_rkxx.h 中定义的重要配置:
配置 配置说明 RKIMG_DET_BOOTDEV 存储类型探测命令,以逐个扫描的方式探测当前的存储设备类型 RKIMG_BOOTCOMMAND kernel 启动命令 ENV_MEM_LAYOUT_SETTINGS 固件加载地址,包括 ramdisk/fdt/kernel PARTS_DEFAULT 默认的 GPT 分区表 ROCKCHIP_DEVICE_SETTINGS 外设相关命令,主要是指定 stdio(一般会包含显示模块启动命令) BOOTENV distro 方式启动 linux 时的启动设备探测命令 CONFIG_SYS_MALLOC_LEN malloc 内存池大小 CONFIG_SYS_TEXT_BASE U-Boot 运行的起始地址 CONFIG_BOOTCOMMAND 启动命令,一般定义为 RKIMG_BOOTCOMMAND CONFIG_PREBOOT 预启动命令,在 CONFIG_BOOTCOMMAND 前被执行 CONFIG_SYS_MMC_ENV_DEV MMC 作为 ENV 存储介质时的 dev num,一般是 0 -
以 RK3399 为例进行说明。
-
./include/configs/rockchip-common.h:
#define RKIMG_DET_BOOTDEV \ // 动态探测当前的存储类型 "rkimg_bootdev=" \ #define RKIMG_BOOTCOMMAND \ "boot_android ${devtype} ${devnum};" \ // 启动android格式固件 "bootrkp;" \ // 启动RK格式固件 "run distro_bootcmd;" // 启动linux固件
-
./include/configs/rk3399_common.h:
#define ENV_MEM_LAYOUT_SETTINGS \ // 固件的加载地址 "scriptaddr=0x00500000\0" \ #define CONFIG_EXTRA_ENV_SETTINGS \ ENV_MEM_LAYOUT_SETTINGS \ "partitions=" PARTS_DEFAULT \ // 默认的GPT分区表 BOOTENV // 启动linux时的启动设备探测命令 #define CONFIG_PREBOOT // 在CONFIG_BOOTCOMMAND之前被执行的预启动命令
-
./include/configs/evb_rk3399.h:
#define CONFIG_BOOTCOMMAND RKIMG_BOOTCOMMAND // 定义启动命令(设置为RKIMG_BOOTCOMMAND) #define ROCKCHIP_DEVICE_SETTINGS \ // 使能显示模块 "stdout=serial,vidconsole\0" \