I have an Apalis evaluation board that has been loaded and boots with linux using the UUU tool. What I want to do is see if I can load an application that runs on the A-53 (preferably U-Boot) from the live system over JTAG.
I have the J-Link JTAG cable and can communicate with the hardware using OpenOCD and gdb-multiarch. I get an error when attempting to load the generated u-boot.bin with the load_image command.
I'm hoping I am just not using the tool correctly and am looking for some support. Thanks!
(gdb) target extended-remote localhost:3333
Remote debugging using localhost:3333
warning: No executable has been specified and target does not support
determining executable automatically. Try using the "file" command.
0xffff800010087838 in ?? ()
(gdb) set remotetimeout unlimited
(gdb) monitor targets
TargetName Type Endian TapName State
-- ------------------ ---------- ------ ------------------ ------------
0 imx8qm.axi mem_ap little imx8qm.cpu running
1* imx8qm.a53.0 aarch64 little imx8qm.cpu halted
2 imx8qm.a53.1 aarch64 little imx8qm.cpu examine deferred
3 imx8qm.a53.2 aarch64 little imx8qm.cpu examine deferred
4 imx8qm.a53.3 aarch64 little imx8qm.cpu examine deferred
5 imx8qm.a72.0 aarch64 little imx8qm.cpu examine deferred
6 imx8qm.a72.1 aarch64 little imx8qm.cpu examine deferred
7 imx8qm.scu cortex_m little imx8qm.cpu running
8 imx8qm.scu_ahb mem_ap little imx8qm.cpu running
9 imx8qm.m4_0 cortex_m little imx8qm.cpu examine deferred
10 imx8qm.m4_1 cortex_m little imx8qm.cpu examine deferred
11 imx8qm.apb mem_ap little imx8qm.cpu running
(gdb) monitor reset init
JTAG tap: imx8qm.cpu tap/device found: 0x1890101d (mfg: 0x00e (Freescale (Motorola)), part: 0x8901, ver: 0x1)
Deferring arp_examine of imx8qm.a53.1
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.a53.2
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.a53.3
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.a72.0
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.a72.1
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.m4_0
Use arp_examine command to examine it manually!
Deferring arp_examine of imx8qm.m4_1
Use arp_examine command to examine it manually!
imx8qm.a53.0: how to reset?
Protocol error with Rcmd
(gdb) monitor halt
(gdb) monitor targets
TargetName Type Endian TapName State
-- ------------------ ---------- ------ ------------------ ------------
0 imx8qm.axi mem_ap little imx8qm.cpu reset
1* imx8qm.a53.0 aarch64 little imx8qm.cpu halted
2 imx8qm.a53.1 aarch64 little imx8qm.cpu examine deferred
3 imx8qm.a53.2 aarch64 little imx8qm.cpu examine deferred
4 imx8qm.a53.3 aarch64 little imx8qm.cpu examine deferred
5 imx8qm.a72.0 aarch64 little imx8qm.cpu examine deferred
6 imx8qm.a72.1 aarch64 little imx8qm.cpu examine deferred
7 imx8qm.scu cortex_m little imx8qm.cpu running
8 imx8qm.scu_ahb mem_ap little imx8qm.cpu running
9 imx8qm.m4_0 cortex_m little imx8qm.cpu examine deferred
10 imx8qm.m4_1 cortex_m little imx8qm.cpu examine deferred
11 imx8qm.apb mem_ap little imx8qm.cpu running
(gdb) monitor load_image /home/afx/work/u-boot-sd-2020.04-r0.bin 0x80000000
abort occurred - dscr = 0x03047d53
keep_alive() was not invoked in the 1000 ms timelimit. GDB alive packet not sent! (114839 ms). Workaround: increase "set remotetimeout" in GDB
Protocol error with Rcmd