目的:
从SDCard启动AM3517,其中包括x-loader、uboot、linux
kernel和Android根文件系统的启动,所有这些资源都存放在SDCard上。
环境:
Fedora 10
AM3517evm
2G SDCard
Android 2.2 Froyo
步骤:
1. 格式化SDCard
1.1 将SDCard格式化为两个分区,一个为Fat32格式,另一个为Ext3格式
假设SDCard设备文件名为sdd, 过程如下:
a. 执行命令
#fdisk /dev/sdd
输入 'd' 删除所有已存在的分区。
b. 输入 'x' 进入专家模式.
输入 'h' ,设置 number of heads 为 255
输入 's',设置number of sectors 为63
输入 'p',查看卡信息,如:Disk /dev/sdd: 2021 MB, 2021654528 bytes
记下'2021654528' , 进行如下计算: 2021654528/255/63/512 = 245.79
输入 'c', 设置number of cylinders 为245 (不要超过计算出来的数字)
输入 'r', 退出专家模式。
c. 输入'n' 建立第一个分区,大小自定,但不要太大。
输入 't' , 设置第一个分区类型为'c'
输入 'a' ,设置第一个分区为启动分区。
输入'n' 建立第二个分区, 大小为SDCard所剩全部空间。
d. 输入'w'将分区表写入。
e. 退出
f. 设置分区格式:
#mkfs.msdos -F 32 /dev/sdd1
#mkfs.ext3 /dev/sdd2
1.2 复制文件到SDCard
a. Mount sdd2 到 /mnt
b. 复制Android 根文件系统到第二个分区。
c. umount SDCard, 并将SDCard连入Windows,使用Fat32格式化SDCard第一个分区,并按顺序依次放入如下文件:
MLO (重命名后的x-loader.bin), boot.scr, u-boot.bin, uImage.
2. 设置AM3517
2.1 设置switch7
将switch7的第一和第四个开关置为ON,其它保持OFF.
2.2 设置启动参数
a. #setenv bootcmd 'mmc init; fatload mmc 0:1 84000000 uImage; bootm
84000000'
b. #setenv bootargs 'mem=220M console=ttyS2,115200n8
androidboot.console=ttyS2 root=/dev/mmcblk0p2 rw init=/init rootwait
rootfstype=ext3'
c. #saveenv
3. 启动系统
将SDCard插入AM3517,如果一切正常,系统应该会启动。 |