Load U-Boot from JTAG on i.MX 8QuadMax

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Load U-Boot from JTAG on i.MX 8QuadMax

304 Views
miners
Contributor II

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

 

Tags (1)
0 Kudos
0 Replies