1 # This script performs the mass erase operation for Kinetis targets
3 # Command mass erase with system reset and core reset
4 set mdmapControl
[cmdwin
::reg MDMAP_C
-np]
5 set mdmapControl
[expr $mdmapControl |
0x19]
6 cmdwin
::reg MDMAP_C
= $mdmapControl
8 # Release system reset while still holding core reset
9 set mdmapControl
[expr $mdmapControl & 0xFFFFFFF7]
10 cmdwin
::reg MDMAP_C
= $mdmapControl
12 # Wait for the mass erase operation to complete
14 for {set i
0} {$i < 10} {incr i
} {
16 set mdmapControl
[cmdwin
::reg MDMAP_C
-np]
17 if {($mdmapControl & 1) == 0} {
24 # Release the core reset
25 set mdmapControl
[expr $mdmapControl & 0xFFFFFFEF]
26 cmdwin
::reg MDMAP_C
= $mdmapControl
28 puts "OK: Mass erase succeeded"