pyOCD: Unable to set breakpoint on Realtek RTL8195AM
When I try to set a breakpoint, for example on mbedtls_ssl_handshake
in the test example below:
https://github.com/marcuschangarm/mbed-os-example-tls/tree/master/tls-client
I get this error:
(gdb) break mbedtls_ssl_handshake
Cannot access memory at address 0x3001c660
pyocd-gdbserver: 0.8.1a1 and 0.8.1a2.dev38 DAPLINK: 0241 GCC: 5.4.1 20160609 GDB: 7.10.1.20160616-cvs
About this issue
- Original URL
- State: open
- Created 7 years ago
- Comments: 15 (11 by maintainers)
Ok, I checked the code. If the target doesn’t have a memory map, then it only supports using hardware breakpoints. But if the address is outside the hw breakpoint range, then the breakpoint request will fail. Sorry, but it won’t work for the time being. The best solution is to add RTL8195AM support to pyOCD so it has a memory map.
@c1728p9 We should change
BreakpointManager.set_breakpoint()
to allow software breakpoints if there isn’t a memory map, and only fail if the memory write fails.