X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=tcl%2Fmemory.tcl;h=83c96d6c9deacd0cad754d86acc06f4ae73823fa;hp=219d39fa79e7a04579cb48c4f2ebb6e278289695;hb=c8864333327cba8121ac83895eb8d7b455f489fa;hpb=dbbc9c41f7db210b0a4e226540a28e0a8a5019bf diff --git a/tcl/memory.tcl b/tcl/memory.tcl index 219d39fa79..83c96d6c9d 100644 --- a/tcl/memory.tcl +++ b/tcl/memory.tcl @@ -1,4 +1,4 @@ -# MEMORY +# MEMORY # # All Memory regions have two components. # (1) A count of regions, in the form N_NAME @@ -62,7 +62,7 @@ proc iswithin { ADDRESS BASE LEN } { } proc address_info { ADDRESS } { - + foreach WHERE { FLASH RAM MMREGS XMEM UNKNOWN } { if { info exists $WHERE } { set lmt [set N_[set WHERE]] @@ -80,54 +80,108 @@ proc address_info { ADDRESS } { proc memread32 {ADDR} { set foo(0) 0 - if ![ catch { ocd_mem2array foo 32 $ADDR 1 } msg ] { + if ![ catch { mem2array foo 32 $ADDR 1 } msg ] { return $foo(0) } else { error "memread32: $msg" } -} +} proc memread16 {ADDR} { set foo(0) 0 - if ![ catch { ocd_mem2array foo 16 $ADDR 1 } msg ] { + if ![ catch { mem2array foo 16 $ADDR 1 } msg ] { return $foo(0) } else { error "memread16: $msg" } -} +} proc memread8 {ADDR} { set foo(0) 0 - if ![ catch { ocd_mem2array foo 8 $ADDR 1 } msg ] { + if ![ catch { mem2array foo 8 $ADDR 1 } msg ] { return $foo(0) } else { error "memread8: $msg" } -} +} proc memwrite32 {ADDR DATA} { set foo(0) $DATA - if ![ catch { ocd_array2mem foo 32 $ADDR 1 } msg ] { + if ![ catch { array2mem foo 32 $ADDR 1 } msg ] { return $foo(0) } else { error "memwrite32: $msg" } -} +} proc memwrite16 {ADDR DATA} { set foo(0) $DATA - if ![ catch { ocd_array2mem foo 16 $ADDR 1 } msg ] { + if ![ catch { array2mem foo 16 $ADDR 1 } msg ] { return $foo(0) } else { error "memwrite16: $msg" } -} +} proc memwrite8 {ADDR DATA} { set foo(0) $DATA - if ![ catch { ocd_array2mem foo 8 $ADDR 1 } msg ] { + if ![ catch { array2mem foo 8 $ADDR 1 } msg ] { return $foo(0) } else { error "memwrite8: $msg" } -} +} + +proc memread32_phys {ADDR} { + set foo(0) 0 + if ![ catch { mem2array foo 32 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memread32: $msg" + } +} + +proc memread16_phys {ADDR} { + set foo(0) 0 + if ![ catch { mem2array foo 16 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memread16: $msg" + } +} + +proc memread8_phys {ADDR} { + set foo(0) 0 + if ![ catch { mem2array foo 8 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memread8: $msg" + } +} + +proc memwrite32_phys {ADDR DATA} { + set foo(0) $DATA + if ![ catch { array2mem foo 32 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memwrite32: $msg" + } +} + +proc memwrite16_phys {ADDR DATA} { + set foo(0) $DATA + if ![ catch { array2mem foo 16 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memwrite16: $msg" + } +} + +proc memwrite8_phys {ADDR DATA} { + set foo(0) $DATA + if ![ catch { array2mem foo 8 $ADDR 1 phys } msg ] { + return $foo(0) + } else { + error "memwrite8: $msg" + } +}