This branch should work for F1 and F4 devices. It has currently been tested with F1 value line, (a VL discovery board) programmed via gdb via both an stlinkv1 and an stlinkv2. F4 has _not_ yet been tested on this branch Conflicts: .gitignore doc/tutorial/tutorial.pdf example/blink/main.c gdbserver/Makefile gdbserver/gdb-server.c src/stlink-common.c src/stlink-common.h src/stlink-usb.c
All the device params like flash size and page size should all be in the core open routines, not _only_ in the gdbserver. (This should stop it from ending up duplicated in the core, and get rid of some of the hacks that were turning up. All of this is chip specific!)
In the future, we might actually want device names back again, if you have multiple stlink's connected. But that would be a new device name, not scanning for /dev/sgX looking for scsi devices.
Conflicts: build/Makefile gdbserver/gdb-server.c This merges in the bulk of bravikov's work on the command line and automatic sensible defaults for the gdb server
As noted, the usb transfer only has a 1 byte length, but it also has a different mode to enter. Tidied up and removed more duplicate and hard coded code, tried to add some notes on where the magic came from. No idea where the chip ids came from, I can't find them in the datasheets anywhere.