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

    文章

    579

    浏览量

    66008
  • 文件系统
    +关注

    关注

    0

    文章

    297

    浏览量

    20424
  • 开发板
    +关注

    关注

    25

    文章

    5725

    浏览量

    105584
  • emmc
    +关注

    关注

    7

    文章

    231

    浏览量

    54146

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何写入eMMC中的正确区域?

    我正在使用一个定制的 FX3S 设备,该设备有一个连接到 S0 端口的 eMMC。在我的固件项目中,我使用 FATFS 作为嵌入式文件系统,并且它运行成功。 为了安装新固件,我将 PMODE 引脚
    发表于 07-17 07:21

    如何将kmodel放置镜像内部,用于emmc烧录?

    之前采用的方法是sd卡烧录,也就是链接板子后,kmodel放置虚拟u盘中的kmodel路径,并且增加main文件作为开机自启,进行识别,这个流程目前是没问题的。 现在需要的是进行emmc
    发表于 06-20 06:03

    拯救NAND/eMMC:延长闪存寿命

    随着电子设备的广泛应用,NAND闪存和eMMC作为主流存储介质,其使用寿命受到广泛关注。本文将探讨其损坏的软件原因,并提供延长使用寿命的实用方法。前言长时间运行后出现NAND或者eMMC损坏,可能
    的头像 发表于 03-25 11:44 ?1483次阅读
    拯救NAND/<b class='flag-5'>eMMC</b>:延长闪存寿命

    EMMC存储模块的安装与配置

    ,使得存储模块可以轻松集成各种设备中。与传统的SD卡相比,EMMC提供了更高的数据传输速率和更低的功耗。 安装前的准备 在开始安装EMMC存储模块之前,需要确保以下准备工作已经完成: 设备兼容性 :确认您的设备支持
    的头像 发表于 12-25 09:49 ?2216次阅读

    EMMC闪存的工作原理解析 EMMC存储的读写速度测试

    EMMC闪存的工作原理解析 结构组成 EMMC是一种基于NAND闪存的存储解决方案,它集成了控制器和NAND闪存在一个单一的封装中。这种集成设计使得EMMC可以直接与设备的主处理器通信,而不需要额外
    的头像 发表于 12-25 09:46 ?4027次阅读

    EMMC与UFS的技术对比

    eMMC(Embedded Multi Media Card)与UFS(Universal Flash Storage)是两种不同的存储技术,它们在多个方面存在显著的技术差异。以下是对eMMC
    的头像 发表于 12-25 09:44 ?4314次阅读

    EMMC存储如何影响设备性能

    在当今的数字时代,存储技术的发展对于设备性能的提升至关重要。EMMC作为一种嵌入式存储解决方案,已经在智能手机、平板电脑、车载系统等多个领域得到广泛应用。 EMMC存储技术概述 EMMC
    的头像 发表于 12-25 09:40 ?2151次阅读

    EMMC存储器故障检测及解决方案

    读写速度慢 :EMMC存储器的读写速度明显低于正常水平,可能是由于存储器老化、文件系统损坏或硬件故障引起的。 数据丢失或损坏 :用户可能会发现存储在EMMC上的数据无故丢失或损坏,这可能是由于存储器的物理损坏或软件错误。 启动
    的头像 发表于 12-25 09:39 ?5054次阅读

    EMMC存储在手机中的应用

    随着智能手机和移动设备的普及,用户对设备的存储需求也在不断增长。EMMC(嵌入式多媒体卡)作为一种高效的存储解决方案,已经成为许多手机制造商的首选。 EMMC技术概述 EMMC是一种基于NAND闪存
    的头像 发表于 12-25 09:36 ?1839次阅读

    EMMC存储速度如何提升

    ,通过修改设备树文件或相关配置来启用8线模式,可以提高eMMC的传输速度。 升级硬件 : 如果条件允许,可以考虑更换为更高版本的eMMC芯片,因为新版本通常具有更快的读写速度。 二、软件与配置优化 驱动程序更新 : 确保
    的头像 发表于 12-25 09:31 ?2073次阅读

    EMMC存储器应用场景分析

    EMMC存储器概述 EMMC存储器是一种基于NAND闪存技术的存储卡,它集成了闪存芯片和控制器,提供了一种即插即用的存储解决方案。与传统的NAND闪存相比,EMMC具有更快的数据传输速度、更高
    的头像 发表于 12-25 09:26 ?2852次阅读

    EMMC与SSD存储的比较

    EMMC概述 EMMC(Embedded MultiMediaCard)是一种嵌入式存储解决方案,主要用于移动设备,如智能手机、平板电脑和嵌入式系统。它基于NAND闪存技术,提供了一种紧凑、高效
    的头像 发表于 12-25 09:24 ?3212次阅读

    EMMC存储技术的优缺点

    读写的应用,如高清视频播放、大型游戏加载和快速应用启动。 2. 可靠性 EMMC存储器具有较高的可靠性,因为它使用闪存技术,这种技术对物理冲击和振动具有很高的抵抗力。这对于移动设备尤其重要,因为它们经常在移动中使用,可能会受到跌落和撞击的影响。 3. 低功耗
    的头像 发表于 12-25 09:23 ?2567次阅读

    eMMC主控的定义和主要功能

    eMMC的全称为“embedded Multi Media Card”,即嵌入式的多媒体存储卡。eMMC采用统一标准的接口,高容量NAND Flash以及eMMC Controlle
    的头像 发表于 11-09 11:17 ?1829次阅读
    <b class='flag-5'>eMMC</b>主控的定义和主要功能

    RK3568修改eMMC分区大小

    默认eMMC启动,所以eMMC用户区域的部分都留给了操作系统,不同的操作系统有着不同的分区,分区的具体信息可以从镜像文件中的paramete
    的头像 发表于 09-13 08:00 ?1459次阅读
    RK3568修改<b class='flag-5'>eMMC</b>分区大小