发 帖  
原厂入驻New

[经验] 如何在uboot里添加自己的板子

2020-3-5 23:07:08  2348 uboot
分享
1
我们为什么要在uboot里添加自己的开发板因为厂家提供的uboot是基于厂家自己的开发板 不适用我们自己的板子所以我们要更改厂家的uboot使其适用于自己的板子
一下是以nxp的I.MX6ULL使用emcc,ddr3为例
1:添加默认配置文件
复制/       configs/目录下的mx6ull_14x14_evk_emmc_defconfig到同一目录下重命名为mx6ull_14x14_cyl_emmc_defconfig 文件名可以根据自己的板子任意命名 注:14x14为mx6ull的尺寸
命令如下:
在uboot文件目录输入
cd configs
cpmx6ull_14x14_evk_emmc_defconfig mx6ull_alientek_emmc_defconfig
然后将文件里的mx6ull_14x14_evk_emmc更改为mx6ull_14x14_cyl_emmc_defconfig
示例代码如下

1 CONFIG_SYS_EXTRA_OPtiONS="IMX_CONFIG=board/freescale/mx6ull_cyl_
emmc/imximage.cfg,MX6ULL_EVK_EMMC_REWORK"
2 CONFIG_ARM=y
3 CONFIG_ARCH_MX6=y
4 CONFIG_TARGET_MX6ULL_CYL_EMMC=y
5 CONFIG_CMD_GPIO=y

2:添加头文件
在/include/configs目录下复制mx6ullevk.h重命名为mx6ull_lyc_emmc.h
命令如下
cpinclude/configs/mx6ullevk.h mx6ull_cyl_emmc.h
将条件编译#IFndef  __MX6ULLEVK_CONFIG_H
          #define  __MX6ULLEVK_CONFIG_H
改为      #ifndef __MX6ULL_CYL_EMMC_CONFIG_H
          #define  __MX6ULL_CYL_EMMC_CONFIG_H

3添加板级文件夹
在/board/freescale目录下复制mx6ullevk文件夹 重命名为mx6ull_cyl_emmc
进入mx6ull_cyl_emmc将其中的mx6ullevk.c更改为mx6ull_cyl_emmc
命令如下
cd board/freescale/
cp mx6ullevk/ -r mx6ull_cyl_emmc

cd mx6ull_alientek_emmc
mv mx6ullevk.c mx6ull_cyl_emmc.c
4修改文件
4.1  修改/boaaf/freescale/mx6ull_cyl_emmc下的Makefile
第 6 行的 obj-y,改为 mx6ull_alientek_emmc.o,这样才会编译 mx6ull_alientek_emmc.c
这个文件

4.2 修改/boaaf/freescale/mx6ull_cyl_emmc下的imxmage.cfg文件
将PLUGINboard/freescale/mx6ullevk/plugin.bin 0x00907000改为
PLUGIN board/freescale/mx6ull_cyl_emmc/plugin.bin 0x00907000

4.3修改/boaaf/freescale/mx6ull_cyl_emmc下的Kconfig文件
修改后如下
1     if TARGET_MX6ULL_CYL_EMMC
2
3    config SYS_BOARD
4      default "mx6ull_cyl_emmc"
5
6      config SYS_VENDOR
7      default "freescale"
8
9    config SYS_SOC
10   default "mx6"
11
12   config SYS_CONFIG_NAME
13   default "mx6ull_cyl_emmc"
14
15 endif

4.4修改/boaaf/freescale/mx6ull_cyl_emmc下的MAINTAINERS文件
改为
MX6ULL_CYL_EMMC BOARD
M: Peng Fan <peng.fan@nxp.com>
S: Maintained
F: board/freescale/mx6ull_cyl_emmc/
F: include/configs/mx6ull_cyl_emmc.h

4.5 修改/arch/arm/cpu/armv7/mx6/Kconfig
在207加入
config TARGET_MX6ULL_CYL_EMMC
bool "Support mx6ull_cyl_emmc"
select MX6ULL
select DM
select DM_THERMAL
在最后一行加入
source"board/freescale/mx6ull_cyl_emmc/Kconfig"

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
发经验
关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表