---

**[tickets:#463] Clarification on the use of the IDCODE**

**Status:** new
**Milestone:** 0.12.0
**Created:** Tue Dec 23, 2025 02:06 PM UTC by Guanghui Cheng
**Last Updated:** Tue Dec 23, 2025 02:06 PM UTC
**Owner:** Andreas Fritiofson


The `jep106_table_manufacturer` function identifies manufacturer information 
based on the `manufid` in the` idcode`. However, when the bank number is 
greater than or equal to 17, it conflicts with earlier banks. For example,
`[0][0x01 - 1] = "AMD"` conflicts with
`[16][0x01 - 1] = "Shenzhen JIEQING Technology Co Ltd"`.

```
const char *jep106_table_manufacturer(unsigned int bank, unsigned int id)
{
        if (id < 1 || id > 126) {
                LOG_DEBUG("BUG: Caller passed out-of-range JEP106 ID!");
                return "<invalid>";
        }

        /* index is zero based */
        id--;

        if (bank >= ARRAY_SIZE(jep106) || !jep106[bank][id])
                return "<unknown>";

        return jep106[bank][id];
}
```


---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/openocd/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/openocd/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.


Reply via email to