bash$ cd gdbcop21-1.16-6xx-7xx-82xx-2003-04-01
bash$ mkdir bdisetup
bash$ cd bdisetup
bash$ unzip ../bdisetup.zip
Archive: ../bdisetup.zip
inflating: bdidll.c
inflating: bdisetup.c
inflating: bdicmd.h
inflating: bdidll.h
inflating: bdierror.h
inflating: makefile
inflating: bdicnf.c
inflating: bdicnf.h
bash$ make
gcc -O -c -o bdicnf.o bdicnf.c
gcc -O -c -o bdidll.o bdidll.c
gcc -O -c -o bdisetup.o bdisetup.c
gcc -o ./bdisetup ./bdicnf.o ./bdidll.o ./bdisetup.o -s
bash$ cp -p bdisetup /usr/local/bin/bdisetup
bash$ bdisetup
Usage of BDI setup program V1.10:
bdisetup -v [-pP] [-bB] [-s]
-v Read current versions
P Port e.g. /dev/ttyS0
B Baudrate 9, 19, 38, 57 or 115
-s if present, exit loader and start firmware
bdisetup -e [-pP] [-bB]
-e Erase firmware and logic
P Port e.g. /dev/ttyS0
B Baudrate 9, 19, 38, 57 or 115
bdisetup -u [-pP] [-bB] [-aA] [-tT] [-dD]
-u Update firmware and/or logic
P Port e.g. /dev/ttyS0
B Baudrate 9, 19, 38, 57 or 115
A Application type STD,GDB,ADA,TOR,ACC
T Target type: PPC400,MPC500,PPC600,PPC700,MPC800,MPC8200,MPC7400,MPC7450
CPU32,ARM,TRICORE,MCF,HC12,MCORE,MIPS,MIPS64,XSCALE
D Directory with the firmware/logic files
bdisetup -c [-pP] [-bB] [-iI] [-hH] [-mM] [-gG] [-fF]
-c Program network configuration
P Port e.g. /dev/ttyS0
B Baudrate 9, 19, 38, 57 or 115
I BDI IP address e.g. 100.100.100.100
H Host IP address
M Subnet mask (default: 255.255.255.255)
G Gateway IP address (default: 255.255.255.255)
F Configuration file name
(
Note: this is a simple tool. It does not perform any device locking, so root permissions are required to access the serial port.)
bash# bdisetup -u -p/dev/ttyS0 -b115 -aGDB -tMPC8200 -d.
Connecting to BDI loader
Firmware is already up to date
CPLD is already up to date
bash# bdisetup -c -p/dev/ttyS0 -h10.0.0.11 \
> -i10.0.0.10 -m255.0.0.0 -f/tftpboot/ATC/ATC.cfg
Connecting to BDI loader
Writing network configuration
Writing init list and mode
Configuration passed
bash# bdisetup -v -p/dev/ttyS0 -b115 -s
BDI Type : BDI2000 Rev.C (SN: 93202220)
Loader : V1.05
Firmware : V1.16 bdiGDB for PPC6xx/PPC7xx
Logic : V1.02 PPC6xx/PPC7xx
MAC : 00-0c-01-93-20-22
IP Addr : 10.0.0.10
Subnet : 255.0.0.0
Gateway : 255.255.255.255
Host IP : 10.0.0.11
Config : /tftpboot/ATC/ATC.cfg
bash$ telnet bdi
Trying 10.0.0.10...
Connected to bdi.denx.de (10.0.0.10).
Escape character is '^]'.
BDI Debugger for Embedded PowerPC
=================================
PHYS <address> converts an effective to a physical address
MD [<address>] [<count>] display target memory as word (32bit)
MDD [<address>] [<count>] display target memory as double word (64bit)
MDH [<address>] [<count>] display target memory as half word (16bit)
MDB [<address>] [<count>] display target memory as byte (8bit)
DUMP <addr> <size> [<file>] dump target memory to a file
MM <addr> <value> [<cnt>] modify word(s) (32bit) in target memory
MMD <addr> <value> [<cnt>] modify double word(s) (64bit) in target memory
MMH <addr> <value> [<cnt>] modify half word(s) (16bit) in target memory
MMB <addr> <value> [<cnt>] modify byte(s) (8bit) in target memory
MC [<address>] [<count>] calculates a checksum over a memory range
MV verifies the last calculated checksum
RD [<name>] display general purpose or user defined register
RDUMP [<file>] dump all user defined register to a file
RDSPR <number> display special purpose register
RDSR <number> display segment register
RDVR [<number>] display vector register
RM {<nbr>|<name>} <value> modify general purpose or user defined register
RMSPR <number> <value> modify special purpose register
RMSR <number> <value> modify segment register
RMVR <nbr><val val val val> modify vector register (four 32bit values)
DCACHE <addr | set> display L1 data cache content
UPMS <MCR-addr> <MDR-addr> set address of register MCR and MDR
UPMA display UPMA setup
UPMB display UPMB setup
BOOT reset the BDI and reload the configuration
RESET [HALT | RUN [time]] reset the target system, change startup mode
BREAK [SOFT | HARD] display or set current breakpoint mode
GO [<pc>] set PC and start target system
TI [<pc>] trace on instuction (single step)
TC [<pc>] trace on change of flow
HALT force target to enter debug mode
BI <addr> set instruction hardware breakpoint
CI [<id>] clear instruction hardware breakpoint(s)
BD [R|W] <addr> set data watchpoint via DABR (DABR[BT]=0)
BDT [R|W] <addr> set data watchpoint via DABR (DABR[BT]=1)
CD [<id>] clear data watchpoint(s)
INFO display information about the current state
LOAD [<offset>] [<file> [<format>]] load program file to target memory
VERIFY [<offset>] [<file> [<format>]] verify a program file to target memory
PROG [<offset>] [<file> [<format>]] program flash memory
<format> : SREC, BIN, AOUT or ELF
ERASE [<address> [<mode>]] erase a flash memory sector, chip or block
<mode> : CHIP, BLOCK or SECTOR (default is sector)
ERASE <addr> <step> <count> erase multiple flash sectors
UNLOCK <addr> <step> <count> unlock multiple flash sectors
FLASH <type> <size> <bus> change flash configuration
HOST <ip> change IP address of program file host
PROMPT <string> defines a new prompt string
CONFIG display BDI configuration
HELP display command list
QUIT terminate the Telnet session
*** TARGET: Init JTAG communication failed
# PPC: target has no power
*** TARGET: target powerfail detected
- TARGET: waiting for target Vcc
- TARGET: waiting for target Vcc
- TARGET: waiting for target Vcc
ATC>q
Connection closed by foreign host.