Team
We are working on J6 Entry EVM.
We are trying to flash MLO in eMMC using fastboot without succes. MLO size is greater than eMMC xloader partition. For our future custom board, we don't want use QSPI. All SW will be in eMMC so no QSPI or SD will be available to flash board from scratch, so we are trying to develop a similar flash procedure in EVM
EVM setup
SYSCFG[0-7]: 0000.00
Steps
- Power board with USB1 plugged in
- On host
- sudo ./usbboot -s u-boot-spl.bin
- sudo dfu-util -c 1 -i 0 -a 0 -D u-boot.img -R
- On target, stop u-boot count down
- fastboot 0
- On host
- sudo fastboot oem format
Writing GPT: success!
request fdf2c740 was not queued to ep1in-bulk
-
- sudo fastboot flash xloader MLO
WARNING: unknown variable: partition-type:xloader
request fdf2c740 was not queued to ep1in-bulk
request fdf2c740 was not queued to ep1in-bulk
Starting download of 138932 bytes
request fdf2c740 was not queued to ep1in-bulk
.request fdf2c740 was not queued to ep1in-bulk
downloading of 138932 bytes finished
ERROR: too large for partition: 'xloader'
at common/fb_mmc.c:81/write_raw_image()
request fdf2c740 was not queued to ep1in-bulk
Digging deeper
mmc part
Partition Map for MMC device 1 -- Partition Type: EFI
Part Start LBA End LBA Name Attributes Type GUID Partition GUID
1 0x00000100 0x000001ff "xloader"
attrs: 0x0000000000000000
type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid: d117f98e-6f2c-d04b-a5b2-331a19f91cb2
2 0x00000200 0x000007ff "bootloader"
attrs: 0x0000000000000000
type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
guid: 25718777-d0ad-7443-9e60-02cb591c9737
MLO size 138932
uboot/include/configs/dra7xx_evm.h
#define DFU_ALT_INFO_EMMC \
"dfu_alt_info_emmc=" \
"rawemmc raw 0 3751936;" \
"boot part 1 1;" \
"rootfs part 1 2;" \
"MLO fat 1 1;" \
"MLO.raw raw 0x100 0x100;" \ <------
"u-boot.img.raw raw 0x300 0x400;" \ |
"spl-os-args.raw raw 0x80 0x80;" \ |
"spl-os-image.raw raw 0x900 0x2000;" \
"spl-os-args fat 1 1;" \
"spl-os-image fat 1 1;" \ Size should be the same, shouldn't?
"u-boot.img fat 1 1;" \
"uEnv.txt fat 1 1\0"
#define DFU_ALT_INFO_QSPI \ |
"dfu_alt_info_qspi=" \ |
"MLO raw 0x0 0x040000;" \ <------+
"u-boot.img raw 0x040000 0x0100000;" \
"u-boot-spl-os raw 0x140000 0x080000;" \
"u-boot-env raw 0x1C0000 0x010000;" \
"u-boot-env.backup raw 0x1D0000 0x010000;" \
"kernel raw 0x1E0000 0x800000\0"
Size mismatch is an EVM bug, or you have any reason for this?