ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

u-boot移植步骤

2022-01-09 15:34:08  阅读:165  来源: 互联网

标签:emmc Kconfig 步骤 boot arch SYS board CONFIG 移植


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

4 添加新板的选择入口      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.

  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

When adding a new board, the following steps are generally needed:
 [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










 

标签:emmc,Kconfig,步骤,boot,arch,SYS,board,CONFIG,移植
来源: https://www.cnblogs.com/liujunhuasd/p/15780568.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有