0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何把文件系统烧到EMMC并从EMMC加载

瑞萨MCU小百科 来源:瑞萨MCU小百科 作者:瑞萨MCU小百科 2023-10-30 16:06 次阅读

之前文章介绍了如何下载并从SD卡加载文件系统,提到过可以从EMMC引导系统,本篇将为您介绍如何把文件系统烧到EMMC,并从EMMC加载。

接之前操作,系统已经从SD卡正常启动(本文方案需要借助SD卡):

Version: 3.0.3

smarc-rzg2l login: root

Last login: Sun Sep 20 1003 UTC 2020

root@smarc-rzg2l:~#

已经可以接上网线,并借助网路(如ssh服务)把相关文件拷贝到SD卡,为后边做准备。

需要的文件如下:

root@smarc-rzg2l:~# ls

Image-r9a07g044l2-smarc.dtb Image-smarc-rzg2l.bin core-image-qt-smarc-rzg2l.tar.bz2

EMMC创建分区:

左右滑动查看完整内容

root@smarc-rzg2l:~# fdisk /dev/mmcblk0


Welcome to fdisk (util-linux 2.35.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): o
Created a new DOS disklabel with disk identifier 0xf23e9318.


Command (m for help): n
Partition type
  p  primary (0 primary, 0 extended, 4 free)
  e  extended (container for logical partitions)
Select (default p): (Push the enter key)


Using default response p.
Partition number (1-4, default 1): (Push the enter key)
First sector (2048-124321791, default 2048): (Push the enter key)
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-124321791, default 124321791): +500M


Created a new partition 1 of type 'Linux' and of size 500 MiB.


Command (m for help): n
Partition type
  p  primary (1 primary, 0 extended, 3 free)
  e  extended (container for logical partitions)
Select (default p): (Push the enter key)


Using default response p.
Partition number (2-4, default 2): (Push the enter key)
First sector (1026048-124321791, default 1026048): (Push the enter key)
Last sector, +/-sectors or +/-size{K,M,G,T,P} (1026048-124321791, default 124321791): (Push the enter key)


Created a new partition 2 of type 'Linux' and of size 58.8 GiB.


Command (m for help): p
Disk /dev/mmcblk0: 59.29 GiB, 63652757504 bytes, 124321792 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf23e9318


Device     Boot  Start    End  Sectors Size Id Type
/dev/mmcblk0p1     2048  1026047  1024000 500M 83 Linux
/dev/mmcblk0p2   1026048 124321791 123295744 58.8G 83 Linux


Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
root@smarc-rzg2l:~#

格式化EMMC:

左右滑动查看完整内容

root@smarc-rzg2l:~# mkfs.ext4 /dev/mmcblk0p1
mke2fs 1.45.7 (28-Jan-2021)
Discarding device blocks: done
Creating filesystem with 512000 1k blocks and 128016 inodes
Filesystem UUID: cd3a51a9-ef38-4399-888e-9773fcc41ecc
Superblock backups stored on blocks:
    8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409


Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done


root@smarc-rzg2l:~# mkfs.ext4 /dev/mmcblk0p2
mke2fs 1.45.7 (28-Jan-2021)
Discarding device blocks: done
Creating filesystem with 15411968 4k blocks and 3858432 inodes
Filesystem UUID: 07d98391-d70c-4eed-a3af-4227a7460a32
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
    4096000, 7962624, 11239424


Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done


root@smarc-rzg2l:~#

挂载EMMC,拷贝内核、设备树、文件系统:

左右滑动查看完整内容

root@smarc-rzg2l:~# mount /dev/mmcblk0p1 /mnt/
root@smarc-rzg2l:~# cp Image-smarc-rzg2l.bin /mnt/
root@smarc-rzg2l:~# cp Image-r9a07g044l2-smarc.dtb /mnt/
root@smarc-rzg2l:~# umount /dev/mmcblk0p1
root@smarc-rzg2l:~# mount /dev/mmcblk0p2 /mnt/
root@smarc-rzg2l:~# tar xf core-image-qt-smarc-rzg2l.tar.bz2 -C /mnt/
root@smarc-rzg2l:~# umount /dev/mmcblk0p2

关机,设置开发板SW11/SW1拨码开关模式:

9e439d58-76f8-11ee-939d-92fbcf53809c.png9e5074c4-76f8-11ee-939d-92fbcf53809c.png

