The semantics of "-work-area-virt 0" (or phys) changed with the patch to require specifying physical or virtrual work area addresses. Specifying zero was previously a NOP. Now it means that address zero is valid. This patch addresses three related issues: - MMU-less processors should never specify work-area-virt; remove those specifications. Such processors include ARM7TDMI, Cortex-M3, and ARM966. - MMU-equipped processors *can* specify work-area-virt... but zero won't be appropriate, except in mischievous contexts (which hide null pointer exceptions). Remove those specs from those processors too. If any of those mappings is valid, someone will need to submit a patch adding it ... along with a comment saying what OS provides the mapping, and in which context. Example, say "works with Linux 2.6.30+, in kernel mode". (Note that ARM Linux doesn't map kernel memory to zero ...) - Clarify docs on that "-virt" and other work area stuff. Seems to me work-area-virt is quite problematic; not every operating system provides such static mappings; if they do, they're not in every MMU context... Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
30 lines
806 B
INI
30 lines
806 B
INI
jtag_nsrst_delay 200
|
|
jtag_ntrst_delay 200
|
|
|
|
#use combined on interfaces or targets that can't set TRST/SRST separately
|
|
reset_config trst_and_srst srst_pulls_trst
|
|
|
|
#LPCs need reset pulled while RTCK is low. 0 to activate JTAG, power-on reset is not enough
|
|
jtag_reset 1 1
|
|
jtag_reset 0 0
|
|
|
|
#jtag scan chain
|
|
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
|
|
jtag newtap lpc2148 one -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id 0x4f1f0f0f
|
|
|
|
#target configuration
|
|
#daemon_startup reset
|
|
|
|
set _TARGETNAME [format "%s.cpu" lpc2148]
|
|
target create lpc2148.cpu arm7tdmi -endian little -work-area-size 0x4000 -work-area-phys 0x40000000 -work-area-backup 0
|
|
|
|
$_TARGETNAME configure -event reset-init {
|
|
soft_reset_halt
|
|
mvb 0xE01FC040 0x01
|
|
}
|
|
|
|
|
|
|
|
flash bank lpc2000 0x0 0x7d000 0 0 0 lpc2000_v2 14765
|
|
|