Remove all occurrences of 'mem2array' and 'array2mem'
[fw/openocd] / tcl / target / hilscher_netx500.cfg
1 #Hilscher netX 500 CPU
2
3 if { [info exists CHIPNAME] } {
4    set _CHIPNAME $CHIPNAME
5 } else {
6    set _CHIPNAME netx500
7 }
8
9 if { [info exists ENDIAN] } {
10    set _ENDIAN $ENDIAN
11 } else {
12    set _ENDIAN little
13 }
14
15 if { [info exists CPUTAPID] } {
16    set _CPUTAPID $CPUTAPID
17 } else {
18    set _CPUTAPID 0x07926021
19 }
20
21 # jtag scan chain
22 jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID
23
24 # that TAP is associated with a target
25 set _TARGETNAME $_CHIPNAME.cpu
26 target create $_TARGETNAME arm926ejs -endian $_ENDIAN -chain-position $_TARGETNAME
27
28 proc mread32 {addr} {
29   return [read_memory $addr 32 1]
30 }
31
32 # This function must be called on netX100/500 right after halt
33 # If it is called later the needed register cannot be written anymore
34 proc sdram_fix { } {
35
36   set accesskey [mread32 0x00100070]
37   mww 0x00100070 $accesskey
38   mww 0x0010002c 0x00000001
39
40   if {[expr {[mread32 0x0010002c] & 0x07}] == 0x07} {
41          puts "SDRAM Fix was not executed. Probably your CPU halted too late and the register is already locked!"
42   } else {
43          puts "SDRAM Fix succeeded!"
44   }
45 }