重启开发板,设置环境变量:

左右滑动查看完整内容

NOTICE: BL2: v2.7(release):203c783-dirty
NOTICE: BL2: Built : 06:57:02, Nov 10 2022
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x1f840 src=(p:1)0x20000(256) len=0x10(1)
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x1f9a0 src=(p:1)0x20010(256) len=0x28(1)
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x44000000 src=(p:1)0x20090(256) len=0x6069(49)
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x1f840 src=(p:1)0x20000(256) len=0x10(1)
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x1f9a0 src=(p:1)0x20010(256) len=0x28(1)
NOTICE: BL2: Load dst=0x1f9a0 src=(p:1)0x20038(256) len=0x28(1)
NOTICE: BL2: eMMC boot from partition 1
NOTICE: BL2: Load dst=0x50000000 src=(p:1)0x26100(304) len=0xb0238(1410)
NOTICE: BL2: Booting BL31
NOTICE: BL31: v2.7(release):203c783-dirty
NOTICE: BL31: Built : 06:57:02, Nov 10 2022




U-Boot 2021.10 (Mar 15 2023 - 07:34:17 +0000)


CPU:  Renesas Electronics K rev 2.1
Model: smarc-rzg2l
DRAM: 1.9 GiB
WDT:  watchdog@0000000012800800
WDT:  Started with servicing (60s timeout)
MMC:  sd@11c00000: 0, sd@11c10000: 1
Loading Environment from MMC... OK
In:  serial@1004b800
Out:  serial@1004b800
Err:  serial@1004b800
U-boot WDT started!
Net:
Error: ethernet@11c20000 address not set.
No ethernet found.


Hit any key to stop autoboot: 0
Hit any key to stop autoboot: 0
=> env default -a
## Resetting to default environment
=> setenv bootargs 'root=/dev/mmcblk0p2 rootwait'
=> setenv bootcmd 'mmc dev 1; ext4load mmc 0:1 0x48080000 Image-smarc-rzg2l.bin; ext4load mmc 0:1 0x48000000 Image-r9a07g044l2-smarc.dtb; booti 0x48080000 - 0x48000000'
=> saveenv
Saving Environment to MMC... Writing to MMC(0)... OK

重启开发板,从emmc成功加载:

BSP: RZG2L/RZG2L-SMARC-EVK/3.0.3
LSI: RZG2L
Version: 3.0.3
smarc-rzg2l login: root
Last login: Mon Sep 18 02:29:32 UTC 2023
root@smarc-rzg2l:~# df -h
Filesystem      Size Used Avail Use% Mounted on
/dev/root       58G 1.2G  54G  3% /
devtmpfs       740M   0 740M  0% /dev
tmpfs         933M   0 933M  0% /dev/shm
tmpfs         933M 9.7M 924M  2% /run
tmpfs         933M   0 933M  0% /sys/fs/cgroup
tmpfs         933M   0 933M  0% /tmp
tmpfs         933M  28K 933M  1% /var/volatile
tmpfs         187M   0 187M  0% /run/user/0
root@smarc-rzg2l:~#

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • SD卡
    +关注

    关注

    2

    文章

    530

    浏览量

    63020
  • 文件系统
    +关注

    关注

    0

    文章

    273

    浏览量

    19676
  • 开发板
    +关注

    关注

    25

    文章

    4429

    浏览量

    93999
  • emmc
    +关注

    关注

    6

    文章

    180

    浏览量

    52018

原文标题:RZ/G2L开发板EMMC启动

