Sysprogs forums › Forums › VisualGDB › Raspberry Pi 3 with OpenOCD
- This topic has 8 replies, 3 voices, and was last updated 6 years, 2 months ago by
support.
-
AuthorPosts
-
July 17, 2018 at 19:49 #21388
andreaslindner
ParticipantHi,
I wanted to setup my RPi3 for hardware-based debugging using OpenOCD and tried to follow the instructions here: https://sysprogs.com/VisualKernel/tutorials/raspberry/jtagsetup/. When it comes to starting OpenOCD with a board/target config file, I hit the wall.
It says it would work for RPi1-3 but I’m quite sure that the same OpenOCD config file (you specify ‘target/raspberry.cfg’) wouldn’t work for 2 and 3 as well. Could you please help me to find the file you used? I’m a bit lost in the big pile of OpenOCD’s config script files :).
By the way. I have installed the latest OpenOCD package which is installed by VisualGDB.
Best and thanks in advance,
Andreas-
This topic was modified 6 years, 9 months ago by
andreaslindner.
July 17, 2018 at 20:07 #21390support
KeymasterHi,
The tutorial you mentioned describes low-level kernel debugging of the Raspberry Pi itself. If you are using VisualGDB (i.e. debugging user-mode applications), you don’t need JTAG and can simply debug your applications via SSH.
If you are trying to use Raspberry Pi itself as a JTAG debugger for a barebone ARM device, please consider using one of the Olimex devices instead (e.g. arm-usb-ocd-h). Although OpenOCD can be configured to use Raspberry Pi as a JTAG debugger, it will be relatively slow (due to various latencies) and unreliable.
July 18, 2018 at 15:01 #21398andreaslindner
ParticipantYes, right, hardware-based debugging using OpenOCD. This is exactly what I want to do. Not the other way around and no GDB servers for user-mode debugging.
The very first sentence in the article I linked says “This tutorial shows how to prepare your Raspberry PI board for debugging with JTAG (we have tested this with Raspberry Pi 1, 2 and 3).”. Now I’m wondering how this could work with the following description with respect to the different ARM cores throughout the RPi versions.
More specifically, the latest OpenOCD version that is bundled and distributed does not support aarch64. So I assume you didn’t test debugging of this mode anyways but rather the aarch32 with standard Raspbian. Now I’d like to know which OpenOCD config file you used for RPi3. As I said, it cannot have been ‘target/raspberry.cfg’, right?
Best,
Andreas-
This reply was modified 6 years, 9 months ago by
andreaslindner.
July 18, 2018 at 18:44 #21400support
KeymasterHi,
Thanks for clarifying this. The OpenOCD version bundled with VisualKernel does support aarch64 targets, although we have indeed tested it with a 32-bit Raspbian distro (we used the raspberrypi3.cfg file).
If you could post the error you are getting with raspberrypi3.cfg, we might be able to help you resolve it, however as we have not explicitly tested the 64-bit mode, it might be failing due to an OpenOCD bug. We should be able to provide more details once we see the error message.
February 7, 2019 at 06:54 #23743crazyhippititi
ParticipantHi,
I had the same issue when I tried RPi 3 with OpenOCD.
There are my experiments:
# RPi 3B V1.2:
Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l GNU/Linux
Hardware : BCM2835
Revision : a22082#OpenOCD 0.10.0 [2018-11-30] download at: http://gnutoolchains.com/arm-eabi/openocd/
#ARM-USB-TINY-H adapter
I changed in the JtagEnable.cpp file as #define BCM2708_PERI_BASE 0x3F000000
However when I run this command: <Directory Path>\OpenOCD-20181130\share\openocd\scripts>..\..\..\bin\openocd.exe -f interface\ftdi\olimex-arm-usb-tiny-h.cfg -f target\raspberrypi3.cfg
There were errors as bellow:
Open On-Chip Debugger 0.10.0 (2018-11-30) [https://github.com/sysprogs/openocd]
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
adapter speed: 1000 kHz
adapter_nsrst_delay: 400
none separate
Info : auto-selecting first available session transport “jtag”. To override use ‘transport select <transport>’.
Info : Listening on port 6666 for tcl connections
Info : Listening on port 4444 for telnet connections
Info : clock speed 1000 kHz
Error: JTAG scan chain interrogation failed: all ones
Error: Check JTAG interface, timings, target power, etc.
Error: Trying to use configured scan chain anyway…
Error: bcm2837.cpu: IR capture error; saw 0x0f not 0x01
Warn : Bypassing JTAG setup events due to errors
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
Error: Invalid ACK (7) in DAP response
Error: JTAG-DP STICKY ERROR
in procedure ‘init’
in procedure ‘ocd_bouncer’I have double checked my wiring between RPi 3 and Olimex.
Would you please help me in this case? Thank you so much.
February 8, 2019 at 07:09 #23767support
KeymasterHi,
Please try using VisualKernel as shown in this tutorial. It should configure the necessary debug settings automatically.
February 11, 2019 at 07:47 #23803crazyhippititi
ParticipantThank for your suggestion. I will try it.
Bests.
February 18, 2019 at 07:09 #23889crazyhippititi
ParticipantHi,
I tried using VisualKernal as in that tutorial. However, there was error as in attached photo. Would you please give some advice in this case? Thanks in advance.
February 19, 2019 at 05:44 #23893support
KeymasterLooks like the Linux machine you are using for building is not compatible with the Raspberry Pi toolchain. Please ensure you use a 64-bit Linux machine for building the Raspberry Pi kernel.
-
This topic was modified 6 years, 9 months ago by
-
AuthorPosts
- You must be logged in to reply to this topic.