技术标签: u-boot s5pv210 s5pv210--UBOOT移植 cortexA8 移植
转载请注明地址: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
文章浏览阅读524次。win+r 输入cmd进入命令提示符用dir调出所有任务cd 可以进入一个指定目录cd .. 穿越或返回上一层文件名有空格不连贯就是蓝标 箭头所指,没有空格的就是红色所指它们的区别在于有空格是有双引号的,没有空格是没有的切换盘的话 直接盘后面加冒号还有一种方法 在该盘输入cmdmd 创建文件夹 dir是查看目录以下dir /a 显示隐藏文件dir /b 只显示现在文件夹与文件夹名称命令+/? 可以知..._有汇编加固win
文章浏览阅读1w次,点赞27次,收藏98次。MobaXterm远程登录Ubuntu(详细教程)_mobaxterm ubuntu
文章浏览阅读1.8k次,点赞5次,收藏16次。 在用Keil对STM32的程序进行仿真时程序有时会跑飞,停止仿真程序会停在HardFault_Handler函数里的死循环while(1)中。这说明STM32出现了硬件错误。 STM32出现硬件错误可能有以下原因: (1)数组越界操作; &nb._keil hardfault lr fffffd
文章浏览阅读6.5k次,点赞10次,收藏161次。希望通过这些面试题巩固一下基础知识,加油,骚年!_.net core面试
文章浏览阅读1.4w次,点赞2次,收藏15次。NoVncNoVnc Web 端的Vnc软件、可以直接通过网页访问远程主机,采用 HTML5、WebSockets、Canvas和 JavaScript 实现,被普遍用在各大云平台中。 访问 Vnc 服务、需要做 tcp 到websockts的转化 才能在Html中看出来。网页就是一个客户端、类似 Windows 下的 vncviewer , 只是此时填的不是裸露的 VNC 服务的..._novnc网页版
文章浏览阅读2k次。爱心代码_hbuilder爱心代码
文章浏览阅读1.3w次,点赞5次,收藏4次。运行挂载命令如 mount /dev/sdb1 mnt出现错误:mount: wrong fs type, bad option, bad superblock on /dev/sdc1,missing codepage or helper program, or other errorIn some cases useful info is found in syslog - trydmesg | tail or so.解决方法:检查该磁盘的文件系统,即运行命令:fsck -t ext4 /_wrong fs type
文章浏览阅读2.6k次。一、商务洽谈阶段【销售负责】1.初步接触:甲乙双方初步认识,互相介绍下需求和产品;【对接人,销售部、业务部、采购部】(1).输入:某大型活动、某渠道资源;(2).输出:客户直接的了解认识;2沟通交流:对现有产品价值和功能,跟客户演示介绍,介绍我们有什么;【对接人,销售部、业务部、采购部】(1).输入:现有产品支撑功能;(2).输出:客户的信任和业务满足;3.深入交流:对客户的需求,进行初步响应讨论和确认,沟通可以做什么;【业务部门,深入需求沟通,形成纪要】(1).输入:客户的信任;(2)._saas系统实施
文章浏览阅读3.8k次。在某些应用场景,出于操作便捷性,会需求在系统启动进桌面时就自动运行指定程式,免去了人工再次手动打开,提高了不少便捷性。放入后,可在任务管理器【Ctrl+shift+esc】或引导启动管理窗口【msconfig】确认查看是否添加成功。打开注册表编辑器,依次找到如下路径,找到shell值,双击打开,将数值数据区域填入要启动的程序路径,确认保存即可。【WIN+R】调出运行窗口,输入如下指令,打开启动文件夹,将要启动的程序或脚本文件,放入文件夹即可。开始菜单或F3,搜索【任务计划程序】,找到打开。_windows自启动
文章浏览阅读981次。进程间通信:每个人进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓存区,进程1将数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制叫做进程间通信(IPC)。管道:一种最基本的IPC机制,由pipe函数创建。#includeint pipe(int filedes[2]);调用pipe函数..._进程内的全局变量
文章浏览阅读1.8w次,点赞6次,收藏25次。 通过这几天的研究,终于明白了Unicode和UTF-8之间编码的区别。Unicode是一个字符集,而UTF-8是Unicode的其中一种,Unicode是定长的都为双字节,而UTF-8是可变的,对于汉字来说Unicode占有的字节比UTF-8占用的字节少1个字节。Unicode为双字节,而UTF-8中汉字占三个字节。注: Unicode编码目前规划的总空间是17个平面,0x0000 至 0x..._unicode 与 utf8 互转
文章浏览阅读49次。这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1)在函数体内,一个被声明为静态的变量在这一函数被调用过程中维持其值不变(该变量存放在静态变量区)。2)在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3)在模块内,一...