Ah, I see now. With our updates to the Freedom repository, we need to update our openocd.cfg files to work with it properly. But since we have not yet uploaded the pre-built MCS versions from the current freedom repo to sifive.com, the freedom-e-sdk is still configured to work with the old one.
If you are building your own MCS files, you can change the following lines:
- Just remove the “expected ID” part from this.
https://github.com/sifive/freedom-e-sdk/blob/master/bsp/env/freedom-e300-arty/openocd.cfg#L16
This will solve this error:
Warn : JTAG tap: riscv.cpu UNEXPECTED: 0x20000913 (mfg: 0x489 (), part: 0x0000, ver: 0x2)
Error: JTAG tap: riscv.cpu expected 1 of 1: 0x10e31913 (mfg: 0x489 (), part: 0x0e31, ver: 0x1)
- Since OpenOCD can no longer look up the SPI Control address by JTAG ID, we need to explicitly tell it where the Flash Memory control address is. So add
0x10014000
to the end of this line:
https://github.com/sifive/freedom-e-sdk/blob/master/bsp/env/freedom-e300-arty/openocd.cfg#L22
That will solve the error
Error: Device ID 0x20000913 is not known as FESPI capable