PRUのデバッグを行うにあたり、user-land側からのSoCのレジスタ確認のためのdevmem2とprudebugをインストールする。
先ずはdevmem2をインストール。
debian@beaglebone:~$ mkdir devmem2
debian@beaglebone:~$ cd devmem2/
debian@beaglebone:~/devmem2$ wget http://download.atmark-techno.com/misc/accessng-any-address/devmem2.tar.gz
--2014-10-26 14:45:16-- http://download.atmark-techno.com/misc/accessing-any-adress/devmem2.tar.gz
Resolving download.atmark-techno.com (download.atmark-techno.com)... 121.101.71135
Connecting to download.atmark-techno.com (download.atmark-techno.com)|121.101.7.135|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2220 (2.2K) [application/x-gzip]
Saving to: `devmem2.tar.gz'
100%[======================================>] 2,220 --.-K/s in 0s
2014-10-26 14:45:16 (22.9 MB/s) - `devmem2.tar.gz' saved [2220/2220]
debian@beaglebone:~/devmem2$ tar zxvf devmem2.tar.gz
devmem2/
devmem2/Makefile
devmem2/devmem2.c
debian@beaglebone:~/devmem2$ cd devmem2
debian@beaglebone:~/devmem2/devmem2$ gcc devmem2.c -o devmem2
debian@beaglebone:~/devmem2/devmem2$ sudo ./devmem2
Usage: ./devmem2 { address } [ type [ data ] ]
address : memory address to act upon
type : access operation type : [b]yte, [h]alfword, [w]ord
data : data to be written
debian@beaglebone:~/devmem2/devmem2$ sudo cp ./devmem2 /usr/bin
debian@beaglebone:~/devmem2/devmem2$ sudo chown root:root /usr/bin/devmem2
debian@beaglebone:~/devmem2/devmem2$ ls -la /usr/bin | grep devmem2
-rwxr-xr-x 1 root root 7550 Oct 26 15:01 devmem2
debian@beaglebone:~/devmem2/devmem2$ sudo devmem2
Usage: devmem2 { address } [ type [ data ] ]
address : memory address to act upon
type : access operation type : [b]yte, [h]alfword, [w]ord
data : data to be written
debian@beaglebone:~/devmem2/devmem2$
続いてprudebugのインストール。
debian@beaglebone:~$ mkdir prudebug
debian@beaglebone:~$ cd prudebug
debian@beaglebone:~/prudebug$ wget http://sourceforge.net/projects/prudebug/files/prudebug-0.25.tar
--2014-10-29 14:13:02-- http://sourceforge.net/projects/prudebug/files/prudebug-0.25.tar
Resolving sourceforge.net (sourceforge.net)... 216.34.181.60
Connecting to sourceforge.net (sourceforge.net)|216.34.181.60|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://sourceforge.net/projects/prudebug/files/prudebug-0.25.tar/download [following]
--2014-10-29 14:13:03-- http://sourceforge.net/projects/prudebug/files/prudebug-0.25.tar/download
Connecting to sourceforge.net (sourceforge.net)|216.34.181.60|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://downloads.sourceforge.net/project/prudebug/prudebug-0.25.tar?r=&ts=1414591983&use_mirror=softlayer-sng [following]
--2014-10-29 14:13:03-- http://downloads.sourceforge.net/project/prudebug/prudebug-0.25.tar?r=&ts=1414591983&use_mirror=softlayer-sng
Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 216.34.181.59
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://softlayer-sng.dl.sourceforge.net/project/prudebug/prudebug-0.25.tar [following]
--2014-10-29 14:13:04-- http://softlayer-sng.dl.sourceforge.net/project/prudebug/prudebug-0.25.tar
Resolving softlayer-sng.dl.sourceforge.net (softlayer-sng.dl.sourceforge.net)... 216.12.198.152
Connecting to softlayer-sng.dl.sourceforge.net (softlayer-sng.dl.sourceforge.net)|216.12.198.152|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 163840 (160K) [application/octet-stream]
Saving to: `prudebug-0.25.tar'
100%[======================================>] 163,840 402K/s in 0.4s
2014-10-29 14:13:04 (402 KB/s) - `prudebug-0.25.tar' saved [163840/163840]
debian@beaglebone:~/prudebug$ tar -xf prudebug-0.25.tar
debian@beaglebone:~/prudebug$ ls -la
total 172
drwxr-xr-x 3 debian debian 4096 Oct 29 14:14 .
drwxr-xr-x 12 debian debian 4096 Oct 29 14:12 ..
drwxr-xr-x 2 debian debian 4096 Mar 8 2014 prudebug-0.25
-rw-r--r-- 1 debian debian 163840 Mar 8 2014 prudebug-0.25.tar
debian@beaglebone:~/prudebug$ cd prudebug-0.25
debian@beaglebone:~/prudebug/prudebug-0.25$ ls -la
total 192
drwxr-xr-x 2 debian debian 4096 Mar 8 2014 .
drwxr-xr-x 3 debian debian 4096 Oct 29 14:14 ..
-rw-r--r-- 1 debian debian 8698 Mar 8 2014 cmd.c
-rw-r--r-- 1 debian debian 1591 Mar 8 2014 cmdinput.c
-rw-r--r-- 1 debian debian 2264 Mar 8 2014 cmdinput.o
-rw-r--r-- 1 debian debian 10512 Mar 8 2014 cmd.o
-rw-r--r-- 1 debian debian 7302 Mar 8 2014 da.c
-rw-r--r-- 1 debian debian 8120 Mar 8 2014 da.o
-rw-r--r-- 1 debian debian 1510 Mar 8 2014 LICENSE
-rw-r--r-- 1 debian debian 136 Mar 8 2014 Makefile
-rw-r--r-- 1 debian debian 6176 Mar 8 2014 printhelp.c
-rw-r--r-- 1 debian debian 8484 Mar 8 2014 printhelp.o
-rw-r--r-- 1 debian debian 16769 Mar 8 2014 prudbg.c
-rw-r--r-- 1 debian debian 2607 Mar 8 2014 prudbg.h
-rw-r--r-- 1 debian debian 13240 Mar 8 2014 prudbg.o
-rwxr-xr-x 1 debian debian 41276 Mar 8 2014 prudebug
-rw-r--r-- 1 debian debian 9495 Mar 8 2014 README
-rw-r--r-- 1 debian debian 1238 Mar 8 2014 uio.c
-rw-r--r-- 1 debian debian 549 Mar 8 2014 uio.h
-rw-r--r-- 1 debian debian 2016 Mar 8 2014 uio.o
debian@beaglebone:~/prudebug/prudebug-0.25$ sudo ./prudebug
PRU Debugger v0.25
(C) Copyright 2011, 2013 by Arctica Technologies. All rights reserved.
Written by Steven Anderson
Using UIO PRUSS device.
Processor type AM335x
PRUSS memory address 0x4a300000
PRUSS memory length 0x00040000
offsets below are in 32-bit word addresses (not ARM byte addresses)
PRU Instruction Data Ctrl
0 0x0000d000 0x00000000 0x00008800
1 0x0000e000 0x00000800 0x00009000
PRU0> q
Goodbye.
debian@beaglebone:~/prudebug/prudebug-0.25$ sudo cp ./prudebug /usr/bin/
debian@beaglebone:~/prudebug/prudebug-0.25$ sudo chown root:root /usr/bin/prudebug
debian@beaglebone:~/prudebug/prudebug-0.25$ sudo prudebug
PRU Debugger v0.25
(C) Copyright 2011, 2013 by Arctica Technologies. All rights reserved.
Written by Steven Anderson
Using UIO PRUSS device.
Processor type AM335x
PRUSS memory address 0x4a300000
PRUSS memory length 0x00040000
offsets below are in 32-bit word addresses (not ARM byte addresses)
PRU Instruction Data Ctrl
0 0x0000d000 0x00000000 0x00008800
1 0x0000e000 0x00000800 0x00009000
PRU0> q
Goodbye.
debian@beaglebone:~/prudebug/prudebug-0.25$
どちらも特に問題無くインストール完了。
動作は追々見て行くことにする。
