単純なアタッチは以下の通りでできた。
https://forum.rvspace.org/t/connecting-to-visionfive-s-jtag-port-a-short-guide/514/1
ホスト側のJTAG I/Fには秋月のFT232HLを使用した。
アタッチしてデバッグまでは特に問題なくできるものの、
TRSTnをアサートしてもリセットがかからない。
これができれば、リセットベクタからデバッグができるのだけどなぁ。。。
手順は以下の通り。
念のためオシロでTRSTnの端子を見ると、ちゃんと一定時間Lにアサートしていた。
アサート時間が短いのかなと思い、monitor jtagntrstassert_widthで調整をしてみても変わらず。
ホスト側は特に問題なさそう。
ターゲット側の問題のような感じはするけど、はっきりとはわからず。
仕様書は抜粋版しか公開されていないようなので、ここからも情報は得られなかった。
—
そうなると、U-Bootだとresetコマンドが実行できるのはなんでだろう?
抜粋版の仕様書にリセットレジスタの記載があるので、これを叩いているのだろうか。
ソースを見てみる。
U-BootのCONFIGSYSRESETSBIが経っていて、resetコマンド実行時にU-BootからOpenSBIに落ちている。
OpenSBIでは、I2Cでregulatorのレジスタのresetビットを叩いている…。
これは望んでいた方法ではないな。。。