查看: 2415|回复: 0

【Hacking ESPRESSObin】 SD卡启动系统

[复制链接]

该用户从未签到

发表于 2017-4-12 22:01:07 | 显示全部楼层 |阅读模式
分享到:
Hacking Marvell ESPRESSObin Wiki

查看SD卡状态(下面是笔者主机信息)

    lsblk
    NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sda      8:0    0 931.5G  0 disk
    ├─sda1   8:1    0    50G  0 part
    ├─sda2   8:2    0     1K  0 part
    ├─sda5   8:5    0   673G  0 part /home
    ├─sda6   8:6    0 517.7M  0 part /boot
    ├─sda7   8:7    0   200G  0 part /
    └─sda8   8:8    0     8G  0 part [SWAP]
    sdb      8:16   1  14.9G  0 disk
    └─sdb1   8:17   1  14.9G  0 part

清除SD卡(这里假设是/dev/sdb)内所有数据,可以用lsblk查看SD卡状态

    sudo dd if=/dev/zero of=/dev/sdb bs=1M count=100

在SD上创建一个分区(sdb1)

    (echo n; echo p; echo 1; echo ''; echo ''; echo w) | sudo fdisk /dev/sdb

格式化分区为EXT4格式

    sudo mkfs.ext4 /dev/sdb1

把SD卡挂在到开发主机的/mnt/sdcard目录下

    sudo mkdir -p /mnt/sdcard
    sudo mount /dev/sdb1 /mnt/sdcard

将根文件系统(buildroot, ubuntu, yocto)解压到/mnt/sdcard/下(这里统一用rootfs.tar.gz表示)

    sudo tar -xvf rootfs.tar.gz -C /mnt/sdcard/

将内核和DTB拷贝到根文件系统的boot目录下

    sudo mkdir -p /mnt/sdcard/boot
    sudo cp Image /mnt/sdcard/boot/
    sudo cp marvell/armada-3720-community.dtb /mnt/sdcard/boot/

卸载SD卡

    sudo umount /mnt/sdcard

设置Uboot环境变量

    setenv image_name boot/Image
    setenv fdt_name boot/armada-3720-community.dtb
    setenv bootmmc 'mmc dev 0; ext4load mmc 0:1 $kernel_addr $image_name;ext4load mmc 0:1 $fdt_addr $fdt_name;setenv bootargs $console root=/dev/mmcblk0p1 rw rootwait; booti $kernel_addr - $fdt_addr'
    save

使用bootmmc启动开发板

    run bootmmc

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条

手机版|小黑屋|与非网

GMT+8, 2024-4-28 21:09 , Processed in 0.108887 second(s), 15 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.