ARM-Linux系统移植

所需积分/C币:28 2012-07-07 15:30:27 1.07MB PDF
收藏 收藏
举报

第一部分 前言....................................................................................................................................8 1 硬件环境......................................................................................................................................8 1.1主机硬件环境........
42 ARM GNU专有符号 4.3操作码. 垂鲁垂 ·.·.·.················.:::················ 5可执行生成说明 5.lds文件说明. 5.11主要符号说明 D·。·。音·音。非看看着垂。非音非音音。非音。自·着着垂普。鲁D非。音·垂音。非。音。·着着非帝非音 5.12段定义说明 …34 第四部分u-boot的移楦. 1u-boot的介绍及系统结构∴ 垂垂,。看垂 DDD音。··着·鲁垂 D是看 .35 介绍 .35 2获取u-bo 13 u-boot体系结构. 1.3.11u-boot目录结构 .35 2 uboot的启动过程及工作原理. .36 21启动模式介绍 136 22阶段1介绍…6 221定义入口 36 2.22设置异常向量 .37 223设置CPU的模式为SVC模式. .37 224关闭看门狗 37 225禁掉所有中断 22.6设置以CPU的频率 …7 2.27设置CP15 137 22.8配置內存区控制寄存器. …138 229安装U-BOOT使的栈空间 22.10BSS段清0 38 2.2.11搬移 Nand flash代码. 2212进入C代码部分 2.3阶段2的C语言代码部分 139 2.3.1调用一系列的初始化函数 39 232初始化网络设备. 233进入主 UBOOT命令行… 41 24代码搬运 41 3 uboot的移植过程. 42 3.1坏境 2步骤 42 321修改 Makefile 中: 322在 board子目录中建立cane2410 42 32.3在 include/configs/中建立配置头文件. 42 3.2.4指定交叉编译工具的路径. 中······························: 3.25测试编译能否成功. .42 3.2.6修改 lowlevel init. s文件…. 3.29 UBOOT的 Nand flash移植 32.8重新编译u-boot …45 3.2.9把u-boot烧入fash ……45 4U-BOOT命令的使用. 146 4.1U-BOOT命令的介绍……….……….….....…...146 41.1获得帮助信息. 46 4.2常用命令使用说明… 47 4.2. I askenVF 47 4.2.2 autoscr .47 4.2.3base. 47 4.2.4 bdinfo 47 4.2.5 bootp.... 247 4.2.8 tftp(tftpboot) 4.2.9bo0um. 鲁D音音 4.2.10g0.……,…,…,…,………,……,…,…,…,……………48 4.2.11cmp 4.2.12 coninfo 48 4.2.13cp.……… ···.::··: 48 4.2.14date. 49 4.2. 15 erase(F) 49 4.2.16inIo(F.......,………49 4.2.17 iminfo.……,…,,……419 4.2.18 loads.… 49 4.2.19md. 419 4.2.20mm ····················· ……50 4.2.21 mtest 50 4.2.22mw.… 4.2.23nm……1150 4.2.24 printenv………….,….,.… ……………………50 4.2.25 ping 4.2.26 reset.… 4.2.27run… 51 4.2.28 saveenV F) ·· 42.29 setenv 4.2.30 sleep 4.2.31Ⅴ ersion..., 4232 nand info 42.33 nand device <n> 4.2.34 nand bad 4.2.35 nand read...,……,…,n… 4.236 nand crease 52 4.2.37 nand write…… 4.3命令简写说明 44把文件写入 NandFlash 53 45下载提供 5参考资料 第五部分 linux2.6内核的移植. 333 1内核移植过程..........3 1.1下载inux内核 垂音音非。音非音音·音。非 鲁·,非音。·看垂 翻着着着音 53 12修改 Makefile 53 1.3设置门ash分区………....….....…........14 1.3.1指明分区信息…… 音垂。着··。音·。··着垂 ···:·:::··::············· 1.3.2指定启动时初始化 56 1.3.3禁止 Flash ecc校验 …56 1.4配置內核. 翻。。 56 14.1支持启动时挂载 devfs. 56 14.2配置内核产生 config文件. 14.3编译内核 58 144下载 ZImage到开发板 2创建 ullage 61 21相关技术背景介绍. 22在内核中创建 ullage的方法 22.1获取 mkimage工具 61 222修改內核的 Makefile文件 追加实验记录 62 3.1移植 linux-2.6.15.7.… ∴62 3.2移植 linux-2.6.16.21…. 62 3.3移植 linux-2.6.7 652 4参考资料 62 第六部分应用程序的移植. 653 1构造目标板的根目录及文件系统 …163 1.1建立一个目标板的空根目录 63 12在 my_roolls中建立 Linux目录树 番。音看番番DD垂。·非音音音·看 番着DD·音。垂·看着垂 63 1.3创建 linuxrc文件 63 2移植 Busybox 64 21下载 busybox.…64 23编译并安装 Busybox… 3移植 Tiny Login .66 3.1下载 66 2修改 tiny Login的 Makefile 3编译并安装 4相关配置文件的创建. .66 41创建帐号及密码文件 42创建pofe文件… 67 44创建 fstab文件 67 45创建 inetd.conf配置文件…. …67 5移植 inetd. 67 5. inetd的选择及获取. .67 5.1.1获取 inetd......... 音音音。音非·着音鲁DD音。自音音·着。音垂番D。音 52编译ietd.. 春。看看垂 67 521修改 configure文件 5.22编译 5.3配置 ield.…. 5.3.1拷贝 inetd到根文件系统的usr/sbin目录中 6移植thttpdweb服务器.. 6.1下载… 翻垂。音垂。鲁量看着看 69 62编译thttpd ········丰 6.3配置 659 6.3.1拷贝thttpd二进制可执行文件到根文件系统/Isr/sbin/目录中69 6.3.2修改thttpd配置文件 .69 63.3转移到根文件系统目录,创建相应的文件 69 7建立根目录文件系统包 ································ ·····:··············:········*· 70 7.1建立 CRAMFS包 7.1.1下载 cramfs工具 70 71.2制作 cramfs包. 70 71.3写 cramfs包到 Nand flash …70 8参考资料 第七部分 Nand flash驱动的编写与移植. I Nand flash工作原理. 71 l. I Nand flash芯片工作原理 1.1.,1芯片內部存储布局及存储操作特点. ..·.·······::··::···.·中····::·:· 71 1.1.2重要芯片引脚功能. 1.1.3寻址方式 ·.·.···· 71 1.4 Nand flash主要內设命令详细介绍 。音看看非鲁D。。·。音音音音·看普音垂鲁D·音非,·鲁·.音·看着非普番,垂普D。音 1.2 Nand flash控制器工作原埋. 音音音。音垂。看垂 1.2.1 Nand flash控制器特性. 72 1.2.2 Nand flash控制器工作原埋. 72 1.3 Nand flash控制器中特殊功能寄冇器详细介绍 14 Nand flash控制器中的硬件FCC介绍. 14.1ECC产生方法 .73 4.2FCC生成器工作过程 74 143ECC的运用 74 2在ADS下 flash烧写程序 ·: 74 2.1ADS下 flash烧写程序原理及结构 74 22第三层实现说明 74 21.1特殊功能寄存器定义… 2.1.2操作的函数实现 ……74 23第二层实现说明. 75 2.3.1 Nand flash初始化.….…..……..…........15 2.3.3获取 Nand flash id.………………75 234 Nand flash写入… ·看非·看垂。鲁D音 垂普垂垂音鲁D音音音·非非。音非。·看非 76 235 Nand flash读取 2.3.6 Nand lash标记坏块. 春鲁。音看普鲁 78 2.37 Nand flash检查坏块. ∴79 2.3.8擦除指定块中数据. 79 24第一层的实现. .80 3在 U-BOOT对 Nand flash的支持. 82 3.1U-BOOT对从 Nand flash启动的支持 .82 3.1.1从 Nand flash启动U-BOOT的基本原理 3.1.2支持 Nand flash启动代码说明 .82 32 U-BOOT对 Nand flash命令的支持 .84 321主要数据结构介绍 84 3.22支持的命令函数说明 ··· 4在 Linux对 Nand flash的支持 .87 41 Linux下 Nand flash调用关系 41.1 Nand flash设备添加时数据结构包含关系87 41.2 Nand flash设备注册时数据结构包含关系 42 Linux下 Nand flash驱动主要数据结构说明 4.2.1s3c2410专有数据结构 8 42.2 Linux通用数据结构说明 4.3.1注册 driver_ register 4 43.2探测设备 probe 43.3初始化 Nand flash控制器 4.34移除设备 94 4.35 Nand flash芯片初始化… 普D··非·看着看普 音音·音音春··垂普番,普DD,垂。。音 4.3.6读 Nand flash…. 95 437写 Nand flash. ………95 第八部分Cs8900a网卡驱动的编写与移植. 酯音音音音·垂音着D音自。看。番音D音自音垂。看看鲁垂 95 lCs8900a工作原理 2在ADS下cs8900a的实现 95 21在cs8900a下实现的ping工具 95 3在 u-boot下cs8900a的支持 96 3.1u-boot下cs8900a的驱动介绍 3.2u-boot下cs8900a的移植说明 · 4在 linux下cs8900a驱动的编写与移植. .96 4.1 Linux下cs8900a的驱动说明 96 4.2 Linux下cs8900a的移植说明. 4.2.1为cs8900a建立编译菜单 番垂·是看 422修改S3C2410相关信息 序 该文档的目的是总结我们在工作中的一些经验,并把它们分享给喜欢ARM和 Linux的朋友,如有错误 之处,请大家多多指点.同样,我们也希望更多人能把自己的工作经验和体会加入该文档,让大家共同进步 该文档是一份交流性文档,只供个人学习与交流,不允许公司和企业用于商业行为 第一部分前 1硬件环境 1.1主机硬件环境 开发机: Pentium-4CPU 内存:512MB 硬盘:60GB 1.2目标板硬件环境 CPU: S3C2410 SDRAM: HY57V561620 Nand flash: K9F1208UOB ( 64MB 以太网芯片:CS8900A(10M/10OMB 13工具介绍 仿真器: Dragon-ICE 电缆:串口线,并口线 2软件环境 21主机软件环境 21.1 Windows操作系统 ADS编译工具:ADS1.2 仿真器软件: Dragon- ice daemon序 2.L.2 Linux操作系统 GNU交叉编详工只 2.95.3: 作用:编译u-boot 3.3.2,3.4.4: 作用:编译内核和应用程序 其它工作 tree工具 作用:登看文件目录树 下载:从ftp:// mama. instate,edu/1inux/tree/下载编译 2.L.3目标板最后运行的环境 启动程序: u-boot-1.1.4 内核 linux-2.6.14.1 应用程序 1. busybox-1 1.3 2. TinyLogin-1 4 3.Thttpd-2.25 22 Linux下工作用户及环境 2,2.1交叉工具的安装 工具链的编译过程请参考第三部分 1.下载交叉工只 2. 95.3 FEx+tfE: ftp: //ftp arm linux. org. uk/pub/armlinux/toolchain/cross 2.95.3.tar,bz2 3.3.4载地址 2.缤译父叉工具 [rootalocalhost w]mkdir /usr/local/arm Lrootalocalhost ncd /usr/local/arm 把 cross-2.95.2.tar.bz2, cross-3.4.4.tar.gz拷贝到/usr/ local/arm目录中。解压这两个包。 [rootalocalhost o]tar -xjvf cross-2952. tar. bz2 Lrootalocalhost m]tar -xzvf cross-3.4. 4. tar. gz 2.2.2u-boot移植工作目录 1.添加工作用户 Lrootalocalhost m]#useradd -G root -g root -d/home/uboot uboot 2.建立工作目录 uboot@localhost w]smkdir dev home Lubootalocalhost ]scd dev_ home Lubootalocalhost dev_home]$mkdir doc mybootloader uboot d OC mybootloader uboot 3.建立环境变量 [ubootalocalhost ]vi -/.bashrc export PAtH=/usr/local/arm/2.95. 3/bin: SPATH 2.23内核及应用程序移植工作 1.添加工作用户 [rootalocalhost ]#useradd -G root -g root-d/home / arm arm 2.建立工作日录 [armalocalhost arm]Smkdir dev _ home [armalocalhost arm]scd dev home armalocalhost arm]Smkdir bootldr btools debug doc images kernel localapps rootfs sysapps tmp tools Larmalocalhost arm Stree -l 1 bootldr tools debug doc -道 mages kerne localapps rootfs synapps - tmp tools 可以看到如上树形结构。 注:tree命令 3.建立环境变量设置脚本 armalocalhost arm]Svi env_sh #!/bin / bash PRJROOT=N/dev_home KERNEL=SPRJROOT/kernel ROoTFS=SPRJROOT/rootfs LAPP=SPRJROoT/localapps DOC=SPRJROOT/ doc TMP=SPRJROOT/tmp export PRJROOT KERNEL LAPP ROOTFS export PaTH=/usr/local/arm/3.4.4/bin: SPAtH 4.登陆吋启动环境变量 [@localhost arm]Svi m/. bashrc c/dev home / env_sh 重新登陆arm用户,环境变量生效 [arm@localhost arm]Ssu arm 23配置系统服务 2.3.1ttp服务器的配置 如果用下面一条命令能够看到服务已经启动,则不用安装,否则需要按1或2点安装tftp- server服务器 [armalocalhost arm]#netstat -a grep tftp uap 0 0 * tftp 1.从RPM包安装tftp- server 从对应 Linux操作系统版本的安装光盘上找到tftp- server的安装包 下面tftp- server-0.32-4.i386,rpm包为例,把rpm包拷贝到 dev home/ tools/下 arm@localhost arm]#cp tftp-server-0 32-41386. rpm /home/ arm/dev home/tools/ [armalocalhost arm]#su root [rootalocalhost arm]#rpm -g tftp-server 如果没有安装tftp- server,就要用下面命令安装,否则,直接进入第2步配置服务. [rootalocalhost arm]#cd /home/arm/dev_home/tools/ [rootalocalhost tools]rpm -ivh tftp-server-0 32-4 1386. rpm

...展开详情
试读 95P ARM-Linux系统移植
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
tsy20100200 还可以,好久没有温习这些知识点了,都快忘了,借此可以好好的温习下
2015-08-22
回复
465726917 资料不错,值得仔细研究。
2014-06-26
回复
aizhiqiang 哎,看不太懂,努力努力!天资问题?
2014-06-05
回复
高桥凉介123456 内容很好,很有用,谢谢分享
2014-02-22
回复
嵌入式Linux-l505 很不错,相当详细!
2013-12-13
回复
scorpiohuang 内容还是不错的,从一开始一步一步慢慢的做。遗憾的是整个文档少了第8部分。
2013-10-03
回复
wstar2012 很不错 ,相当详细了
2013-06-29
回复
imweirdo 很不错 ,相当详细了
2013-06-05
回复
g3G518bin85jghf901v 这书还行 适合初学者
2012-11-05
回复
bingchentiao 讲得不错,谢谢,有需要的可以下载一下看看!
2012-07-10
回复
上传资源赚积分or赚钱
最新推荐
ARM-Linux系统移植 28积分/C币 立即下载
1/95
ARM-Linux系统移植第1页
ARM-Linux系统移植第2页
ARM-Linux系统移植第3页
ARM-Linux系统移植第4页
ARM-Linux系统移植第5页
ARM-Linux系统移植第6页
ARM-Linux系统移植第7页
ARM-Linux系统移植第8页
ARM-Linux系统移植第9页
ARM-Linux系统移植第10页
ARM-Linux系统移植第11页
ARM-Linux系统移植第12页
ARM-Linux系统移植第13页
ARM-Linux系统移植第14页
ARM-Linux系统移植第15页
ARM-Linux系统移植第16页
ARM-Linux系统移植第17页
ARM-Linux系统移植第18页
ARM-Linux系统移植第19页

试读结束, 可继续读1页

28积分/C币 立即下载 >