1 添加开发板默认配置文件
先在 configs 目录下创建默认配置文件,复制已有的xx_emmc_defconfig,然后重命名为 yyy_emmc_defconfig
然后将文件 yyy_emmc_defconfig中的内容改成所需的内容。
2 添加开发板对应的头文件
在 目 录 include/configs 下 添 加 开 发 板 对 应 的 头 文 件 , 复 制include/configs/xx_emmc.h,并重命名为 yyy_emmc_emmc.h
改为头文件内容:
#ifndef __YY_EMMC_CONFIG_H
#define __YY_EMMC_CONFIG_H
3 添加开发板对应的板级文件夹
uboot 中每个板子都有一个对应的文件夹来存放板级文件,比如开发板上外设驱动文件等等。系列芯片的所有板级文件夹都存放在 board/ZZ目录下,在这个目录下
建立个名为 yyy_emmc的文件夹,存放板级驱动文件
1、1、修改 目录下的 Makefile 文件
2、修改 目录下的 Kconfig 文件,修改后的内容示例如下:
示例代码 33.2.3.2 Kconfig 文件
config SYS_BOARD
config SYS_VENDOR
config SYS_SOC
config SYS_CONFIG_NAME
3、修改 yyy_emmc目录下的 MAINTAINERS 文件
修改 MAINTAINERS 文件,修改后的内容如下:
1 yyy_EMMC BOARD
2 M: Peng Fan <peng.fan@nxp.com>
3 S: Maintained
4 F: board/ _emmc/
5 F: include/configs/xx_emmc.h
1、在u-boot-2021.10/arch/<arch>/Kconfig添加ARCH_XXsoc选择,如
config ARCH_NUC97X
bool "Nuvoton MPU Nuc97x platform"
select CPU_ARM926EJS
select DM
source “arch/arm/mach-nuc97x/Kconfig”
2、在arch/<arch>/mach-<soc>/Kconfig.添加板子选择
if ARCH_NUC97X
config SYS_SOC
default "nuc97x"
choice
prompt "Nuvoton Nuc97x board select"
config TARGET_NUC972_ETH2UART
bool "Xin Nuc972 Eth2uart"
endchoice
source "board/nuvoton/eth2uart/Kconfig"
endif
[1] Add a header file include/configs/<target>.h [2] Make sure to define necessary CONFIG_SYS_* in Kconfig: Define CONFIG_SYS_CPU="cpu" to compile arch/<arch>/cpu/<cpu> Define CONFIG_SYS_SOC="soc" to compile arch/<arch>/cpu/<cpu>/<soc> Define CONFIG_SYS_VENDOR="vendor" to compile board/<vendor>/common/* and board/<vendor>/<board>/* Define CONFIG_SYS_BOARD="board" to compile board/<board>/* (or board/<vendor>/<board>/* if CONFIG_SYS_VENDOR is defined) Define CONFIG_SYS_CONFIG_NAME="target" to include include/configs/<target>.h [3] Add a new entry to the board select menu in Kconfig. The board select menu is located in arch/<arch>/Kconfig or arch/<arch>/*/Kconfig. [4] Add a MAINTAINERS file It is generally placed at board/<board>/MAINTAINERS or board/<vendor>/<board>/MAINTAINERS [5] Add configs/<target>_defconfig