Replies: 2 comments
-
ESP32-P4 is not supported at all - ESP32-C3 is a RISC-V target which has some funky needs and, more importantly, we could never quite get the post-Flash i-cache configuration going for properly. Unless Espressif has done a better job (which it definitely does not sound like they have) with the P4, then it's likely there are some fundamental things that need working around. In regards to JTAG scan at least though, IR issues are what the IR quirks system exists for. Define the exact ID code in (jtag_devs.c after the existing RISC-V block)[https://github.com/blackmagic-debug/blackmagic/blob/593b906487cf2e1e51d55d19d376cf9b41b03112/src/target/jtag_devs.c#L407-L416], and then define a quirk that describes the IR length and scan value for the TAP. You can use BMDA and enable DEBUG_PROBE and DEBUG_WIRE diagnostics to aid looking into the process (along with INFO and TARGET to see how scan is going) with |
Beta Was this translation helpful? Give feedback.
-
Thanks for the BMDA - it was indeed much faster to use that than to reflash probe. Also, when used with FTDI adapter there is no need to rewire it before experimenting with BMD. I did define ID codes and IR quirks. I am now working on main branch. According to OpenOCD, both TAPs have same idcode and IR length:
But it seems they have different ir_value (5 and 1), at least according to printed "next_bit" inside jtag_read_irs(). After patching jtag_device_get_quirks() to return ir_value of 1 for 2nd tap it proceed a little bit futher. Some things seems to work:
GDB:
Continuing with BMD RISC-V journey |
Beta Was this translation helpful? Give feedback.
-
I am trying to port BMP to use with ESP32-P4 target. I am using STM32F401CC as hardware probe and my work is based on esp32-c3-support branch.
It doesn't work with ESP32-P4, it fails early in jtag_scan().
Currently there is no full reference manual for ESP32-P4, but one which is available, states:
(ESP32-P4 has 2 HP cores and 1 LP core).
I am sure that my hardware and connections are OK (P4 JTAG works with OpenOCD-esp32 official fork and FT2232H).
This is output from OpenOCD:
This is output from my BMP:
If I comment that check, it will proceed further, but it won't work, things like vendorid, archid, implid will be all zero.
Do you have idea where to look to fix the issue? If needed, I can bring out scope and logic analyzer for some even lower layer debugging.
Beta Was this translation helpful? Give feedback.
All reactions