JTAGiPAQh5450V1 1

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

JTAG iPAQ h5450 V1.

jTAG iPAQ h5450

jTAG iPAQ h5450


HARDWARE MANUAL

EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

Intel® XScale™ core are registered trademarks of Intel Corporation

ARM and StrongARM are registered trademarks of ARM, Ltd.

iPAQ is a trademark of Hewlett-Packard Development Company, L.P.

WIGGLER-jTAG is a trademark of Macraigor Systems LLC

All rights reserved for the Free and Open On-Chip Debugging, In-System
Programming and Boundary-Scan Testing Software openOCD from Dominic Rath

This document is only for development and you use it for your own risk

EDA-Consult CAE-CAD-CAM Udo Kuhn 2008 EDAconsult@yahoo.com

EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

Contents

1 Hardware

1.1 HP iPAQ h5450 jTAG points ......................... 3


1.2 Wigller jTAG Schematic ............................ 4

2 Software

2.1 xscale_pxa250_pp.cfg .............................. 5


2.2 openOCD Startup ................................... 6
2.3 Connecting to GDB ................................. 7
2.4 Connecting to Telnet .............................. 8

1
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

2
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

1 Hardware

1.1 HP iPAQ h5450 jTAG points

nTRST
see
Note2
TDO TDI

TCK
TMS 3V3 GND
R102

Note 1: nSRST is not connectet to the jTAG.


Note 2: openOCD send a reset puls only on nTRST in Wiggler-parallel mode! This is
important to download the debug-handler in the cache. In other cases change nSRST and
nTRST.

3
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

1.2 WIGGLER jTAG Schematic

Download KiKAD Files from EDA-Consult Udo Kuhn

pin1

4
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

2 Software

2.1 xscale_pxa250_pp.cfg

Place that cfg-file in


C:/Programme/openocd-r520/bin/configs/xscale_pxa250_pp.cfg

#--- Daemon configuration ------------------------


telnet_port 4444
gdb_port 3333
daemon_startup reset

#--- JTAG interface configuration ----------------


# interface parport 0x378 0x278 or 0x3BC
interface parport
parport_port 0x378
parport_cable wiggler
jtag_speed 0

jtag_nsrst_delay 250
#-- Reset options available
reset_config trst_and_srst separate

#-- jtag scan chain


# format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
jtag_device 5 0x01 0x1f 0x1e

#--- Target Configuration ------------------------

# target <type> <endianess> <startup mode> <jtagpos> <variant>


target xscale little run_and_init 0 pxa250
daemon_startup reset

# target_script 0 reset C:\Programme\openocd-r520\bin\scripts\pxa250.script

run_and_halt_time 0 30

# working_area 0 0xa0000000 0x02000000 nobackup

flash bank cfi 0x00000000 0x01000000 2 4 0


flash bank cfi 0x01000000 0x01000000 2 4 0

# For more information about the configuration files, take a look at:
# http://openfacts.berlios.de/index-en.phtml?title=Open+On-Chip+Debugger
# iPAQ h5450 Flash Layout
# partitions=00000002
# bootldr
# base: 00000000
# size: 00040000
# end: 00040000
# flags: 00000002
# root
# base: 00040000
# size: 01FC0000
# end: 02000000
# flags: 00000018

5
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

2.2 openOCD Startup

The latest version with Wiggler-jTAG support is „openOCD-r520“.

On the Intel® XScale™ core, a 2K mini instruction cache, physically separate


from the 32K main instruction cache can be used as an on-chip instruction RAM.
An external host can download code directly into either the mini or main
instruction cache through JTAG. In addition to downloading code, several cache
functions are supported.

The Intel® XScale™ core supports loading either instruction cache during reset
and during program execution. Loading the instruction cache during normal
program execution requires a strict handshaking protocol between software
running on the Intel® XScale™ core and the external host, openOCD has some
files for that and load that automatic by Reset. This Files see you below.

You found it in Linux-Packetes from openOCD, in Windows openOCD is it not


included, copy that files in the subfolder „\Programme\openocd-r520\xscale“.

Or download all „cfg“ and „debug-handler“-Files from EDA-Consult.

C:\Programme\openocd-r520\xscale

28.02.2008 12:07 442 build.sh


29.05.2007 13:23 1.592 debug_handler.bin
28.02.2008 12:07 700 debug_handler.cmd
28.02.2008 12:07 13.615 debug_handler.S
28.02.2008 12:07 2.510 protocol.h

Next make your WIN-XP printerport accssible.

