测试的板子,使用 BBB。制作 SD 卡,启动 linux,MLO uboot 内核使用的是自己的。文件系统使用的是 **AM335x Beaglebone Black eMMC烧写记录** 提供的 FlasherFS.tar.gz 。
在 linux 启动之后,执行 ./debrick.sh (已经将 DRIVE 指定为 "/dev/mmcblk1" 了)。成功创建了两个分区,mmcblk1p1 mmcblk1p2 ,且已经将 ML0 u-boot.img uExt.t uImage 解压到 /dev/mmcblk1p1 分区。文件系统解压到 /dev/ mmcblk1p2 .
可是,断电,拔掉 SD 卡,重新上电 ,设备不能从 EMMC 启动。一直打印 "CCCCCCCC"
IT 的朋友,求知识,求指导
user4725089:
帖子不能沉。
EMMC 被创建为两个分区了,第一个分区是 fat 格式,从 SD 启动 linux 确认查看了 ,MLO、u-boot.img、uExt.txt uImage, 确实已经写入到 mmcblk1p1 了。板子是 BBB 的,就是不能启动
user4725089:
回复 user4725089:
EMMC 使用的是 4GB 的大小,接在 MMC1 上面,型号是 emmc_ps8210_v451_80s_153b_wt.pdf。查阅了文档,EMMC 的 version 是 4.51。所以,设备接在 MMC1 接口上,应该是没有问题的。
user4725089:
我在 BBB 的公版上,验证没有通过。文件系统和脚本,是官方提供的,内核是自己的,但是是支持EXT3/4 等格式的。从 /media/mmcblk1p1 查看可以得知,MLO、u-boot.img、uExt.txt 是正确写入到 fat 分区里面了。
Jian Zhou:
回复 user4725089:
烧写的log有没有?
user4725089:
回复 Jian Zhou:
./debrick.sh ********************************************************************************************************
Sitara Example Flashing Script – 02/11/2014
1+0 records in1+0 records outSIZE = 3825205248CYLINDERS = 465No partition found. Continuing.Partitioning the eMMC…Checking that no-one is using this disk right now …[ 4320.991424] mmcblk1: unknown partition tableOK
Disk /dev/mmcblk1: 465 cylinders, 255 heads, 63 sectors/track
sfdisk: ERROR: sector 0 does not have an msdos signaturesfdisk: /dev/mmcblk1: unrecognized partition table type
Old situation:sfdisk: No partitions found
New situation:Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0
Device Boot Start End #cyls #blocks Id System/dev/mmcblk1p1 * 0+ 89 90- 722893+ c W95 FAT32 (LBA)/dev/mmcblk1p2 91 464 374 3004155 83 Linux/dev/mmcblk1p3 0 – 0 0 0 Empty/dev/mmcblk1p4 0 – 0 0 0 EmptySuccessfully wrote the new partition table
Re-reading the partition table …[ 4321.593139] mmcblk1: p1 p2
If you created or changed a DOS partition, /dev/foo7, say, then use dd(1)to zero the first 512 bytes: dd if=/dev/zero of=/dev/foo7 bs=512 count=1(See fdisk(8).)[ 4323.968322] kjournald starting. Commit interval 5 seconds[ 4323.976013] EXT3-fs (mmcblk1p2): using internal journal[ 4323.981536] EXT3-fs (mmcblk1p2): mounted filesystem with ordered data modeFound mounted partition(s) on /dev/mmcblk1: /media/mmcblk1p1 /media/mmcblk1p24k erase on /dev/mmcblk1p11+0 records in1+0 records out4k erase on /dev/mmcblk1p21+0 records in1+0 records out1+0 records in1+0 records outFormatting the eMMC into 2 partitions…mkfs.vfat 2.11 (12 Mar 2005)mke2fs 1.42.1 (17-Feb-2012)Discarding device blocks: done Filesystem label=rootfsOS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)Stride=0 blocks, Stripe width=0 blocks188048 inodes, 751038 blocks37551 blocks (5.00%) reserved for the super userFirst data block=0Maximum filesystem blocks=77175193623 block groups32768 blocks per group, 32768 fragments per group8176 inodes per groupSuperblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912
Allocating group tables: done Writing inode tables: done Creating journal (16384 blocks): doneWriting superblocks and filesystem accounting information: done
Formatting done.[ 4344.397766] kjournald starting. Commit interval 5 seconds[ 4344.405395] EXT3-fs (mmcblk1p2): using internal journal[ 4344.410919] EXT3-fs (mmcblk1p2): mounted filesystem with ordered data modeCopying Files…real 0m 0.63suser 0m 0.40ssys 0m 0.14sBoot partition done.real 0m 1.07suser 0m 0.66ssys 0m 0.32sRootFS partition done.It took 31 seconds to complete this task…
********************************************Sitara Example Flash Script is complete.
user4725089:
回复 user4725089:
我将 boot_partition.tar.gz rootfs_partition.tar.gz debrick.sh 放在 /home/root 目录下面
因为是SD 卡启动的,所以对 debrick.sh DRIVER 设置为 /dev/mmcblk1
user4725089:
回复 user4725089:
在 SD 卡 启动的 MLO 和 u-boot.img 和 EMMC 启动的 MLO、 u-boot.img 是一样的,没错吧
user4725089:
回复 Jian Zhou:
Jian zhou,快点出来,帮忙解决问题吧。这个问题,卡了我快一周了
Jian Zhou:
回复 user4725089:
SD卡启动试过没有?你的MLO确定是可以正常启动的么?
user4725089:
回复 Jian Zhou:
SD卡 可以启动,MLO 没有问题。 SD 卡启动了,通过 SD 卡启动了 linux(文件系统你们的 FlasherFS.tar.gz),系统起来之后,手动运行了 debrick.sh 脚本。emmc 设备 fat 分区的 MLO 和 SD 启动的 MLO,是同一份 MLO。