# the DBGU and USARTs are 'almost' indentical'
-set DBGU_CR [expr $AT91C_BASE_DBGU + 0x00000000]
-set DBGU_MR [expr $AT91C_BASE_DBGU + 0x00000004]
-set DBGU_IER [expr $AT91C_BASE_DBGU + 0x00000008]
-set DBGU_IDR [expr $AT91C_BASE_DBGU + 0x0000000C]
-set DBGU_IMR [expr $AT91C_BASE_DBGU + 0x00000010]
-set DBGU_CSR [expr $AT91C_BASE_DBGU + 0x00000014]
-set DBGU_RHR [expr $AT91C_BASE_DBGU + 0x00000018]
-set DBGU_THR [expr $AT91C_BASE_DBGU + 0x0000001C]
-set DBGU_BRGR [expr $AT91C_BASE_DBGU + 0x00000020]
+set DBGU_CR [expr {$AT91C_BASE_DBGU + 0x00000000}]
+set DBGU_MR [expr {$AT91C_BASE_DBGU + 0x00000004}]
+set DBGU_IER [expr {$AT91C_BASE_DBGU + 0x00000008}]
+set DBGU_IDR [expr {$AT91C_BASE_DBGU + 0x0000000C}]
+set DBGU_IMR [expr {$AT91C_BASE_DBGU + 0x00000010}]
+set DBGU_CSR [expr {$AT91C_BASE_DBGU + 0x00000014}]
+set DBGU_RHR [expr {$AT91C_BASE_DBGU + 0x00000018}]
+set DBGU_THR [expr {$AT91C_BASE_DBGU + 0x0000001C}]
+set DBGU_BRGR [expr {$AT91C_BASE_DBGU + 0x00000020}]
# no RTOR
# no TTGR
# no FIDI
# no NER
-set DBGU_CIDR [expr $AT91C_BASE_DBGU + 0x00000040]
-set DBGU_EXID [expr $AT91C_BASE_DBGU + 0x00000044]
-set DBGU_FNTR [expr $AT91C_BASE_DBGU + 0x00000048]
+set DBGU_CIDR [expr {$AT91C_BASE_DBGU + 0x00000040}]
+set DBGU_EXID [expr {$AT91C_BASE_DBGU + 0x00000044}]
+set DBGU_FNTR [expr {$AT91C_BASE_DBGU + 0x00000048}]
set USx_CR 0x00000000
set x [show_normalize_bitfield $VAL 3 0]
if { $x == 0 } {
- puts "\tNormal operation"
+ echo "\tNormal operation"
} else {
- puts [format "\tNon Normal operation mode: 0x%02x" $x]
+ echo [format "\tNon Normal operation mode: 0x%02x" $x]
}
set x [show_normalize_bitfield $VAL 11 9]
2 { set s "Force=0" }
3 { set s "Force=1" }
* {
- set $x [expr $x & 6]
+ set $x [expr {$x & 6}]
switch -exact $x {
4 { set s "None" }
6 { set s "Multidrop Mode" }
}
}
}
- puts [format "\tParity: %s " $s]
+ echo [format "\tParity: %s " $s]
- set x [expr 5 + [show_normalize_bitfield $VAL 7 6]]
- puts [format "\tDatabits: %d" $x]
+ set x [expr {5 + [show_normalize_bitfield $VAL 7 6]}]
+ echo [format "\tDatabits: %d" $x]
set x [show_normalize_bitfield $VAL 13 12]
switch -exact $x {
- 0 { puts "\tStop bits: 1" }
- 1 { puts "\tStop bits: 1.5" }
- 2 { puts "\tStop bits: 2" }
- 3 { puts "\tStop bits: Illegal/Reserved" }
+ 0 { echo "\tStop bits: 1" }
+ 1 { echo "\tStop bits: 1.5" }
+ 2 { echo "\tStop bits: 2" }
+ 3 { echo "\tStop bits: Illegal/Reserved" }
}
}
set vn [set WHO]_[set REG]
# vn = USx_IER
# vv = variable value
- set vv [expr $$n + [set USx_[set REG]]]
+ set vv [expr "$$n + [set USx_[set REG]]"]
# And VV is the address in memory of that register
unset str
proc show_DBGU_MR_helper { NAME ADDR VAL } { show_mmr_USx_MR_helper $NAME $ADDR $VAL }
-
-
-