C:\Programme\openocd-r520\driver\parport\install_giveio.bat

Than startup openOCD with xscale configfile in a dosbox.

C:/Programme/openocd-r520/bin/openocd-pp -f /Programme/openocd-r520/bin/configs/xscale_pxa250_pp.cfg

You see that on your dosbox.

C:\Programme\openocd-r520\xscale>C:/Programme/openocd-r520/bin/openocd-pp -f /Pr
ogramme/openocd-r520/bin/configs/xscale_pxa250_pp.cfg
Open On-Chip Debugger (2008-03-22 12:00 CET) svn: r520
URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/
Info: jtag.c:1329 jtag_examine_chain(): JTAG device found: 0x49264013 (Manufa
cturer: 0x009, Part: 0x9264, Version: 0x4)

6
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

2.3 Connecting to GDB

Open a second dosbox on your PC and type in:

cd C:\Programme\yagarto\bin

Then type in on the dosprompt: arm-elf-gdb.exe

C:\Programme\yagarto\bin>arm-elf-gdb.exe
GNU gdb 6.7.1
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-pc-mingw32 --target=arm-elf".
(gdb)

Type in on the GDB-prompt: target remote localhost:3333

C:\Programme\yagarto\bin>arm-elf-gdb.exe
GNU gdb 6.7.1
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-pc-mingw32 --target=arm-elf".
(gdb) target remote localhost:3333
Remote debugging using localhost:3333
0x00000230 in ?? ()
(gdb)

Type in on the GDB-prompt: x /20 0x0

C:\Programme\yagarto\bin>arm-elf-gdb.exe
GNU gdb 6.7.1
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-pc-mingw32 --target=arm-elf".
(gdb) target remote localhost:3333
Remote debugging using localhost:3333
0x00000230 in ?? ()
(gdb) x /20 0x0
0x0: 0xea000082 0xea00000c 0xea00001b 0xea00002a
0x10: 0xea000046 0xea000070 0xea000054 0xea000061
0x20: 0x646c7462 0x0002150c 0x00000000 0x01040009
0x30: 0x000000d7 0x30303933 0x0003c0e4 0xe28fd0ac
0x40: 0xe88d1fff 0xe1a0c00e 0xeb000201 0xe59f0bd8
(gdb)

7
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

2.4 Connecting to Telnet

Open a third dosbox on your PC and type in:

C:\>telnet localhost 4444

And you see that.

Open On-Chip Debugger


>

Than you have a connction with openOCD and type in: help xscale

Open On-Chip Debugger


> help xscale
xscale xscale specific commands
debug_handler - 'xscale debug_handler <target#> <address>' command takes
two required operands
cache_clean_address - no help available
cache_info - no help available
mmu - ['enable'|'disable'] the MMU
icache - ['enable'|'disable'] the ICache
dcache - ['enable'|'disable'] the DCache
vector_catch - <mask> of vectors that should be catched
trace_buffer - <enable|disable> ['fill' [n]|'wrap']
dump_trace - dump content of trace buffer to <file>
analyze_trace - analyze content of trace buffer
trace_image - load image from <file> [base address]
cp15 - access coproc 15 <register> [value]
fast_memory_access - use fast memory accesses instead of slower but potential
ly unsafe slow accesses <enable|disable>
>

On the first dosbox you see some messages from GDB and Telnet.

C:\Programme\openocd-r520\xscale>C:/Programme/openocd-r520/bin/openocd-pp -f /Pr
ogramme/openocd-r520/bin/configs/xscale_pxa250_pp.cfg
Open On-Chip Debugger (2008-03-22 12:00 CET) svn: r520
URL: http://svn.berlios.de/svnroot/repos/openocd/trunk/
Info: jtag.c:1329 jtag_examine_chain(): JTAG device found: 0x49264013 (Manufa
cturer: 0x009, Part: 0x9264, Version: 0x4)
Info: server.c:66 add_connection(): accepting 'gdb' connection from 0
Warning: xscale.c:1268 xscale_halt(): target was already halted
Warning: gdb_server.c:418 gdb_get_packet_inner(): acknowledgment received, but n
o packet pending
Info: server.c:66 add_connection(): accepting 'telnet' connection from 0
Info: server.c:355 server_loop(): dropped 'telnet' connection
Info: server.c:66 add_connection(): accepting 'telnet' connection from 0

8
EDA-Consult CAE-CAD-CAM
JTAG iPAQ h5450 V1.1

9
EDA-Consult CAE-CAD-CAM

You might also like