On 30 July 2011 22:48, B <[email protected]> wrote: > Using Open On-Chip Debugger 0.5.0-dev-00948-gd4cd6f0 (2011-07-30-15:55) > > LM3S3N26-C5 is not detected as a Tempest device and so uses the sysresetreq > in place of the needed vectreset in stellaris.cfg. > > The device class appears to be set by: > > set device_class [expr (([mrw 0x400fe000] >> 16) & 0xff)] > > This memory location contains the device class. Tempest is 0x04. > > There is an errata where LM3S3N26 misreports itself as 0x03. > > My attempt at a workaround was to define a variable: > > set DEVICECLASSIS 0x04 > > then call a modified stellaris.cfg: > > > if { [info exists DEVICECLASSIS ] } { > set device_class $DEVICECLASSIS > } else { > set device_class [expr (([mrw 0x400fe000] >> 16) & 0xff)] > } > > if {$device_class == 0 || $device_class == 1 || $device_class == 3} { > # Sandstorm, Fury and DustDevil are able to use NVIC SYSRESETREQ > cortex_m3 reset_config sysresetreq > } else { > # Tempest and newer default to using NVIC VECTRESET > # this does mean a reset-init event handler is required to reset > # any peripherals > cortex_m3 reset_config vectreset > } > > > The if statement doesn't seem to work properly. Changing the sysresetreq to > vectreset by hand does resolve the issue. > > Is there something wrong with my if info exists workaround syntax? >
you need to use global - see pic32mx.cfg for an example Cheers Spen _______________________________________________ Openocd-development mailing list [email protected] https://lists.berlios.de/mailman/listinfo/openocd-development
