Tool/software:
Hi TI
[TDA4AL][J721S2] How to setup for tispl.bin is bigger than 2MB ?
Because the size of our "mcu r5 fw" is increased from 200KB to 1.5MB
that make the size of tispl.bin is increased from 1.00MB tp 2.3MB
The 2.3MB is bigger than the size of tispl partition (2MB) in boot partition of eMMC (comment at a)
Now I have increase the size of tispl partition from 2MB to 3MB (comment at b)
and set the offset of uboot partition from 0x1400 to 0x1C00 (comment at c)
Then the device can boot to kernel, but it has errors !!
1)
"dfu 0 mmc 0" fail when tispl.bin is 2.3MB (comment at f)
"dfu 0 mmc 0" work when tispl.bin is 1MB (comment at g)
2)
there is no /sys/class/remoteproc/remoteproc when tispl.bin is 2.3MB
there is no /sys/kernel/debug/remoteproc when tispl.bin is 2.3MB
Is there any suggestion to fix or debug these ?
Does those error cause by the memory mapping of "mcu r5 fw" or somethings ?
Where is memeory address and size of "mcu r5 fw" ?
===============================
a)
software-dl.ti.com/.../UG-Memory.html
3.1.1.5.5. Booting tiboot3.bin, tispl.bin and u-boot.img from eMMC boot partition (For K3 class of SoCs)
eMMC boot partition layout:
- ti original design
sector addr(byte) size(byte)
0x00000 0x00000000 0x00080000 tiboot3 512 KB
0x00400 0x00080000 0x00200000 tispl 2 MB
0x01400 0x00280000 0x00400000 u-boot 4 MB
0x03400 0x00680000 0x00020000 env 128 KB
0x03500 0x006A0000 0x00020000 bak env 128 KB
0x03600
- we resize tispl and u-boot to 3MB
0x00000 0x00000000 0x00080000 tiboot3 512 KB
0x00400 0x00080000 0x00300000 tispl 3 MB
0x01C00 0x00380000 0x00300000 u-boot 3 MB
0x03400 0x00680000 0x00020000 env 128 KB
0x03500 0x006A0000 0x00020000 envbak 128 KB
0x03600
b) dfu: resize tispl and uboot to 3MB for download
setenv dfu_alt_info_emmc "rawemmc raw 0 0x800000 mmcpart 1; rootfs part 0 1; tiboot3.bin.raw raw 0x0 0x400 mmcpart 1; tispl.bin.raw raw 0x400 0x1800 mmcpart 1; u-boot.img.raw raw 0x1C00 0x1800 mmcpart 1; u-env.raw raw 0x3400 0x100 mmcpart 1; sysfw.itb.raw raw 0x3600 0x800 mmcpart 1"env.raw raw 0x3400 0x100 mmcpart 1; sysfw.itb.raw raw 0x3600 0x800 mmcpart 1"
setenv dfu_alt_info $dfu_alt_info_emmc
saveenv
c) offset of uboot in boot partition for booting
yocto-build/sources/src/u-boot/ti-u-boot/configs/j721s2_evm_a72_defconfig
-CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1400
+CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1C00
d) dfu flash image into boot partition
dfu-util.exe -a tispl -D tispl.bin
dfu-util.exe -a uboot -D u-boot.img
e) other informations
software-dl.ti.com/.../UG-General-Info.html
3.1.1.1.3. Image Formats
tispl.bin / "R5 DM FW"
3.1.1.1.4. Boot Flow
MCU R5: Load R5 firmware
f) dfu fail when tispl.bin is 2.3MB
=> dfu 0 mmc 0
cmd_process:603: dfu 0 mmc 0
device_probe:519: (jiahao)
device_probe:525: dev_power_domain_on (jiahao)
ti_sci_power_domain_on:57: pd=00000000fde8ef78 (jiahao)
ti_sci_power_domain_on:61: get_device_exclusive (jiahao)
ti_sci system-controller@44083000: Message not acknowledged
ti-sci-pm-domains power-controller: ti_sci_power_domain_on: get_device(360) failed (-19)
device_probe:622: fail (jiahao)
device_probe:622: fail (jiahao)
device_probe:519: (jiahao)
device_probe:525: dev_power_domain_on (jiahao)
ti_sci_power_domain_on:57: pd=00000000fde8ef78 (jiahao)
ti_sci_power_domain_on:61: get_device_exclusive (jiahao)
ti_sci system-controller@44083000: Message not acknowledged
ti-sci-pm-domains power-controller: ti_sci_power_domain_on: get_device(360) failed (-19)
device_probe:622: fail (jiahao)
device_probe:622: fail (jiahao)
No USB device found
udc_device_get_by_index failed
=>
g) dfu work when tispl.bin is 1MB
=> dfu 0 mmc 0
cmd_process:603: dfu 0 mmc 0
device_probe:519: (jiahao)
device_probe:525: dev_power_domain_on (jiahao)
device_probe:561: device_get_dma_constraints(usb@6000000) (jiahao)
device_probe:566: uclass_pre_probe_device(usb@6000000) (jiahao)
device_probe:589: drv->probe(usb@6000000) (jiahao)
cdns-usb3-peripheral usb@6000000: DRD version v1 (ID: 0004024e, rev: 00000200)
cdns-usb3-peripheral usb@6000000: Initialized ep0 support:
cdns-usb3-peripheral usb@6000000: Initialized ep1out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep2out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep3out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep4out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep5out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep6out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep7out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep8out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep9out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep10out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep11out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep12out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep13out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep14out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep15out support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep1in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep2in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep3in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep4in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep5in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep6in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep7in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep8in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep9in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep10in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep11in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep12in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep13in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep14in support: BULK, INT ISO
cdns-usb3-peripheral usb@6000000: Initialized ep15in support: BULK, INT ISO
device_probe:595: uclass_post_probe_device(usb@6000000) (jiahao)
device_probe:607: device_notify(usb@6000000) (jiahao)
device_probe:612: done (jiahao)
g_dnl_usb_id_change: g_dnl_driver.name = usb_dnl_dfu
g_dnl_usb_id_change: idProduct: 0x6168
g_dnl_usb_id_change: idVendor: 0x451
Thanks
Jiahao