Adakah yang mencoba Debug menggunakan JTAG / BDM?

19

Apakah ada antarmuka JTAG / BDM yang dapat digunakan tersedia di Raspberry Pi?

Perangkat keras apa yang dibutuhkan Debugger untuk Debugging?

Bisakah Open OCD digunakan?

Lars Pötter
sumber

Jawaban:

8

Revisi 2.0 dari model B Raspberry Pi telah mengekspos pin JTAG.

Lihat http://www.raspberrypi.org/archives/1929

Damian Dixon
sumber
1
Jadi dengan Pin yang tersedia, Perangkat Lunak / Perangkat Keras mana yang diperlukan untuk menggunakan Pin untuk Debugging?
Lars Pötter
7

Anda dapat menemukan banyak informasi di sini . Sayangnya, menggunakan JTAG pada RPi tidak lurus ke depan. Sejujurnya, hanya karena itu sangat bermasalah, saya tidak repot-repot membuatnya bekerja. Inilah yang saya tahu:

Tidak semua sinyal JTAG mudah tersedia. Semua kecuali semua ada pada konektor GPIO (bukan pada konektor P2 JTAG - ini adalah VideoCore JTAG, bukan ARM dan AFAIK itu tidak dapat digunakan untuk orang di luar Broadcom). Pin tambahan ada pada konektor S5 (header CSI), Anda mungkin harus menyoldernya. Berikut adalah pin yang diperlukan (lebih lanjut tentang ini di situs dwelch67, Anda juga dapat menemukan informasi tentang fungsi pin alternatif GPIO pada raspberrypi wiki ):

  ARM_VREF    P1-1
  ARM_TRST    P1-15
  ARM_TDO     P1-18
  ARM_TCK     P1-22
  ARM_TDI     P1-7
  ARM_TMS     S5-11
  ARM_GND     P1-25

EDIT: Seperti @Damian tunjukkan, pada revisi 2.0 dari PCB, sinyal ARM_TMS yang hilang terhubung ke pin 13 pada P1 sehingga penyolderan tidak diperlukan lagi.

Sekarang, itu bukan satu-satunya masalah. Secara default semua pin tersebut dikonfigurasikan menjadi pin GPIO, bukan pin JTAG. Mereka harus dikonfigurasi ulang dalam perangkat lunak dan AFAIK tidak ada dukungan untuk ini di bootloader Yayasan. Dwelch67 menulis bootloadernya sendiri (bootloader tahap berikutnya) yang melakukan hal itu. Anda dapat mengunduhnya dari tautan yang disediakan di bagian atas jawaban ini.

Sedangkan untuk perangkat keras, perangkat keras ARM11 JTAG harus OK. Seperti yang disebutkan sebelumnya, saya tidak secara pribadi menguji sehingga saya tidak dapat melakukan rekomendasi. Dan ya, OpenOCD bisa digunakan. Bahkan ada proyek kecil (juga dilakukan oleh dwelch67) untuk membangun perangkat keras JTAG yang sangat sederhana dan murah berdasarkan papan murah seperti Launchpad . Lihat repo github- nya

Krzysztof Adamski
sumber
Hai "Christofer" Terima kasih telah mengirim beberapa informasi. Akan lebih bagus jika Anda bisa memperluas jawaban Anda. Mungkin kabel apa yang dibutuhkan - bagaimana menghubungkannya, gambar atau dua berjalan seribu kata. Kalau tidak, saya pikir itu layak menjadi komentar; Pengguna dapat pergi dan menjelajahinya sendiri. Selamat datang di Raspberry Pi SE :-) Witamy!
Piotr Kula
2
Saya telah menambahkan beberapa informasi lagi. Sebenarnya itu yang bisa saya katakan tentang hal ini dan saya pikir sejumlah kecil informasi lebih baik daripada tidak sama sekali. Dan karena itu satu-satunya jawaban, saya percaya tidak ada banyak informasi lain tentang itu di luar sana.
Krzysztof Adamski