文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    请问RT-Thread emmc驱动编写如何格式化?

    SDIO,同时也ST自带的驱动测试到了EMMC的擦除,读写操作 但是我看到使用文件系统,首先需要格式化吧,但是格式化的接口是空的,无操作。所以我想知道这个格式化驱动盘是否有什么操作要求,或者参考的代码呢
    发表于 02-23 08:04

    请问如何将镜像写到emmc上?

    如何将镜像写到emmc上?
    发表于 01-10 07:47

    eMMC响应的格式和类型

    eMMC响应有两种长度的数据包,分别为48 Bits和136 Bits,eMMC响应的格式如下图所示。
    的头像 发表于 12-12 13:38 862次阅读
    <b class='flag-5'>eMMC</b>响应的格式和类型

    eMMC总线协议解析

    eMMC总线中,可以有一个Host,多个eMMC设备。总线上的所有通信都是以Host发送一个Command给eMMC开始的,eMMC对于收到的不同Command会做出不同的respo
    的头像 发表于 12-08 14:35 990次阅读
    <b class='flag-5'>eMMC</b>总线协议解析

    eMMC的结构和电源配置

    最新的eMMC产品遵循JEDEC eMMC 5.1标准,该标准定义了eMMC的通信信号、命令、内部寄存器、特性,并为系统设计人员提供指导。它是工业应用和汽车应用的嵌入式存储解决方案的理
    的头像 发表于 11-14 16:21 1487次阅读
    <b class='flag-5'>eMMC</b>的结构和电源配置

    嵌入式学习——ElfBoard ELF1板卡 重新打包文件系统的方法

    1.拷贝ELF1开发板资料包\\\\04-写镜像\\\\04-0 eMMC镜像目录下的rootfs.tar.bz2开发环境下的任意目录,比如/home/elf。 2.创建存放目标文件系统
    发表于 11-06 09:55

    i.MX6ULL——ElfBoard ELF1板卡 如何重新打包文件系统

    1.拷贝ELF1开发板资料包\\\\04-写镜像\\\\04-0 eMMC镜像目录下的rootfs.tar.bz2开发环境下的任意目录,比如/home/elf。 2.创建存放目标文件系统
    发表于 11-06 09:52

    eMMC的相关基础知识(2)

    如图7-1所示,eMMC系统包含五种操作模式.
    发表于 08-15 11:47 1569次阅读
    <b class='flag-5'>eMMC</b>的相关基础知识(2)

    eMMC的相关基础知识(1)

    引言:eMMC是一种使用非常广泛的存储器件,从消费电子,工业领域,到车规等级,以其性能优良,高可靠性,调试便捷等等特点,成为芯片最小系统构建不可或缺的一员,本节介绍eMMC的相关基础知识。
    发表于 08-15 11:46 4902次阅读
    <b class='flag-5'>eMMC</b>的相关基础知识(1)

    工业树莓派烧写设备eMMC

    Sensing、Media、Industrial、nano等产品都基于Raspberry Pi Compute Module 4(简称CM4),CM4模块的板载eMMC单元与主SD卡接口相连接。本指南解释了如何将数据写入eMMC存储。
    的头像 发表于 08-15 09:58 512次阅读

    EMMC主控固件读取及SD转emmc接线

    EMMC主控固件读取及SD转emmc接线
    发表于 08-10 09:46 21次下载

    【经验分享】eMMC芯片的PCB可制造性设计问题

    了解eMMC芯片 eMMC芯片是一种集成了闪存存储器和控制器的嵌入式多媒体卡(Embedded MultiMediaCard)芯片,其主要应用于移动设备,如手机、平板电脑,可以用于存储操作系统
    的头像 发表于 07-04 08:10 659次阅读
    【经验分享】<b class='flag-5'>eMMC</b>芯片的PCB可制造性设计问题

    eMMC芯片的PCB可制造性设计问题

    了解eMMC芯片 eMMC芯片是一种集成了闪存存储器和控制器的嵌入式多媒体卡(Embedded MultiMediaCard)芯片,其主要应用于移动设备,如手机、平板电脑,可以用于存储操作系统
    的头像 发表于 06-29 08:44 376次阅读
    <b class='flag-5'>eMMC</b>芯片的PCB可制造性设计问题

    eMMC芯片的引脚定义与工作原理

    了解eMMC芯片 eMMC芯片是一种集成了闪存存储器和控制器的嵌入式多媒体卡(Embedded MultiMediaCard)芯片,其主要应用于移动设备,如手机、平板电脑,可以用于存储操作系统
    的头像 发表于 06-28 15:06 1863次阅读
    <b class='flag-5'>eMMC</b>芯片的引脚定义与工作原理

    eMMC:最佳闪存

    eMMC在移动设备行业中被广泛采用为集成存储。它在上述所有框中打勾,并在速度和功率之间提供了完美的权衡。eMMC 具有高速传输、低功耗、安全性、HPI 和存储桶命令队列中最新增加的性能,自该标准
    的头像 发表于 05-26 15:26 1154次阅读
    <b class='flag-5'>eMMC</b>:最佳闪存