; bdiGDB configuration for DaVinci EVM ; ------------------------------------ ; ; Commands supported in the SCANINIT and SCANPOST strings: ; ; I=<...b2b1b0> write IR, b0 is first scanned ; D=<...b2b1b0> write DR, b0 is first scanned ; n the number of bits 1..256 ; bx a data byte, two hex digits ; W wait for n (decimal) micro seconds ; T1 assert TRST ; T0 release TRST ; R1 assert RESET ; R0 release RESET ; CH clock TCK n (decimal) times with TMS high ; CL clock TCK n (decimal) times with TMS low ; ; [INIT] [TARGET] CPUTYPE ARM926E ;CLOCK 0 4 ; JTAG clock : start with 1 MHz then use adaptive CLOCK 4 ; JTAG clock : without adaptive clocking cable ;CLOCK 0 ; JTAG clock : adaptive clocking TRST PUSHPULL ; TRST driver type (OPENDRAIN | PUSHPULL) RESET HARD 500 ; NONE | HARD (ms) ENDIAN LITTLE ; memory model (LITTLE | BIG) WAKEUP 100 SCANPRED 1 6 ; count for ICEPick TAP SCANSUCC 0 0 ; no device after ARM926e BREAKMODE HARD ; HARD = hardware, SOFT = software, go figure VECTOR CATCH 0x02 ; Configure ICEPick module to make ARM926 TAP visible SCANINIT r1:w400000:r0 ; toggle reset for 0.4 seconds SCANINIT t1:w1000:t0:w1000: ; toggle TRST SCANINIT i6=07:d8=89:i6=02: ; connect and select router SCANINIT d32=81000082: ; set IP control SCANINIT d32=a018206f: ; configure TAP0 SCANINIT d32=a018216f:cl5: ; enable TAP0, clock 5 times in RTI ;SCANINIT d32=a018606f: ; configure TAP0 for wait in reset (WIR) ;SCANINIT d32=81000083: ; IP control = SysReset SCANINIT d32=a018616f:cl5: ; enable TAP0, clock 5 times in RTI SCANINIT i10=ffff ; scan bypass ; ; Between SCANINIT and SCANPOST the ARM ICEBreaker is configured ; and the DBGRQ bit in the ARM debug control register is set. ; ;SCANPOST i10=002f: ; IP(router) - ARM(bypass) ;;SCANPOST d33=0102000106: ; IP control = SysReset ;SCANPOST d33=014034c2de: ; TAP0 release from wait in reset ;SCANPOST i10=ffff ; scan bypass ; [HOST] IP 192.168.1.243 PROMPT DaVinci> FILE $test.elf FORMAT ELF START 0x4c LOAD AUTO [FLASH] CHIPTYPE MIRRORX16 CHIPSIZE 0x02000000 BUSWIDTH 16 [REGS] FILE $reg926e.def