上海地区专业的网上书店
一次性购物满100元即可享受VIP会员价格优惠
网站地图 |登录/注册 |购物车 |会员中心 |帮助中心 |友情链接
首页 | 新书上市 | 畅销推荐 | 礼品图书 | 分类浏览 | 在线阅读 | 出版社专区 | 图书热评 | 求购登记 | 顾客留言 | 图书拾零
图书搜索:
文章搜索:
您的当前位置:新书城>在线阅读>Linux

MPC85XX平台的u-boot分析


来源:CSDN   作者:michael_kang   发布时间:2007-5-3   人气:1370
正在装载数据……
 作者:michael.kang(blackfin.kang@gmail.com)
关键字:MPC8650 TLB CPM u-boot skyeye

简介
本文介绍了u-boot在MPC8560平台上的代码实现,并结合MPC8560平台的特性,对u-boot的对MPC8560处理器的启动代码进行了分析。最后我们还介绍了在SkyEye上运行MPC8560的u-boot镜像。

前言:

MPC8560平台是freescale公司是PowerpcQUICC II的下一代通讯处理器。它为网络和通讯外设提高了强大的计算能力,从而提高了整个系统的吞吐量和性能。它的主要架构是由一个高性能的e500的核和一个通讯处理器模块(CPM)组成. e500的核实现了powerpc BOOK E的ISA。

u-boot是一个目前最为流行的bootloader,它的特点是功能强大,支持的硬件平台非常多。目前在u-boot .1.1.6已经对MPC8650平台有很好的支持。

1、u-boot编译
编译MPC8560的u-boot,我们首先要下载支持e500的cross toolchain,我们可以在http://www.crosstool.org/ 网站下载cross的0.43版本,然后从以下链结再下载e500的补丁文件。
http://ozlabs.org/pipermail/linuxppc-embedded/2005-January/016398.html

在解压cross的0.43版本,并且打完我们下载的两个e500的补丁之后,我们可以运行一下命令来生成e500的toolchain:
./demo-e500.sh

在默认配置下,e500的交叉编译器会生成在/opt/crosstool目录下

然后我们运行export命令设置交叉编译器的路径
export PATH=$PATH:/opt/crosstool/gcc-3.4.3-glibc-2.3.3/powerpc-linux-gnuspe/bin/

在制作完交叉编译器之后,我们就可以开始编译u-boot了,这个我们很容易的运行下面的命令就可以完成:
make MPC8560ADS_config CROSS_COMPILE=powerpc-linux-gnuspe-
make CROSS_COMPILE=powerpc-linux-gnuspe-
当前目录下会出现u-boot的文件,这个就是我们编译出来的MPC8560的u-boot镜像文件。

2、u-boot代码分析
按照e500的架构描述,MPC8560启动时,会执行0xFFFF_FFFC地址的指令,这里存放的是u-boot代码中的cpu/
mpc85xx/resetvec.S一条跳转指令,如下:
b _start_e500
然后u-boot就开始执行cpu/mpc85xx/start.S处的_start_e500函数,这个函数比较长,我们进行主段分析:
mfspr r0, PVR
lis r1, PVR_85xx_REV1@h
ori r1, r1, PVR_85xx_REV1@l
cmpw r0, r1
bne 1f
然后在跳转到_start函数中执行:
在_start函数的最后,会调到:
bl cpu_init_f
bl icache_enable
bl board_init_f



3、在SkyEye上运行MPC8560的u-boot
从skyeye的SVN中获得最新的SkyEye源码,并且运行make编译skyeye.我们可以在binary目录下找到SkyEye
的可执行文件
然后把这个可执行文件拷贝到u-boot的源码目录,并且在u-boot的源码目录下编译MPC8560的skyeye配置文件
skyeye.conf,内容为:
#skyeye config file sample
arch:ppc
cpu:e500
mach:mpc8560
mem_bank: map=M, type=RW, addr=0xFF000000, size=0x1000000

然后运行 "./skyeye -e u-boot", 我们就可以看到u-boot可以成功的在SkyEye上运行起来。

需要注意:
SKyEye还在不断更新过程中,本文描述的一些过程可能会有改变。请到Skyeye的官方网站查找关于运行
MPC8560的一些信息。



本文地址:http://read.newbooks.com.cn/info/123987.html
正在装载数据……
上一篇: Linux内核编译过程详解
下一篇: 学习LINUX 之一 (关于磁盘配额)
本站所有文章由本站会员原创或转载,与本网站无关,如您认为侵权请来信说明。
·电话:021-66822880    ·邮箱:    ·客服时间( 周一 至 周六 9:00-18:00 )
Copyright © 新书城 2006-2007 , All Rights Reserved   沪ICP备06028173号