This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Tool/software:
Hi,
I would like to understand the difference between raw mode and filesystem (FS) mode in eMMC boot. How can I set up both raw mode and filesystem mode for booting from eMMC at the U-Boot and Linux levels? Additionally, what are the exact steps to configure raw mode and filesystem mode in the User Data Area (UDA)?
Current eMMC Boot Configuration I'm using:
Primary Boot: eMMC UDA in Filesystem mode
Pins B7-B0: 01000011
Backup Boot: Ethernet RGMII
Pins B15-B8: 00010000
Thanks,
Murali Vikas
Hello,
The eMMC alternate bootmode (B6-B3 : 1001) is available for booting from eMMC Boot0 or Boot1 partition in RAW mode. The following guide describes the steps to flash the U-Boot images to these partitions & any other steps necessary for booting from eMMC Boot0/Boo1 partition.
Reagrds,
Prashant
Hi Prashant,
Could you help me understand the difference between raw mode and filesystem (FS) mode when booting from eMMC? Specifically, I would like to know how the boot process differs between these two modes and the implications for where bootloader and system images are stored.
Thanks,
Murali Vikas
Hello,
1) RAW => The U-Boot images are flashed at certain offsets in eMMC Boot0 or Boot1 partition. The layout is defined here:
In eMMC alternate bootmode, the ROM boots the R5 SPL from offset 0x0. The further U-Boot images are booted from the offsets as described in the above guide.
2) FS => The U-Boot images are present in the FAT filesystem with certain names. In eMMC UDA FS bootmode, the ROM boots the R5 SPL by the name tiboot3.bin from the FAT filesystem. The further U-Boot images (tispl.bin & u-boot.img) are booted from the same.
Regards,
Prashant
Hi Prashant,
I would like to attempt eMMC UDA boot in both raw and FS modes. Could you please assist me with the process? Additionally, I’d appreciate any clarification on the differences between alternate eMMC and eMMC UDA, along with reference links for flashing, if available.
Regards, Vikash
I would like to attempt eMMC UDA boot in both raw and FS modes.
This is not possible if the eMMC UDA is already used for Linux Rootfs filesystem. The partition table exists at 0x0 which is also the offset at which the image is expected by ROM in RAW mode.
What if I delete entire eMMC partion and its a fresh flash can I able to do that?
Current Setup: I am flashing tiboot3.bin
, SPL, and U-Boot in raw mode to partition 1 (boot0) using mmc dev 0 1
. The root filesystem is stored in partition 0 (mmc dev 0 0
), and the system is booting with eMMC boot pins configured in FS mode.
For using the raw mode with UDA, should we flash tiboot3.bin
, SPL, and U-Boot to mmc dev 0 0
and set mmc partconf 0 1 7 1
? Could you please confirm if this is the correct approach for flashing in raw mode on the UDA?
We have successfully tested eMMC Boot.
For using the raw mode with UDA, should we flashtiboot3.bin
, SPL, and U-Boot tommc dev 0 0
and setmmc partconf 0 1 7 1
?
This will work.
=> mmc dev 0 0 switch to partitions #0, OK mmc0(part 0) is current device => fatload mmc 1:1 $loadaddr tiboot3.bin 292190 bytes read in 31 ms (9 MiB/s) => mmc write $loadaddr 0x0 0x400 MMC write: dev # 0, block # 0, count 1024 ... 1024 blocks written: OK => fatload mmc 1:1 $loadaddr tispl.bin 1111399 bytes read in 65 ms (16.3 MiB/s) => mmc write $loadaddr 0x400 0x1000 MMC write: dev # 0, block # 1024, count 4096 ... 4096 blocks written: OK => fatload mmc 1:1 $loadaddr u-boot.img 1007563 bytes read in 61 ms (15.8 MiB/s) => mmc write $loadaddr 0x1400 0x2000 MMC write: dev # 0, block # 5120, count 8192 ... 8192 blocks written: OK => mmc partconf 0 1 7 1 => mmc bootbus 0 2 0 0 Set to BOOT_BUS_WIDTH = 0x2, RESET = 0x0, BOOT_MODE = 0x0
If you are leveraging the eMMC UDA boot in RAW mode then you will not be able to boot Linux as the partition table would need to be at 0x0 offset which is where the `tiboot3.bin` is also flashed.
Hi,
I have successfully followed the steps and flashed up to U-Boot in eMMC UDA RAW mode
Query 1: Is it possible to load Linux in RAW mode?
tiboot3.bin
at offset 0x0. Without the GPT, Linux won’t be able to locate partitions like the root filesystem (rootfs). However, I would like to confirm if there’s any alternative way to boot Linux entirely in RAW mode, bypassing the need for a filesystem partition.Query 2: Clarification on eMMC Normal Boot and eMMC UDA Filesystem (FS) Boot
Regards,vikash
Hi,
my understanding is that in eMMC UDA raw mode, we can only boot until U-Boot from the UDA area, and the Linux filesystem cannot be loaded because the raw image starts at the 0x0 offset.
Could you confirm if my understanding is correct, or provide any additional steps to boot Linux in this configuration?
Regards,vikash