拿到一个uboot 后,我都想添加一个属于自己的board文件以及include/configs/*.h 文件。

如何添加这个些文件,今天来记录一下。



复制一份你所参考的板级文件,比如说board/vscom/baltos/ 复制为board/sbc7109 文件夹
修改board/sbc7109/Kconfig 里面的内容

    if TARGET_AM335X_SBC7109   // 这个是等下make menuconfig 指定的一个宏

    config SYS_BOARD            //指定你的board 文件
default "sbc7109" config SYS_SOC //指定你的 soc 文件
default "am33xx" config SYS_CONFIG_NAME //指定你的 include/configs/am335x_sbc7109.h 为配置头文件
default "am335x_sbc7109" config CONS_INDEX
int "UART used for console"
range 1 6
default 1
help
The AM335x SoC has a total of 6 UARTs (UART0 to UART5 as referenced
in documentation, etc) available to it. Depending on your specific
board you may want something other than UART0. endif



修改完这个文件之后,将board/sbc7109/Kconfig 添加到arch/arm/Kconfig
添加如下内容:

    source "board/sbc7109/Kconfig"

在最后面endmenu 之前添加。



在arch/arm/Kconfig 里面添加:

    377 config TARGET_AM335X_SBC7109        //这个宏就是上面那个 if TARGET_AM335X_SBC7109 的前置条件
378 bool "Support am335x_sbc7109"
379 select CPU_V7
380 select SUPPORT_SPL
381 select DM
382 select DM_SERIAL
383 select DM_GPIO



复制 include/configs/baltos.h 为include/configs/am335x_sbc7109.h

    修改include/configs/am335x_sbc7109.h 里面的一个宏定义:
#define CONFIG_SYS_LDSCRIPT "board/sbc7109/u-boot.lds"



修改board/sbc7109/u-boot.lds 里面的一个内容

     34     .text :
35 {
36 *(.__image_copy_start)
37 *(.vectors)
38 CPUDIR/start.o (.text*)
39 board/sbc7109/built-in.o (.text*)
40 *(.text*)
41 }



复制 configs/am335x_baltos_defconfig 为 configs/am335x_sbc7109_defconfig

    修改configs/am335x_sbc7109_defconfig 里面的内容,如下:
将 CONFIG_TARGET_AM335X_BALTOS=y 替换为:
CONFIG_TARGET_AM335X_SBC7109=y

修改对应board/sbc7109/MAINTAINERS 里面的内容

    BALTOS BOARD
M: Yegor Yefremov <yegorslists@googlemail.com>
S: Maintained
F: board/sbc7109/
F: include/configs/am335x_sbc7109.h
F: configs/am335x_sbc7109_defconfig



ok ,做完上面的动作,在u-boot 根目录进行 make am335x_sbc7109_defconfig


cat .config

     23 CONFIG_SYS_ARCH="arm"
24 CONFIG_SYS_CPU="armv7"
25 CONFIG_SYS_SOC="am33xx"
26 CONFIG_SYS_BOARD="sbc7109"
27 CONFIG_SYS_CONFIG_NAME="am335x_sbc7109"



再进行编译

    make -j2



完成

u-boot 2016.05 添加自己的board 以及config.h的更多相关文章

  1. u-boot 2016.05 添加u-boot cmd

    记录一下如何在u-boot 添加一个自己想要的命令. 首先来看一下宏,include/command.h 218 #define U_BOOT_CMD(_name, _maxargs, _rep, _ ...

  2. u-boot 2011.09 使用自己的board 以及config.h

    一个新的方案,用的UBOOT 可能和上一个方案是同一个,但是配置有可能不一样,今天记录一下通过修改配置文件使用新的 board 文件以及 config.h 进入 u-boot 2011.09 // 打 ...

  3. 黑马_13 Spring Boot:05.spring boot 整合其他技术

    13 Spring Boot: 01.spring boot 介绍&&02.spring boot 入门 04.spring boot 配置文件 05.spring boot 整合其他 ...

  4. sublime text 3 license 2016.05

    补充:2016.05 最近经过测试,3个注册码在新版3103的sublime上已经不可用了. 现补充两枚新版的license key: -– BEGIN LICENSE -– Michael Barn ...

  5. 【博客美化】05.添加GitHub链接

    博客园美化相关文章目录: [博客美化]01.推荐和反对炫酷样式 [博客美化]02.公告栏显示个性化时间 [博客美化]03.分享按钮 [博客美化]04.自定义地址栏logo [博客美化]05.添加Git ...

  6. 2016/05/13 Thinkphp 3.2.2 ①数据添加 ②收集表单数据入库操作 ③数据修改操作

    ①数据查询 add() 该方法返回被添加的新记录的主键id值 两种方式实现数据添加 数组方式数据添加 $goods = D(“Goods”); $arr = array(‘goods_name’=&g ...

  7. spring boot 2.0添加对fastjson的支持

    首先引入fastjson的maven依赖: <dependency> <groupId>com.alibaba</groupId> <artifactId&g ...

  8. spring boot给http添加正向代理

    http://blog.csdn.net/jaune161/article/details/44198599http://46aae4d1e2371e4aa769798941cef698.devpro ...

  9. “耐撕”团队2016.05.11站立会议

    1. 时间 18:15--18:35     共计20分钟 2. 人员 Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:ht ...

随机推荐

  1. [Spring MVC] - JSP + Freemarker视图解释器整合(转)

    Spring MVC中如果只使用JSP做视图,可以使用下面这段即可解决: <!-- 视图解释类 --> <bean class="org.springframework.w ...

  2. 转发:微信小程序-template模板使用

    转载于CSDN--[向朔1992]处.(部分内容根据实际情况有所修改) 小程序实现主页面调用次级页面的wxml页面内容,如下图:   根据上图,我们可以将图片和图片信息作为一个goodsList.wx ...

  3. IDEA删除项目

    IDEA没有eclipse的右键直接在磁盘delete整个项目的功能,使用IDEA删除项目需要按照如下步骤: step1:右击项目——>Remove Module 之后会出现提示框如下: 意思是 ...

  4. GitLab Notification Emails

    GitLab has a notification system in place to notify a user of events that are important for the work ...

  5. iOS获取手机型号,Swift获取手机型号(类似iphone 7这种,检测机型具体型号)

    获取手机设备信息,如name.model.version等, 但如果想获取具体的手机型号,如iphone5.5s这种,就需要如下这种(含Swift和OC两种写法) Swift建议添加到extensio ...

  6. ORM轻量级框架---ActiveAndroid

    ORM即Object-Relational Mapping,对象关系映射.简单理解就是把我们Java的对象与数据库里面的记录进行映射,可以把实体对象持久化到数据库中,也能把查询到的记录映射成Java对 ...

  7. Android Developers:使ListView滑动流畅

    流畅滑动ListView的关键是保持应用程序的主线程(UI线程)从免于繁重处理.确保你的任何硬盘访问,网络访问或者SQL访问在一个单独的线程中.为了测试你的应用个程序的状态,你能启动StrictMod ...

  8. memset(&a, 0, sizeof(struct customer))函数

    memset(&a, 0, sizeof(struct customer))函数定义在memory.h中,用于给指定的内存区域赋值,在该语句中,&a指定待赋值的内存首地址,0是要赋的值 ...

  9. python学习笔记——multiprocessing 多进程组件-队列Queue

    1 消息队列 1.1 基本语法 消息队列:multiprocessing.Queue,Queue是对进程安全的队列,可以使用Queue实现对进程之间的数据传输:还有一个重要作用是作为缓存使用. Que ...

  10. "Only the original thread that created a view hierarchy can touch its views.” 解决方法

    这个主要总是,开启的线程和 UI 线程(主线程)不是同一个线程.可以Runnable方式避免,如下例所示就可以解决这个问题了. public static void updateText(Activi ...