summaryrefslogtreecommitdiff
path: root/tcl/board/spear310evb20.cfg
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2010-11-04 16:53:28 +0800
committerØyvind Harboe <oyvind.harboe@zylin.com>2010-11-06 15:40:52 +0100
commit074498f836db2879d73c39615fa5dced8a6555c9 (patch)
tree5874da1e6f81f4662edd1a57f49207b10af9edf1 /tcl/board/spear310evb20.cfg
parent8f1f8e7b96d4dfdca867cfcf69e0efab9f6e3731 (diff)
downloadopenocd+libswd-074498f836db2879d73c39615fa5dced8a6555c9.tar.gz
openocd+libswd-074498f836db2879d73c39615fa5dced8a6555c9.tar.bz2
openocd+libswd-074498f836db2879d73c39615fa5dced8a6555c9.tar.xz
openocd+libswd-074498f836db2879d73c39615fa5dced8a6555c9.zip
TCL scripts: add support for ST SPEAr310
Initial support for ST SPEAr310 and for the evaluation board EVALSPEAr310 Rev. 2.0. Scripts are split in generic for SPEAr3xx family and specific for SPEAr310. This should easily allow adding new members of the family. Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Diffstat (limited to 'tcl/board/spear310evb20.cfg')
-rw-r--r--tcl/board/spear310evb20.cfg48
1 files changed, 48 insertions, 0 deletions
diff --git a/tcl/board/spear310evb20.cfg b/tcl/board/spear310evb20.cfg
new file mode 100644
index 00000000..887e7993
--- /dev/null
+++ b/tcl/board/spear310evb20.cfg
@@ -0,0 +1,48 @@
+# Configuration for the ST SPEAr310 Evaluation board
+# EVALSPEAr310 Rev. 2.0
+# http://www.st.com/spear
+#
+# Date: 2010-08-17
+# Author: Antonio Borneo <borneo.antonio@gmail.com>
+
+# The standard board has JTAG SRST not connected.
+# This script targets such boards using quirky code to bypass the issue.
+#
+# Check ST Application Note (FIXME: put reference) on how to fix SRST on
+# the board, then use the script board/spear310evb20_mod.cfg
+
+
+source [find mem_helper.tcl]
+source [find target/spear3xx.cfg]
+source [find chip/st/spear/spear310.tcl]
+source [find chip/st/spear/spear3xx_ddr.tcl]
+source [find chip/st/spear/spear3xx.tcl]
+
+arm7_9 dcc_downloads enable
+arm7_9 fast_memory_access enable
+
+# CFI parallel NOR on EMI CS0. 2x 16bit 8M devices = 16Mbyte.
+set _FLASHNAME0 $_CHIPNAME.pnor
+flash bank $_FLASHNAME0 cfi 0x50000000 0x01000000 2 4 $_TARGETNAME
+
+if { [info exists BOARD_HAS_SRST] } {
+ # Modified board has SRST on JTAG connector
+ reset_config trst_and_srst separate srst_gates_jtag \
+ trst_push_pull srst_open_drain
+} else {
+ # Standard board has no SRST on JTAG connector
+ reset_config trst_only separate srst_gates_jtag trst_push_pull
+ source [find chip/st/spear/quirk_no_srst.tcl]
+}
+
+$_TARGETNAME configure -event reset-init { spear310evb20_init }
+
+proc spear310evb20_init {} {
+ reg pc 0xffff0020 # loop forever
+
+ sp3xx_clock_default
+ sp3xx_common_init
+ sp3xx_ddr_init "mt47h64m16_3_333_cl5_async"
+ sp310_init
+ sp310_emi_init
+}