uboot凭什么用我们自己的板子
以rv1106为例
/uboot/board/rockchip/evb_rv1106/Kconfig #Kconfig选项
/uboot/board/rockchip/evb_rv1106/Makefile #配置了编译对象 obj-y += evb_rv1106.o
/uboot/board/rockchip/evb_rv1106/evb_rv1106.c #源码
在Kconfig配置了
if TARGET_EVB_RV1106
config SYS_BOARD
default "evb_rv1106"
config SYS_VENDOR
default "rockchip"
config SYS_CONFIG_NAME
default "evb_rv1106"
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
endif
又在uboot配置文件开启了
CONFIG_TARGET_EVB_RV1106=y
所以通过SYS_BOARD ,SYS_VENDOR,SYS_CONFIG_NAME拼接
添加自己的板子
- 在
board/rockchip/下新建目录(如board/rockchip/myboard/) - 新建 Kconfig,定义
TARGET_MYBOARD,设置SYS_BOARD/SYS_VENDOR - 新建
include/configs/myboard.h - 在
arch/arm/mach-rockchip/rv1106/Kconfig中添加source "board/rockchip/myboard/Kconfig" - 新建
config-uboot/myboard_defconfig,设置CONFIG_TARGET_MYBOARD=y