summaryrefslogtreecommitdiff
path: root/tcl/board
diff options
context:
space:
mode:
Diffstat (limited to 'tcl/board')
-rw-r--r--tcl/board/ethernut3.cfg86
1 files changed, 86 insertions, 0 deletions
diff --git a/tcl/board/ethernut3.cfg b/tcl/board/ethernut3.cfg
new file mode 100644
index 00000000..f22e6887
--- /dev/null
+++ b/tcl/board/ethernut3.cfg
@@ -0,0 +1,86 @@
+#
+# Ethernut 3 board configuration file
+#
+# http://www.ethernut.de/en/hardware/enut3/
+
+
+# AT91R40008-66AU ARM7TDMI Microcontroller
+# 256kB internal RAM
+source [find target/at91r40008.cfg]
+
+
+# AT49BV322A-70TU NOR Flash
+# 2M x 16 mode at address 0x10000000
+# Common flash interface supported
+#
+set _FLASHNAME $_CHIPNAME.flash
+flash bank $_FLASHNAME cfi 0x10000000 0x400000 2 2 $_TARGETNAME
+
+
+# Micrel MIC2775-29YM5 Supervisor
+# Reset output will remain active for 280ms (maximum)
+#
+jtag_nsrst_delay 300
+jtag_ntrst_delay 300
+
+
+arm7_9 fast_memory_access enable
+arm7_9 dcc_downloads enable
+jtag_khz 16000
+
+
+# Target events
+#
+$_TARGETNAME configure -event reset-init { board_init }
+
+# Initialize board hardware
+#
+proc board_init { } {
+ board_remap
+ flash probe 0
+}
+
+# Memory remap
+#
+proc board_remap {{VERBOSE 0}} {
+ # CS0: NOR flash
+ # 16MB @ 0x10000000
+ # 16-bit data bus
+ # 4 wait states
+ #
+ mww 0xffe00000 0x1000212d
+
+ # CS1: Ethernet controller
+ # 1MB @ 0x20000000
+ # 16-bit data bus
+ # 2 wait states
+ # Byte select access
+ #
+ mww 0xffe00004 0x20003025
+
+ # CS2: CPLD registers
+ # 1MB @ 0x21000000
+ # 8-bit data bus
+ # 2 wait states
+ #
+ mww 0xffe00008 0x21002026
+
+ # CS3: Expansion bus
+ # 1MB @ 0x22000000
+ # 8-bit data bus
+ # 8 wait states
+ #
+ mww 0xffe00010 0x22002e3e
+
+ # Remap command
+ #
+ mww 0xffe00020 0x00000001
+
+ if {$VERBOSE != 0} {
+ puts "0x00000000 RAM"
+ puts "0x10000000 Flash"
+ puts "0x20000000 Ethernet"
+ puts "0x21000000 CPLD"
+ puts "0x22000000 Expansion"
+ }
+}