'gdb-mutiarch can't connect JLinkGDBServer on Cortex-A55

  1. JLinkExe can connect to cortex-a55.Cortex-A55 identified.connect to device.png
  2. After device connected,"Regs" command seems to work fine."Regs" works fine.png
  3. "Mem32" command seems to work fine(dump rom memory)."Mem32 works fine.png"
  4. Use JLinkGDBServerExe to connect to device, and waiting for gdb connection.(J-Link connected,Device connected,waiting for gdb)JLinkGDBServer looks fine.png
  5. Now, Use gdb-mutiarch to connect JLinkGDBServercan't connect jlinkgdbserver.png
    1. set architecure aarch64
    2. tar rem:2331
    3. can't connect.Could not fetch register "PC"; remote failure reply 'E01'.
  6. I set arch to armv7 in gdb(aka aarch32,which is not right for my situation.In the connect to device.png,now my device is in el3&aarch64), connection succeeded?aarch32 connection succeeded???.png
    1. set architecure armv7
    2. tar rem:2331
    3. connection succeeded?!
    4. info registers, but dump regs in the aarch32 way.

Is there something wrong with my operations? Or can anyone tell me how to debug baremetal cortex-a55? By the way, JLink sw version is V7.64c, JLink hw is EDU V11. gdb-mutiarch version is GNU gdb (Ubuntu 9.2-0ubuntu1~20.04.1) 9.2.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source