This is extremely slow at programming things, but is very useful for
unbricking an MSP-FET430UIF if you have a bus pirate and no other
programmers around.
This commit moves the definitions of UNAME_* above the initial check
of the OS environment variable. Previously, UNAME_O would not be set
in the case where OS is Windows_NT. Builds would incorrectly use Windows
OS_LIBS and OS_CFLAGS in a Cygwin build environment. The tree now builds
cleanly with Cygwin's libusb-1.0 and libreadline development packages
installed.
Using Cygwin's serial port mappings for MSP-FET430UIF:
$ mspdebug -d /dev/ttyS1 uif
MSPDebug version 0.24 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2016 Daniel Beer <dlbeer@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Chip info database from MSP430.dll v3.3.1.4 Copyright (C) 2013 TI, Inc.
Trying to open /dev/ttyS1 at 460800 bps...
Initializing FET...
FET protocol version is 20408002
Set Vcc: 3000 mV
Configured for Spy-Bi-Wire
Device ID: 0x0580
Code start address: 0x5c00
Code size : 262144 byte = 256 kb
RAM start address: 0x1c00
RAM end address: 0x5bff
RAM size : 16384 byte = 16 kb
Device: MSP430F5438A
Number of breakpoints: 8
fet: FET returned NAK
warning: device does not support power profiling
Chip ID data:
ver_id: 8005
ver_sub_id: 0000
revision: 13
fab: 55
self: 5555
config: 13
Device: MSP430F5438A
[...]
Adds a new command, !, that drops to an interactive OS shell, or
(optionally) executes specified commands using the OS shell.
Signed-off-by: Tamas TEVESZ <ice@extreme.hu>
This driver supports the USB bootstrap loader. An initial version query
is performed on startup. If the running loader is not sufficiently
featureful, a software image for an upgraded BSL is loaded into the
chip's RAM and executed.
Ctrl+C handling is done in ctrlc.c, and a break condition now persists
until the interactive reader begins to process the next command. The
condition is cleared by calling ctrlc_clear().
The devicelist table maps chip ID bytes to an enum of devicetype_t. A
separate table provides configuration data for each value of
devicetype_t.
Original patch submitted by Stanimir Bonev <bonev_st@abv.bg>.
Constructors and device class definitions are now contained in fet.c.
The methods which implement the device interface are in fet_core.c, and
these are independent of how the device object is constructed.
The "olimex" transport has been divided into "cp210x" and "cdc_acm",
each of which take a specific vendor/product combination in their
constructor. Support for the MSP430-JTAG-ISO-MK2 has been moved into its
own driver instance.
The transport/ subdirectory now contains implementations of the
transport_t interface, which has been expanded to include flush and
set_modem operations.