Star64: jtag debugging?
I'm thinking of getting a Star64 to do some practical learning about operating system development and I haven't been able to find some clear/simple information about compatible equipment and the process for setting up a jtag debugging environment. Please note that my experience is mostly with software and I am really, really new to working so close to the hardware.

The Star64 schematics show GPIO pins 0 to 4 for debug trace and pins 9 to 13 for jtag HIFI4 (audio DSP). From the very little that I know about jtag this is the minimum number of pins - so minimum amount of jtag functionality.

I have been looking at the Segger J-Link Edu because it has support for the U74 and E24 SiFive cores in the Star64, but I'm not sure if it is a good choice.

Has anyone setup jtag debugging for the Star64? What hardware/software are you using and can you recommend a beginners guide that can get me started?
I am using a j-link edu with my star64 board. I am using a macbook pro with my jlink edu. I also connected to the uart pins on the star64.

Here are the pins that need to be connected from the edu to the star64 gpio pins:

JLinkEdu pin    Star64 gpio pin

1               40

3               36

5               38

7               35

9               37

1               2

I couldn't figure out how to use the jlinkexe software to connect to the different cores of the jh7110.

I WAS able to use openocd to connect and see all the cores. I was able to load different programs onto different cores.

I used openocd with the following text in a config file:


// config.tcl

adapter driver jlink

reset_config trst_only

transport select jtag

adapter speed 4000

jtag newtap e24 cpu -irlen 5

jtag newtap u74 cpu -irlen 5

#target create e24.cpu0 riscv -chain-position e24.cpu -coreid 0

target create u74.cpu0 riscv -chain-position u74.cpu -coreid 0 -rtos hwthread

target create u74.cpu1 riscv -chain-position u74.cpu -coreid 1

target create u74.cpu2 riscv -chain-position u74.cpu -coreid 2

target create u74.cpu3 riscv -chain-position u74.cpu -coreid 3

target create u74.cpu4 riscv -chain-position u74.cpu -coreid 4

#target smp u74.cpu0 u74.cpu1 u74.cpu2 u74.cpu3 u74.cpu4


There isn't much general documentation for the JH7110. I did write a simple assembly program that wrote to the serial board.

I was able load the program onto the board using openocd. It was fun seeing 4 cores all writing to the serial port at the same time!

Possibly Related Threads…
Thread Author Replies Views Last Post
  [Star64] Help needed in understanding Yocto and U-boot build process InterestedinFOSS 0 341 04-23-2024, 10:58 AM
Last Post: InterestedinFOSS
  Star64 JH7110 (slarm64, riscv64) mara 2 1,362 10-09-2023, 03:43 AM
Last Post: mara
  Star64: GPU firmware loading on Armbian Der Geist der Maschine 13 5,294 09-29-2023, 05:46 PM
Last Post: mara
  Star64: 4GB on 8GB boards Der Geist der Maschine 4 2,379 07-27-2023, 12:32 AM
Last Post: balbes150
  Star64: SATA Der Geist der Maschine 1 1,233 07-26-2023, 12:35 PM
Last Post: Gladox114
Information Star64: Armbian Installation Der Geist der Maschine 5 5,024 06-03-2023, 01:26 PM
Last Post: Der Geist der Maschine
  Star64: a first benchmark Der Geist der Maschine 0 2,151 05-29-2023, 01:00 PM
Last Post: Der Geist der Maschine
  Star64 first boot (and success) bortzmeyer 1 1,846 05-24-2023, 02:45 AM
Last Post: draintroup

Forum Jump:

Users browsing this thread: 1 Guest(s)