Skip to content

Conversation

@ALTracer
Copy link
Contributor

@ALTracer ALTracer commented Feb 1, 2026

Detailed description

  • This a minor new feature (target support).
  • The existing problem is unknown idcode 0x10307a6d of Gigadevice GD32VW553 SoC and hence no autodetection.
  • This PR solves it by registering relevant ident codes. No flash driver yet though.

Not tested as I don't have that board, only GD32VF103. But going by the logs, it makes sense:
Info : JTAG tap: gd32vw553.cpu tap/device found: 0x10307a6d (mfg: 0x536 (Nuclei System Technology Co Ltd), part: 0x0307, ver: 0x1)
Info : JTAG tap: auto0.tap tap/device found: 0x790007a3 (mfg: 0x3d1 (GigaDevice Semiconductor (Beijing)), part: 0x9000, ver: 0x7)
There is valuable internal cleanup w.r.t. JTAG and generic RISC-V probe paths. I can discard gd32vw5_probe() stub, and the weak nop mechanism will simply return false for it.

Your checklist for this pull request

Closing issues

Copy link
Member

@dragonmux dragonmux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only got a couple of relatively small notes. With them addressed, we'll be happy to merge this as this looks great!

.idmask = 0x0fffffffU,
#if ENABLE_DEBUG == 1
.descr = "RISC-V debug v0.13.",
.descr = "Andes DTM",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We would like to keep the more generic string here, as while this is useful, the generic string pools and thus doesn't take additional space up.. If we do keep this revised string, we would prefer to see something like "Andes Tech RV DTM." - with the . included for consistency with the other entries.

Comment on lines 413 to 421
.descr = "Andes DTM",
#endif
.handler = riscv_jtag_dtm_handler,
},
{
.idcode = 0x00307a6dU,
.idmask = 0x0fffffffU,
#if ENABLE_DEBUG == 1
.descr = "Nuclei Systems DTM",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar note here.

@dragonmux dragonmux added this to the v2.1 release milestone Feb 2, 2026
@dragonmux dragonmux added Enhancement General project improvement New Target New debug target labels Feb 2, 2026
* The value was used internally by BMD as RV_GIGADEVICE, but it does not belong
  to Gigadevice (SoC vendor) or to Nucleisys (processor vendor).
  This is visible on JTAG TAP IDCODE of DTM and RISC-V mvendorid CSR of GD32VF103 SoC.
* Proper JEP-106 value of 0xa36 belonging to Nuclei Systems Technology
* 307 is related to Nuclei N307 processor core
Copy link
Member

@dragonmux dragonmux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, merging. Thank you for the contribution!

@dragonmux dragonmux merged commit a56c174 into blackmagic-debug:main Feb 2, 2026
38 of 39 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement General project improvement New Target New debug target

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants