Freddie Chopin <freddie_chopin@op.pl> move files about to where they belong

git-svn-id: svn://svn.berlios.de/openocd/trunk@1798 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
oharboe 2009-05-16 14:57:02 +00:00
parent ea3ddc7e4f
commit 72f5449e4b
10 changed files with 500 additions and 508 deletions

View File

@ -1,46 +1,46 @@
# iMote2 # Crossbow Technology iMote2
#
if { [info exists CHIPNAME] } { if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME set _CHIPNAME $CHIPNAME
} else { } else {
set _CHIPNAME imote2 set _CHIPNAME imote2
} }
if { [info exists ENDIAN] } { if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN set _ENDIAN $ENDIAN
} else { } else {
set _ENDIAN little set _ENDIAN little
} }
if { [info exists CPUTAPID ] } { if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID set _CPUTAPID $CPUTAPID
} else { } else {
# force an error till we get a good number # force an error till we get a good number
set _CPUTAPID 0xffffffff set _CPUTAPID 0xffffffff
} }
# PXA271 and an Intel Strataflash of 32 Megabytes (p30) # PXA271 and an Intel Strataflash of 32 Megabytes (p30)
# #
# Marvell/Intel PXA270 Script # Marvell/Intel PXA270 Script
# set jtag_nsrst_delay to the delay introduced by your reset circuit # set jtag_nsrst_delay to the delay introduced by your reset circuit
# the rest of the needed delays are built into the openocd program # the rest of the needed delays are built into the openocd program
jtag_nsrst_delay 800 jtag_nsrst_delay 800
# set the jtag_ntrst_delay to the delay introduced by a reset circuit # set the jtag_ntrst_delay to the delay introduced by a reset circuit
# the rest of the needed delays are built into the openocd program # the rest of the needed delays are built into the openocd program
jtag_ntrst_delay 0 jtag_ntrst_delay 0
#use combined on interfaces or targets that can't set TRST/SRST separately #use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst separate reset_config trst_and_srst separate
#jtag scan chain #jtag scan chain
jtag newtap $_CHIPNAME cpu -irlen 7 -ircapture 0x1 -irmask 0x7f -expected-id $_CPUTAPID jtag newtap $_CHIPNAME cpu -irlen 7 -ircapture 0x1 -irmask 0x7f -expected-id $_CPUTAPID
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME xscale -endian $_ENDIAN -chain-position $_TARGETNAME -variant pxa27x target create $_TARGETNAME xscale -endian $_ENDIAN -chain-position $_TARGETNAME -variant pxa27x
$_TARGETNAME configure -work-area-virt 0x0x5c000000 -work-area-phys 0x0x5c000000 -work-area-size 0x10000 -work-area-backup 1 $_TARGETNAME configure -work-area-virt 0x0x5c000000 -work-area-phys 0x0x5c000000 -work-area-size 0x10000 -work-area-backup 1
# maps to PXA internal RAM. If you are using a PXA255 # maps to PXA internal RAM. If you are using a PXA255
# you must initialize SDRAM or leave this option off # you must initialize SDRAM or leave this option off
#flash bank <driver> <base> <size> <chip_width> <bus_width> #flash bank <driver> <base> <size> <chip_width> <bus_width>
# works for P30 flash # works for P30 flash
flash bank cfi 0x00000000 0x2000000 2 2 0 flash bank cfi 0x00000000 0x2000000 2 2 0

View File

@ -1,128 +1,127 @@
# FIXME: THIS IS A *BOARD* not a CHIP configuration. ######################################
###################################### # Target: DIGI ConnectCore Wi-9C
# Target: DIGI ConnectCore Wi-9C ######################################
######################################
reset_config trst_and_srst
reset_config trst_and_srst
if { [info exists CHIPNAME] } {
if { [info exists CHIPNAME] } { set _CHIPNAME $CHIPNAME
set _CHIPNAME $CHIPNAME } else {
} else { set _CHIPNAME ns9360
set _CHIPNAME ns9360 }
}
if { [info exists ENDIAN] } {
if { [info exists ENDIAN] } { set _ENDIAN $ENDIAN
set _ENDIAN $ENDIAN } else {
} else { # This config file was defaulting to big endian..
# This config file was defaulting to big endian.. set _ENDIAN big
set _ENDIAN big }
}
# What's a good fallback frequency for this board if RCLK is
# What's a good fallback frequency for this board if RCLK is # not available??
# not available?? jtag_rclk 1000
jtag_rclk 1000
if { [info exists CPUTAPID ] } {
if { [info exists CPUTAPID ] } { set _CPUTAPID $CPUTAPID
set _CPUTAPID $CPUTAPID } else {
} else { set _CPUTAPID 0xFFFFFFFF
set _CPUTAPID 0xFFFFFFFF }
}
set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
jtag_nsrst_delay 200
jtag_nsrst_delay 200 jtag_ntrst_delay 0
jtag_ntrst_delay 0
######################
###################### # Target configuration
# Target configuration ######################
######################
target create $_TARGETNAME arm926ejs -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm926ejs
target create $_TARGETNAME arm926ejs -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm926ejs $_TARGETNAME configure -event reset-init {
$_TARGETNAME configure -event reset-init { mww 0x90600104 0x33313333
mww 0x90600104 0x33313333 mww 0xA0700000 0x00000001 # Enable the memory controller.
mww 0xA0700000 0x00000001 # Enable the memory controller. mww 0xA0700024 0x00000006 # Set the refresh counter 6
mww 0xA0700024 0x00000006 # Set the refresh counter 6 mww 0xA0700028 0x00000001 #
mww 0xA0700028 0x00000001 # mww 0xA0700030 0x00000001 # Set the precharge period
mww 0xA0700030 0x00000001 # Set the precharge period mww 0xA0700034 0x00000004 # Active to precharge command period is 16 clock cycles
mww 0xA0700034 0x00000004 # Active to precharge command period is 16 clock cycles mww 0xA070003C 0x00000001 # tAPR
mww 0xA070003C 0x00000001 # tAPR mww 0xA0700040 0x00000005 # tDAL
mww 0xA0700040 0x00000005 # tDAL mww 0xA0700044 0x00000001 # tWR
mww 0xA0700044 0x00000001 # tWR mww 0xA0700048 0x00000006 # tRC 32 clock cycles
mww 0xA0700048 0x00000006 # tRC 32 clock cycles mww 0xA070004C 0x00000006 # tRFC 32 clock cycles
mww 0xA070004C 0x00000006 # tRFC 32 clock cycles mww 0xA0700054 0x00000001 # tRRD
mww 0xA0700054 0x00000001 # tRRD mww 0xA0700058 0x00000001 # tMRD
mww 0xA0700058 0x00000001 # tMRD mww 0xA0700100 0x00004280 # Dynamic Config 0 (cs4)
mww 0xA0700100 0x00004280 # Dynamic Config 0 (cs4) mww 0xA0700120 0x00004280 # Dynamic Config 1 (cs5)
mww 0xA0700120 0x00004280 # Dynamic Config 1 (cs5) mww 0xA0700140 0x00004280 # Dynamic Config 2 (cs6)
mww 0xA0700140 0x00004280 # Dynamic Config 2 (cs6) mww 0xA0700160 0x00004280 # Dynamic Config 3 (cs7)
mww 0xA0700160 0x00004280 # Dynamic Config 3 (cs7) #
# mww 0xA0700104 0x00000203 # CAS latency is 2 at 100 MHz
mww 0xA0700104 0x00000203 # CAS latency is 2 at 100 MHz mww 0xA0700124 0x00000203 # CAS latency is 2 at 100 MHz
mww 0xA0700124 0x00000203 # CAS latency is 2 at 100 MHz mww 0xA0700144 0x00000203 # CAS latency is 2 at 100 MHz
mww 0xA0700144 0x00000203 # CAS latency is 2 at 100 MHz mww 0xA0700164 0x00000203 # CAS latency is 2 at 100 MHz
mww 0xA0700164 0x00000203 # CAS latency is 2 at 100 MHz #
# mww 0xA0700020 0x00000103 # issue SDRAM PALL command
mww 0xA0700020 0x00000103 # issue SDRAM PALL command #
# mww 0xA0700024 0x00000001 # Set the refresh counter to be as small as possible
mww 0xA0700024 0x00000001 # Set the refresh counter to be as small as possible #
# # Add some dummy writes to give the SDRAM time to settle, it needs two
# Add some dummy writes to give the SDRAM time to settle, it needs two # AHB clock cycles, here we poke in the debugger flag, this lets
# AHB clock cycles, here we poke in the debugger flag, this lets # the software know that we are in the debugger
# the software know that we are in the debugger mww 0xA0900000 0x00000002
mww 0xA0900000 0x00000002 mww 0xA0900000 0x00000002
mww 0xA0900000 0x00000002 mww 0xA0900000 0x00000002
mww 0xA0900000 0x00000002 mww 0xA0900000 0x00000002
mww 0xA0900000 0x00000002 mww 0xA0900000 0x00000002
mww 0xA0900000 0x00000002 #
# mdw 0xA0900000
mdw 0xA0900000 mdw 0xA0900000
mdw 0xA0900000 mdw 0xA0900000
mdw 0xA0900000 mdw 0xA0900000
mdw 0xA0900000 mdw 0xA0900000
mdw 0xA0900000 #
# mww 0xA0700024 0x00000030 # Set the refresh counter to 30
mww 0xA0700024 0x00000030 # Set the refresh counter to 30 mww 0xA0700020 0x00000083 # Issue SDRAM MODE command
mww 0xA0700020 0x00000083 # Issue SDRAM MODE command #
# # Next we perform a read of RAM.
# Next we perform a read of RAM. # mw = move word.
# mw = move word. mdw 0x00022000
mdw 0x00022000 # mw 0x00022000:P, r3 # 22000 for cas2 latency, 32000 for cas 3
# mw 0x00022000:P, r3 # 22000 for cas2 latency, 32000 for cas 3 #
# mww 0xA0700020 0x00000003 # issue SDRAM NORMAL command
mww 0xA0700020 0x00000003 # issue SDRAM NORMAL command mww 0xA0700100 0x00084280 # Enable buffer access
mww 0xA0700100 0x00084280 # Enable buffer access mww 0xA0700120 0x00084280 # Enable buffer access
mww 0xA0700120 0x00084280 # Enable buffer access mww 0xA0700140 0x00084280 # Enable buffer access
mww 0xA0700140 0x00084280 # Enable buffer access mww 0xA0700160 0x00084280 # Enable buffer access
mww 0xA0700160 0x00084280 # Enable buffer access
#Set byte lane state (static mem 1)"
#Set byte lane state (static mem 1)" mww 0xA0700220, 0x00000082
mww 0xA0700220, 0x00000082 #Flash Start
#Flash Start mww 0xA09001F8, 0x50000000
mww 0xA09001F8, 0x50000000 #Flash Mask Reg
#Flash Mask Reg mww 0xA09001FC, 0xFF000001
mww 0xA09001FC, 0xFF000001 mww 0xA0700028, 0x00000001
mww 0xA0700028, 0x00000001
# RAMAddr = 0x00020000
# RAMAddr = 0x00020000 # RAMSize = 0x00004000
# RAMSize = 0x00004000
# Set the processor mode
# Set the processor mode reg cpsr 0xd3
reg cpsr 0xd3 }
}
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00000000 -work-area-size 0x1000 -work-area-backup 1
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00000000 -work-area-size 0x1000 -work-area-backup 1
#####################
##################### # Flash configuration
# Flash configuration #####################
#####################
#M29DW323DB - not working
#M29DW323DB - not working #flash bank cfi <base> <size> <chip width> <bus width> <target#>
#flash bank cfi <base> <size> <chip width> <bus width> <target#> flash bank cfi 0x50000000 0x0400000 2 2 0
flash bank cfi 0x50000000 0x0400000 2 2 0

View File

@ -1,50 +1,50 @@
# Hitex stm32 performance stick # Hitex stm32 performance stick
if { [info exists CHIPNAME] } { if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME set _CHIPNAME $CHIPNAME
} else { } else {
set _CHIPNAME stm32_hitex set _CHIPNAME stm32_hitex
} }
if { [info exists ENDIAN] } { if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN set _ENDIAN $ENDIAN
} else { } else {
set _ENDIAN little set _ENDIAN little
} }
# set jtag speed # set jtag speed
jtag_khz 500 jtag_khz 500
jtag_nsrst_delay 100 jtag_nsrst_delay 100
jtag_ntrst_delay 100 jtag_ntrst_delay 100
#use combined on interfaces or targets that can't set TRST/SRST separately #use combined on interfaces or targets that can't set TRST/SRST separately
reset_config trst_and_srst reset_config trst_and_srst
#jtag scan chain #jtag scan chain
# The CPU # The CPU
if { [info exists CPUTAPID ] } { if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID set _CPUTAPID $CPUTAPID
} else { } else {
# See STM Document RM0008 # See STM Document RM0008
# Section 26.6.3 # Section 26.6.3
set _CPUTAPID 0x3ba00477 set _CPUTAPID 0x3ba00477
} }
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
# The boundery scan register, leave the "expected-id" undefined. # The boundery scan register, leave the "expected-id" undefined.
jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1
# configure str750 connected to jtag chain # configure str750 connected to jtag chain
jtag newtap $_CHIPNAME unknown -irlen 4 -ircapture 0x1 -irmask 0x0f jtag newtap $_CHIPNAME unknown -irlen 4 -ircapture 0x1 -irmask 0x0f
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0
# #
flash bank stm32x 0 0 0 0 0 flash bank stm32x 0 0 0 0 0
# For more information about the configuration files, take a look at: # For more information about the configuration files, take a look at:
# openocd.texi # openocd.texi

View File

@ -1,68 +1,72 @@
#Hitex STR9 Comstick # Hitex STR9-comStick
# http://www.hitex.com/index.php?id=383
# set jtag speed # This works for the STR9-comStick revisions STR912CS-A1 and STR912CS-A2.
jtag_khz 3000
source [find interface/hitex_str9-comstick.cfg]
jtag_nsrst_delay 100
jtag_ntrst_delay 100 # set jtag speed
#use combined on interfaces or targets that can't set TRST/SRST separately jtag_khz 3000
reset_config trst_and_srst
#jtag scan chain jtag_nsrst_delay 100
#format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE) jtag_ntrst_delay 100
#use combined on interfaces or targets that can't set TRST/SRST separately
if { [info exists CHIPNAME] } { reset_config trst_and_srst
set _CHIPNAME $CHIPNAME #jtag scan chain
} else { #format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
set _CHIPNAME str912
} if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME
if { [info exists ENDIAN] } { } else {
set _ENDIAN $ENDIAN set _CHIPNAME str912
} else { }
set _ENDIAN little
} if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN
if { [info exists FLASHTAPID ] } { } else {
set _FLASHTAPID $FLASHTAPID set _ENDIAN little
} else { }
set _FLASHTAPID 0x04570041
} if { [info exists FLASHTAPID ] } {
jtag newtap $_CHIPNAME flash -irlen 8 -ircapture 0x1 -irmask 0x1 -expected-id $_FLASHTAPID set _FLASHTAPID $FLASHTAPID
} else {
if { [info exists CPUTAPID ] } { set _FLASHTAPID 0x04570041
set _CPUTAPID $CPUTAPID }
} else { jtag newtap $_CHIPNAME flash -irlen 8 -ircapture 0x1 -irmask 0x1 -expected-id $_FLASHTAPID
set _CPUTAPID 0x25966041
} if { [info exists CPUTAPID ] } {
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID set _CPUTAPID $CPUTAPID
} else {
if { [info exists BSTAPID ] } { set _CPUTAPID 0x25966041
set _BSTAPID $BSTAPID }
} else { jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
# Found on STR9-comStick, revision STR912CS-A1
set _BSTAPID1 0x1457f041 if { [info exists BSTAPID ] } {
# Found on STR9-comStick, revision STR912CS-A2 set _BSTAPID $BSTAPID
set _BSTAPID2 0x2457f041 } else {
} # Found on STR9-comStick, revision STR912CS-A1
jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID1 -expected-id $_BSTAPID2 set _BSTAPID1 0x1457f041
# Found on STR9-comStick, revision STR912CS-A2
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] set _BSTAPID2 0x2457f041
target create $_TARGETNAME arm966e -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm966e }
jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID1 -expected-id $_BSTAPID2
$_TARGETNAME configure -event reset-init {
# We can increase speed now that we know the target is halted. set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
#jtag_rclk 3000 target create $_TARGETNAME arm966e -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm966e
# -- Enable 96K RAM $_TARGETNAME configure -event reset-init {
# PFQBC enabled / DTCM & AHB wait-states disabled # We can increase speed now that we know the target is halted.
mww 0x5C002034 0x0191 #jtag_rclk 3000
str9x flash_config 0 4 2 0 0x80000 # -- Enable 96K RAM
flash protect 0 0 7 off # PFQBC enabled / DTCM & AHB wait-states disabled
} mww 0x5C002034 0x0191
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x50000000 -work-area-size 16384 -work-area-backup 0 str9x flash_config 0 4 2 0 0x80000
flash protect 0 0 7 off
#flash bank <driver> <base> <size> <chip_width> <bus_width> }
flash bank str9x 0x00000000 0x00080000 0 0 0
flash bank str9x 0x00080000 0x00008000 0 0 0 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x50000000 -work-area-size 16384 -work-area-backup 0
#flash bank <driver> <base> <size> <chip_width> <bus_width>
flash bank str9x 0x00000000 0x00080000 0 0 0
flash bank str9x 0x00080000 0x00008000 0 0 0

View File

@ -1,11 +0,0 @@
#
# Hitex STR9-comStick
#
# http://www.hitex.com/index.php?id=383
#
# This works for the STR9-comStick revisions STR912CS-A1 and STR912CS-A2.
source [find interface/str9-comstick.cfg]
source [find target/str9comstick.cfg]

View File

@ -1,8 +1,8 @@
# This is for the LinkSys (CISCO) NSLU2 board # This is for the LinkSys (CISCO) NSLU2 board
# It is an Intel XSCALE IXP420 CPU. # It is an Intel XSCALE IXP420 CPU.
source [find target/ixp42x.cfg] source [find target/ixp42x.cfg]
# The _TARGETNAME is set by the above. # The _TARGETNAME is set by the above.
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00020000 -work-area-size 0x10000 -work-area-backup 0 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00020000 -work-area-size 0x10000 -work-area-backup 0

View File

@ -1,15 +1,15 @@
# A PXA255 test board with SST 39LF400A flash # A PXA255 test board with SST 39LF400A flash
# #
# At reset the memory map is as follows. Note that # At reset the memory map is as follows. Note that
# the memory map changes later on as the application # the memory map changes later on as the application
# starts... # starts...
# #
# RAM at 0x4000000 # RAM at 0x4000000
# Flash at 0x00000000 # Flash at 0x00000000
# #
source [find target/pxa255.cfg] source [find target/pxa255.cfg]
# Target name is set by above # Target name is set by above
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x4000000 -work-area-size 0x4000 -work-area-backup 0 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x4000000 -work-area-size 0x4000 -work-area-backup 0
# flash bank <driver> <base> <size> <chip_width> <bus_width> <targetNum> [options] # flash bank <driver> <base> <size> <chip_width> <bus_width> <targetNum> [options]
flash bank cfi 0x00000000 0x80000 2 2 0 jedec_probe flash bank cfi 0x00000000 0x80000 2 2 0 jedec_probe

View File

@ -1,61 +1,61 @@
# str910-eval eval board # str910-eval eval board
# #
# Need reset scripts # Need reset scripts
reset_config trst_and_srst reset_config trst_and_srst
if { [info exists CHIPNAME] } { if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME set _CHIPNAME $CHIPNAME
} else { } else {
set _CHIPNAME str912 set _CHIPNAME str912
} }
if { [info exists ENDIAN] } { if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN set _ENDIAN $ENDIAN
} else { } else {
set _ENDIAN little set _ENDIAN little
} }
if { [info exists FLASHTAPID ] } { if { [info exists FLASHTAPID ] } {
set _FLASHTAPID $FLASHTAPID set _FLASHTAPID $FLASHTAPID
} else { } else {
set _FLASHTAPID 0x04570041 set _FLASHTAPID 0x04570041
} }
jtag newtap $_CHIPNAME flash -irlen 8 -ircapture 0x1 -irmask 0x1 -expected-id $_FLASHTAPID jtag newtap $_CHIPNAME flash -irlen 8 -ircapture 0x1 -irmask 0x1 -expected-id $_FLASHTAPID
if { [info exists CPUTAPID ] } { if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID set _CPUTAPID $CPUTAPID
} else { } else {
set _CPUTAPID 0x25966041 set _CPUTAPID 0x25966041
} }
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
if { [info exists BSTAPID ] } { if { [info exists BSTAPID ] } {
set _BSTAPID $BSTAPID set _BSTAPID $BSTAPID
} else { } else {
set _BSTAPID 0x1457f041 set _BSTAPID 0x1457f041
} }
jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME arm966e -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm966e target create $_TARGETNAME arm966e -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm966e
$_TARGETNAME configure -work-area-phys 0x50000000 -work-area-virt 0x50000000 -work-area-size 16384 -work-area-backup 1 $_TARGETNAME configure -work-area-phys 0x50000000 -work-area-virt 0x50000000 -work-area-size 16384 -work-area-backup 1
$_TARGETNAME configure -event reset-init { $_TARGETNAME configure -event reset-init {
# We can increase speed now that we know the target is halted. # We can increase speed now that we know the target is halted.
#jtag_rclk 3000 #jtag_rclk 3000
# -- Enable 96K RAM # -- Enable 96K RAM
# PFQBC enabled / DTCM & AHB wait-states disabled # PFQBC enabled / DTCM & AHB wait-states disabled
mww 0x5C002034 0x0191 mww 0x5C002034 0x0191
str9x flash_config 0 4 2 0 0x80000 str9x flash_config 0 4 2 0 0x80000
flash protect 0 0 7 off flash protect 0 0 7 off
} }
#flash bank str9x <base> <size> 0 0 <target#> <variant> #flash bank str9x <base> <size> 0 0 <target#> <variant>
flash bank str9x 0x00000000 0x00080000 0 0 0 flash bank str9x 0x00000000 0x00080000 0 0 0
flash bank str9x 0x00080000 0x00008000 0 0 0 flash bank str9x 0x00080000 0x00008000 0 0 0
# For more information about the configuration files, take a look at: # For more information about the configuration files, take a look at:
# openocd.texi # openocd.texi

View File

@ -1,110 +1,110 @@
#Script for ZY1000 #Script for ZY1000
#Atmel ties SRST & TRST together, at which point it makes #Atmel ties SRST & TRST together, at which point it makes
#no sense to use TRST, but use TMS instead. #no sense to use TRST, but use TMS instead.
# #
#The annoying thing with tying SRST & TRST together is that #The annoying thing with tying SRST & TRST together is that
#there is no way to halt the CPU *before and during* the #there is no way to halt the CPU *before and during* the
#SRST reset, which means that the CPU will run a number #SRST reset, which means that the CPU will run a number
#of cycles before it can be halted(as much as milliseconds). #of cycles before it can be halted(as much as milliseconds).
reset_config srst_only srst_pulls_trst reset_config srst_only srst_pulls_trst
if { [info exists CHIPNAME] } { if { [info exists CHIPNAME] } {
set _CHIPNAME $CHIPNAME set _CHIPNAME $CHIPNAME
} else { } else {
set _CHIPNAME zy1000 set _CHIPNAME zy1000
} }
if { [info exists ENDIAN] } { if { [info exists ENDIAN] } {
set _ENDIAN $ENDIAN set _ENDIAN $ENDIAN
} else { } else {
set _ENDIAN little set _ENDIAN little
} }
#jtag scan chain #jtag scan chain
if { [info exists CPUTAPID ] } { if { [info exists CPUTAPID ] } {
set _CPUTAPID $CPUTAPID set _CPUTAPID $CPUTAPID
} else { } else {
set _CPUTAPID 0x1f0f0f0f set _CPUTAPID 0x1f0f0f0f
} }
jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
set _TARGETNAME [format "%s.cpu" $_CHIPNAME] set _TARGETNAME [format "%s.cpu" $_CHIPNAME]
target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm7tdmi-s_r4 target create $_TARGETNAME arm7tdmi -endian $_ENDIAN -chain-position $_TARGETNAME -variant arm7tdmi-s_r4
# at CPU CLK <32kHz this must be disabled # at CPU CLK <32kHz this must be disabled
arm7_9 fast_memory_access enable arm7_9 fast_memory_access enable
arm7_9 dcc_downloads enable arm7_9 dcc_downloads enable
flash bank ecosflash 0x01000000 0x200000 2 2 0 ecos/at91eb40a.elf flash bank ecosflash 0x01000000 0x200000 2 2 0 ecos/at91eb40a.elf
$_TARGETNAME configure -event reset-init { $_TARGETNAME configure -event reset-init {
# Set up chip selects & timings # Set up chip selects & timings
mww 0xFFE00000 0x0100273D mww 0xFFE00000 0x0100273D
mww 0xFFE00004 0x08002125 mww 0xFFE00004 0x08002125
mww 0xFFEe0008 0x02002125 mww 0xFFEe0008 0x02002125
mww 0xFFE0000c 0x03002125 mww 0xFFE0000c 0x03002125
mww 0xFFE00010 0x40000000 mww 0xFFE00010 0x40000000
mww 0xFFE00014 0x50000000 mww 0xFFE00014 0x50000000
mww 0xFFE00018 0x60000000 mww 0xFFE00018 0x60000000
mww 0xFFE0001c 0x70000000 mww 0xFFE0001c 0x70000000
mww 0xFFE00020 0x00000001 mww 0xFFE00020 0x00000001
mww 0xFFE00024 0x00000000 mww 0xFFE00024 0x00000000
# remap # remap
mww 0xFFFFF124 0xFFFFFFFF mww 0xFFFFF124 0xFFFFFFFF
mww 0xffff0010 0x100 mww 0xffff0010 0x100
mww 0xffff0034 0x100 mww 0xffff0034 0x100
#disable 16x5x UART interrupts #disable 16x5x UART interrupts
mww 0x08020004 0 mww 0x08020004 0
} }
# required for usable performance. Used for lots of # required for usable performance. Used for lots of
# other things than flash programming. # other things than flash programming.
$_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00020000 -work-area-size 0x20000 -work-area-backup 0 $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x00020000 -work-area-size 0x20000 -work-area-backup 0
jtag_khz 16000 jtag_khz 16000
proc production_info {} { proc production_info {} {
return "Serial number is official MAC number. Format XXXXXXXXXXXX" return "Serial number is official MAC number. Format XXXXXXXXXXXX"
} }
# There is no return value from this procedure. If it is # There is no return value from this procedure. If it is
# successful it does not throw an exception # successful it does not throw an exception
# #
# Progress messages are output via puts # Progress messages are output via puts
proc production {firmwarefile serialnumber} { proc production {firmwarefile serialnumber} {
if {[string length $serialnumber]!=12} { if {[string length $serialnumber]!=12} {
puts "Invalid serial number" puts "Invalid serial number"
return return
} }
puts "Power cycling target" puts "Power cycling target"
power off power off
sleep 3000 sleep 3000
power on power on
sleep 1000 sleep 1000
reset init reset init
flash write_image erase $firmwarefile 0x1000000 bin flash write_image erase $firmwarefile 0x1000000 bin
verify_image $firmwarefile 0x1000000 bin verify_image $firmwarefile 0x1000000 bin
# Big endian... weee!!!! # Big endian... weee!!!!
puts "Setting MAC number to $serialnumber" puts "Setting MAC number to $serialnumber"
flash fillw [expr 0x1030000-0x8] "0x[string range $serialnumber 2 3][string range $serialnumber 0 1]0000" 1 flash fillw [expr 0x1030000-0x8] "0x[string range $serialnumber 2 3][string range $serialnumber 0 1]0000" 1
flash fillw [expr 0x1030000-0x4] "0x[string range $serialnumber 10 11][string range $serialnumber 8 9][string range $serialnumber 6 7][string range $serialnumber 4 5]" 1 flash fillw [expr 0x1030000-0x4] "0x[string range $serialnumber 10 11][string range $serialnumber 8 9][string range $serialnumber 6 7][string range $serialnumber 4 5]" 1
puts "Production successful" puts "Production successful"
} }
proc production_test {} { proc production_test {} {
power on power on
sleep 1000 sleep 1000
target_request debugmsgs enable target_request debugmsgs enable
reset run reset run
sleep 25000 sleep 25000
target_request debugmsgs disable target_request debugmsgs disable
return "See IP address above..." return "See IP address above..."
} }

View File

@ -1,11 +1,11 @@
# #
# Hitex STR9-comStick # Hitex STR9-comStick
# #
# http://www.hitex.com/index.php?id=383 # http://www.hitex.com/index.php?id=383
# #
interface ft2232 interface ft2232
ft2232_device_desc "STR9-comStick A" ft2232_device_desc "STR9-comStick A"
ft2232_layout comstick ft2232_layout comstick
ft2232_vid_pid 0x0640 0x002c ft2232_vid_pid 0x0640 0x002c