/var/log/messages

debugging with sixth sense

JTAG デバッガ動作確認

結線して RasPI 電源投入して openocd 起動。結線はここ見つつで。切り欠きがあるナニを上にして左上が 1 番 (備忘)。

で、localhost:4444 に telnet 接続します。Debugging Raspberry Pi Linux kernel with JTAG and GDB によれば

  • halt
  • step 0x8190

で kernel の最初の命令に、とのこと。次に gdb 起動か。

tmux な仮想端末確認してみたら sid な chroot 起動しっぱなしでした。netstat 確認してみるに openocd がアレしてるのは

  • 3333
  • 4444
  • 6666

なんですがどれを使うのか。とりあえず gdb を起動して試してみた結果 3333 がアタリっぽい模様。0x8194 で停止しているように見えます。

(gdb) target remote :3333
Remote debugging using :3333
0x00008194 in ?? ()
(gdb) 

あ、file コマンドが微妙なのか。ええと

not in executable format: File format not recognized 

と言われます。今動いてるソレを取得した方が良いのかどうか。確認してみたところ以下なんですが

-rw-r--r-- 1 rms rms     404 Nov 22 22:16 kernel.img
-rw-r--r-- 1 rms rms 3115216 Jan  7  2014 kernel.img.ORG

これ、どこから持ってきたのだったかな。[ここ](http://yamanetoshi.github.io/blog/2014/11/25/building-raspi-kernel-and-debugging]でどこから取得したかな記述があるのですが、ここに出てる方法を試してみます。

リトライ

halt して load_image してみます。確かに今デバイスで動いているのは Linux な kernel ではないですね。load_image した後に step 0x8190 なのかな。

とは言え、このあたりって kernel.img が 読みこめないのとは違う問題だな。

結局

前回と同じあたりでハマッているのか。困ったな。とりあえず自分で作ってみた kernel なプログラムで云々などを試してみようと思います。

Comments