标签:
杂谈 |
一、准备工作
1-1. uboot,平台以及编译环境
平台 : iTop-4412
uboot版本 : 2015.04
编译器版本 : arm-none-linux-gnueabi-xxx, 4.8.3
操作系统 : CentOS 6.6
uboot下载地址: ftp://ftp.denx.de/pub/u-boot/, 挂了VPN才下来的,桑心啊!
iTop-4412介绍: http://www.topeetboard.com/Product/iTOP4412-ss.html
二、移植
2-1. 修改顶层Makefile
CROSS_COMPILE = arm-none-linux-gnueabi-
2-2. 复制board
1、进入board子目录下的samsung子目录,复制trats2文件夹为iTop4412。
2、进入iTop4412子目录,修改trats2.c为iTop4412.c。
3、修改Makefile,将trats2改为iTop4412。
2-3. 修改板子相应配置
1、从源码根目录下进入include/configs目录,复制trats2.h为iTop4412.h。
2、从源码根目录下进入configs目录,复制trats2_defconfig为iTop4412_defconfig。
3、修改iTop4412_defconfig,将CONFIG_DEFAULT_DEVICE_TREE="exynos4412-trats2"改为
CONFIG_DEFAULT_DEVICE_TREE="exynos4412-iTop4412"。
2-4. 增加自己的Device Tree Source
1、从源码根目录下进入arch/arm/dts目录,复制exynos4412-trats2.dts exynos4412-iTop4412.dts。
2、修改当前目录下的Makefile文件,将
dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \ exynos4210-smdkv310.dtb \ exynos4210-universal_c210.dtb \ exynos4210-trats.dtb \ exynos4412-trats2.dtb \ exynos4412-odroid.dtb修改成
dtb-$(CONFIG_EXYNOS4) += exynos4210-origen.dtb \ exynos4210-smdkv310.dtb \ exynos4210-universal_c210.dtb \ exynos4210-trats.dtb \ exynos4412-trats2.dtb \ exynos4412-iTop4412.dtb \ exynos4412-odroid.dtb
2-5. 制作顶层.config文件
1、在源码根目录下使用命令make menuconfig。
2、先配置基本的,Architecture select 选项选择 ARM architecture,
下面architecture 选项的子选项 Target select 选择 Samsun EXYNOS
EXYNOS board select选项选择 Exynos4412 Trat2 board。
3、在Device Tree Control选项下,y(yes)Run-time configuration via Device Tree,选择
Provider of DTB for control 为 Embedded DTB for DT control,
Default Device Tree for DT control选项下输入exynos4412-iTop4412,退出。
在arch/arm/cpu/armv7/exynos/Kconfig文件中添加
config TARGET_ITOP4412
bool “Exynos4412 iTop board”
在arch/arm/cpu/armv7/exynos/Kconfig末尾添加
source “board/samsung/iTop4412/Kconfig”
把Kconfig文件中的SYS_BOARD和SYS_CONFIG_NAME都设为iTop4412,结果如下
|
if TARGET_ITOP4412 CONFIG SYS_BOARD default “iTop4412” CONFIG SYS_VENDOR default “samsung” CONFIG SYS_CONFIG_NAME default “iTop4412” |
然后执行 make iTop4412_menuconfig即可生成对应的.config,步骤4可以省略
(搞得越来越像内核了,衰
2-6、在源码根目录下使用命令vim .config,修改.config文件。
将CONFIG_SYS_BOARD="trats2" 修改成CONFIG_SYS_BOARD="iTop4412";
将CONFIG_SYS_CONFIG_NAME="trats2"修改成CONFIG_SYS_CONFIG_NAME="iTop4412";
将CONFIG_DEFAULT_DEVICE_TREE=""修改成CONFIG_DEFAULT_DEVICE_TREE="exynos4412-iTop4412"。
2-7、make生成u-boot.bin,刷刷刷,搞定
参考文献:
[1] u-boot-2015-01移植笔记,
http://wenku.baidu.com/link?url=-9TAi40Q4uJlpNi5XwyhQ49_6rgXcI41QIwRpcmBBThF1rK6

加载中…