摘自:http://blog.csdn.net/zsy2020314/article/details/9329825
1. 删改U-boot代码结构
把不用到的和与我们s5pv210移植无关的硬件平台代码统统删除,眼不见为净。这样代码看起来就干净利落多了。
1.1.进入arch目录,删掉除arm以外的目录
处理前:
图1
处理后:
图2
1.2.进入arch/arm目录,将dts和imx-common这两个目录也一并删除,因为基本不会用到。
处理前:
图3
处理后:
图4
1.2. 接着进入arch/arm/cpu目录,删掉除armv7以外的目录。
处理前:
图5
处理后;
图6
1.3. 进入arch/arm/cpu/armv7目录,保留s5p-common和s5pc1xx目录和armv7目录下的代码文件,其余目录删掉。
处理前:
图7
处理后:
图8
1.4. 好,现在返回并进入arch/arm/include/asm目录下,保留arch-s5pc1xx和proc-armv目录以及所有头文件(虽然头文件有些也可以删除,但是无关大碍,就保留下来吧),其他目录全部删除。
处理前:
图9
处理后:
图10
1.5. 处理完arch目录后我们返回到U-boot源码的根目录,然后进入board目录,保留samsung目录,其他的硬件平台目录全部删除,我们移植的对象是samsung的硬件平台,别的平台根本不许要关心。
处理前:
图11
处理后:
图12
1.6. 进入board/samsung目录,保留common和smdkc100目录,后面我们将以smdkc100为模板进行我们的TQ210开发板的U-boot移植。其他目录一并删除。
处理前:
图13
处理后:
图14
1.7.处理完board目录后我们返回U-boot源码的根目录,然后进入inlcude/configs目录,仅保留smdkc100.h,其他的目录和头文件均删除。
处理前:
图15
处理后:
图16
至此,我们删改目录的工作就完成了。接下来我们要开始定制属于我们自己的配置。
2. 更改名称
2.1. 当看到makexxx_config的时候,自己移植的U-boot,我们也要有自己的config,这才像话。我们先修改boards.cfg。删掉一些无关平台的配置参数,留下smdkc100,然后我们直接复制smdkc100的配置,并把Target和Boardname改成自己想要的名称,笔者命名为zsy210,修改后如图17所示。
图17
2.2.进入include/configs目录,把smdkc100复制一份并命名为zsy210.h。
图18
2.3. 进入board/samsung/目录,复制smdkc100目录并命名为zsy210
图19
2.4. 进入zsy210目录,把smdkc100.c重命名为zsy210.c。
图20
2.5. 打开zsy210目录下的Makefile文件,把smdkc100.o替换为zsy210.o。
图21
3.测试修改
如果上述修改无误的话,我们可以试着编译一下,可以顺利编译成功。进入终端,直接获取超级用户权限,方法是#su然后输入密码回车即可。编译方法是:
#cd U-boot源码顶层目录
# make distclean
# make zsy210_config
# make -j4
查看终端打印的信息,如果没有报错,并且源码目录下生成了u-boot.bin等文件,那就说明编译成功了!
图22
图23