OpenOCDを使ってVisionFive2のJTAGデバッグ

単純なアタッチは以下の通りでできた。
https://forum.rvspace.org/t/connecting-to-visionfive-s-jtag-port-a-short-guide/514/1

ホスト側のJTAG I/Fには秋月のFT232HLを使用した。

アタッチしてデバッグまでは特に問題なくできるものの、
TRSTnをアサートしてもリセットがかからない。
これができれば、リセットベクタからデバッグができるのだけどなぁ。。。

手順は以下の通り。

  1. FT232HLのOpenOCDの設定にTRSTn関連の端子設定をする
  2. gdbからmonitor resetコマンドを実行する

念のためオシロでTRSTnの端子を見ると、ちゃんと一定時間Lにアサートしていた。
アサート時間が短いのかなと思い、monitor jtagntrstassert_widthで調整をしてみても変わらず。
ホスト側は特に問題なさそう。

ターゲット側の問題のような感じはするけど、はっきりとはわからず。
仕様書は抜粋版しか公開されていないようなので、ここからも情報は得られなかった。

そうなると、U-Bootだとresetコマンドが実行できるのはなんでだろう?
抜粋版の仕様書にリセットレジスタの記載があるので、これを叩いているのだろうか。

ソースを見てみる。
U-BootのCONFIGSYSRESETSBIが経っていて、resetコマンド実行時にU-BootからOpenSBIに落ちている。
OpenSBIでは、I2Cでregulatorのレジスタのresetビットを叩いている…。
これは望んでいた方法ではないな。。。

Posted at : 2023-08-05 16:13:07 / Category : none

Comments

まだコメントはありません / No comment.

Send comment


Name


Mail-address (empty is OK. If you want to notify update, please fill mail-address.)


Bot check code (240715 と入力してください / Please input 240715.)