为Qemu aarch32开发板添加sd卡

Qemu: 2.8.0

开发板: vexpress

 

1、制作sd卡镜像

dd if=/dev/zero of=fs_vexpress_1G.img bs=1M count=1024

2、分区

1 sudo losetup /dev/loop0 fs_vexpress_1G.img
2 sudo fdisk /dev/loop0

注:可以使用 losetup -a 查看当前loop设备的占用情况

下面是分的两个区:

1       Device Boot      Start         End      Blocks   Id  System
2 /dev/loop0p1            2048     1050623      524288   83  Linux
3 /dev/loop0p2         1050624     2097151      523264   83  Linux

这里我们制作了1GB的存储器,分了两个区, 大小都是512M.

3、扫描分区

sudo partprobe /dev/loop0

4、格式化

1 sudo mkfs.vfat -I /dev/loop0p1
2 sudo mkfs.ext4 /dev/loop0p2

这里我们将第一个分区格式化为vfat格式, 第二个分区格式化为ext4格式

5、添加qemu启动参数

sudo qemu-system-arm \
    -M vexpress-a9 \
    -m 1024M \
    -smp 4 \
    -kernel ./linux-4.10/arch/arm/boot/zImage \
    -nographic \
    -append "root=/dev/ram0 rw rootfstype=ext4 console=ttyAMA0 init=/linuxrc ignore_loglevel" \
    -initrd ./rootfs/ramdisk.img \
    -sd ./rootfs/fs_vexpress_1G.img \
    -net nic,vlan=0 -net tap,vlan=0,ifname=tap0 \
    -dtb ./linux-4.10/arch/arm/boot/dts/vexpress-v2p-ca9.dtb

6、启动

会看到下面两个设备:

1 [root@vexpress ]# ls /dev/mmcblk0* -l
2 brw-rw----    1 0        0         179,   0 May  1 09:13 /dev/mmcblk0
3 brw-rw----    1 0        0         179,   1 May  1 09:13 /dev/mmcblk0p1
4 brw-rw----    1 0        0         179,   2 May  1 09:13 /dev/mmcblk0p2

7、挂载

1 mount -t vfat /dev/mmcblk0p1 /mnt/vfat_1/
2 mount -t ext4 /dev/mmcblk0p2 /mnt/ext4_1/

 

posted @ 2017-05-01 17:48  摩斯电码  阅读(886)  评论(0编辑  收藏