Прошил загрузчик с названием a55(не all).
На стороне м33 включаю m7: power.w m7 on
На стороне uboot(TCM):
u-boot=> setenv image power_mode_switch_rtos_imx95_cm7.bin
u-boot=> setenv serverip 192.168.0.193
u-boot=> setenv ipaddr 192.168.0.200
u-boot=> tftpboot ${loadaddr} ${image}
Using enetc-0 device
TFTP from server 192.168.0.193; our IP address is 192.168.0.200
Filename 'power_mode_switch_rtos_imx95_cm7.bin'.
Load address: 0x90400000
Loading: ###
11.2 MiB/s
done
Bytes transferred = 35352 (8a18 hex)
u-boot=> cp.b ${loadaddr} 0x203c0000 ${filesize}
u-boot=> rproc stop 0
u-boot=> rproc start 0
Всё успешно работает
На стороне uboot(DDR):
u-boot=> rproc stop 0
u-boot=> setenv image hello_world_cm7.bin
u-boot=> tftpboot ${loadaddr} ${image}
Using enetc-0 device
TFTP from server 192.168.0.193; our IP address is 192.168.0.200
Filename 'hello_world_cm7.bin'.
Load address: 0x90400000
Loading: #
3.1 MiB/s
done
Bytes transferred = 12872 (3248 hex)
u-boot=> cp.b ${loadaddr} 0x80000000 ${filesize}
"Synchronous Abort" handler, esr 0x96000046, far 0x80000000
elr: 00000000902b8ed4 lr : 00000000902b8fc0 (reloc)
elr: 00000000fff6bed4 lr : 00000000fff6bfc0
x0 : 0000000080000000 x1 : 0000000090400000
x2 : 0000000000003248 x3 : 0000000000000000
x4 : 800008b58005a000 x5 : 0000000000000000
x6 : 0000000080000000 x7 : 0000000000000044
x8 : 0000000000000010 x9 : 0000000000000008
x10: 0000000000000004 x11: 00000000fdeceaa8
x12: 0000000000000002 x13: 0000000000000200
x14: 0000000000000002 x15: 0000000000000000
x16: 00000000ffed86e0 x17: 0000000000000000
x18: 00000000fdeb2dc0 x19: 00000000fdec7660
x20: 0000000000000001 x21: 0000000000000000
x22: 0000000080000000 x23: 0000000000000000
x24: 0000000090400000 x25: 0000000000000000
x26: 0000000000000000 x27: 00000000fdec7690
x28: 00000000fdec7660 x29: 00000000fdea2b40
Code: eb03005f 540001a1 d65f03c0 f8636824 (f8236804)
Resetting CPU ...
u-boot=> bdinfo
boot_params = 0x0000000000000000
DRAM bank = 0x0000000000000000
-> start = 0x0000000090000000
-> size = 0x0000000070000000
DRAM bank = 0x0000000000000001
-> start = 0x0000000100000000
-> size = 0x0000000180000000
flashstart = 0x0000000000000000
flashsize = 0x0000000000000000
flashoffset = 0x0000000000000000
baudrate = 115200 bps
relocaddr = 0x00000000ffeb3000
reloc off = 0x000000006fcb3000
Build = 64-bit
current eth = enetc-0
ethaddr = 00:04:9f:0a:e1:9f
IP addr = <NULL>
fdt_blob = 0x00000000fdea3040
lmb_dump_all:
memory.count = 0x1
memory[0] [0x90000000-0x27fffffff], 0x1f0000000 bytes, flags: none
reserved.count = 0x3
reserved[0] [0x94000000-0x94803fff], 0x804000 bytes, flags: none
reserved[1] [0xfce9a000-0xfcea2fff], 0x9000 bytes, flags: no-overwrite, no-map
reserved[2] [0xfcea3030-0x27fffffff], 0x18315cfd0 bytes, flags: no-map
devicetree = separate
arch_number = 0x0000000000000000
TLB addr = 0x00000000fffe0000
irq_sp = 0x00000000fdea3030
sp start = 0x00000000fdea3030
Early malloc usage: cc40 / 10000