Commit Graph

428 Commits

Author SHA1 Message Date
Gareth McMullin 7e0de5b86b Inline GPIO functions and optimise for speed.
This gives a modest but measurable performance improvement.
2012-01-08 18:49:58 +13:00
Gareth McMullin 7c6317a426 Change driver to work as composite device with two ACM interfaces.
This works with the current firmware, but the DFU interface is orphaned:
Windows complains about no driver it.
2012-01-08 14:07:09 +13:00
Gareth McMullin d51f93827e Added existing Windows driver.
This doesn't work with the current firmware.
2012-01-08 14:02:48 +13:00
Gareth McMullin 9663274572 Advertise that we accept SET_LINE_CODING and ignore it on GDB interface.
This fixes SetCommState failure on Windows.
2012-01-07 18:46:17 +13:00
Gareth McMullin edaae3957a Use USB Interface Association Descriptors.
This allows windows to see it as a composite device and load different
driver for each interface.
2011-12-29 12:49:47 +13:00
Mike Smith 4f0ed8361a Update verbiage for LPC11xx support. 2011-12-26 02:56:10 -08:00
Mike Smith af45139767 Use a single static program buffer rather than allocating several on the stack. 2011-12-26 02:54:44 -08:00
Mike Smith 00651032ad Merge commit '4e0cd081b09d9bd3d444062ca1081fa59c31fc0b'
* commit '4e0cd081b09d9bd3d444062ca1081fa59c31fc0b':
  Improved magic number garbage in cortexm3.c
  Cleaned up debug output on linux build.
  Removed #if LIGHT for unfinished hardware.
  Implement gdb 'qCRC' packet to support 'compare-sections' command.
2011-12-26 02:47:38 -08:00
Mike Smith bc4c87e45b Add support for Cortex-M0, and specifically for the NXP LPC11xx devices. 2011-12-26 02:34:45 -08:00
Gareth McMullin 4e0cd081b0 Improved magic number garbage in cortexm3.c 2011-12-18 17:46:36 +13:00
Gareth McMullin a73f06c147 Cleaned up debug output on linux build. 2011-12-18 17:01:10 +13:00
Gareth McMullin 8061205260 Removed #if LIGHT for unfinished hardware. 2011-12-18 16:43:02 +13:00
Gareth McMullin c7c31d2502 Implement gdb 'qCRC' packet to support 'compare-sections' command. 2011-12-17 21:46:22 +13:00
Mike Smith 2653222d08 Tweak the flash uploader to handle unaligned start and end pointers,
padding with all-1s so that overlapping data is preserved.
2011-12-14 23:41:40 -08:00
Mike Smith bba42ff6c9 Merge branch 'master' of git://github.com/gsmcmullin/blackmagic 2011-12-14 23:10:53 -08:00
Gareth McMullin 45eee497d0 stm32f4: Improve behaviour when a section doesn't end on a word boundary.
This may not be an acceptable fix.  It may be possible for the linker
to place another section on the remainder of the offending work.
2011-12-14 22:59:42 +13:00
Gareth McMullin c5b4022ed8 Default to DTR=1 if no request received.
This is needed on Mac where opening the port doesn't assert DTR.
Thanks to Mike Smith.
2011-12-07 20:57:10 +13:00
Mike Smith c9860e7716 Make it possible to build with libopencm3 installed in a nonstandard location 2011-12-05 23:01:24 -08:00
Gareth McMullin 61cfbf16c6 Fixed flash stub for STM32F2 and STM32F4.
Added JTAG idcodes for these devices.
2011-12-02 21:55:14 +13:00
Gareth McMullin 540573bc18 Fixed qSupported resonse. 2011-11-26 17:04:48 +13:00
Mike Smith ffda30f393 Add support for a more comprehensive target description, including the additional v7m registers.
This doesn't work with vanilla gdb, as for reasons unknown said vanilla gdb doesn't support XML target descriptions queried from the remote.

Add code to the fault unwinder to deal with the stack alignment fixup and FP registers.  Avoid saving/restoring registers that don't get trashed.
2011-11-25 17:07:46 -08:00
Mike Smith 8babb37472 Add a prototype for the F4 probe routine to silence a warning 2011-11-25 17:04:47 -08:00
Mike Smith fa7ae87e25 Mention the CCM (CPU-only RAM) in the F4. 2011-11-25 17:04:23 -08:00
Gareth McMullin f06bded8dd linux: Set SO_REUSEADDR on gdb server socket.
Renamed HOST environment variable to PROBE_HOST.

Thanks to Michael Smith for the patch.
2011-11-25 22:55:07 +13:00
Gareth McMullin d73ac40ef1 Added preliminary support for the STM32F4. 2011-11-12 19:15:52 +13:00
Gareth McMullin 6a6b52bf54 Fixed python scripts for programming target to work on 64-bit machines. 2011-11-12 13:47:50 +13:00
Gareth McMullin 7b13bae8dc Don't send anything on USB if not configured or DTR is released. 2011-11-12 13:46:16 +13:00
Gareth McMullin 33e1352c34 Merge branch 'master' of github.com:gsmcmullin/blackmagic 2011-10-30 13:43:33 +13:00
Gareth McMullin d85a399559 Updated to build with new libopenstm32 with f1/f2 split. 2011-10-30 13:42:27 +13:00
Gareth McMullin adabaa7592 Halt and detach target if host releases DTR.
Port reads 0x04 (EOF) when DTR is released.  GDB loop detaches from
target if EOF is read.
Fixes bug 3307433.
2011-07-02 20:47:39 +12:00
Gareth McMullin bd779aa618 Defined and used register definitions for DWT. 2011-04-27 21:57:35 +12:00
Gareth McMullin 40eeb1788b Defined and used register names for flash beakpoints. 2011-04-27 21:57:35 +12:00
Gareth McMullin be91386c0a Minor changes to allow a build for Windows hosts with libftdi. 2011-03-29 20:01:15 +13:00
Gareth McMullin c9ea16312b Added more ARM7TDMI functions. Still not usable. 2011-03-12 21:03:42 +13:00
Gareth McMullin c062e60059 cm3_reset polls for reset to complete. cm3_fault_unwind checks FORCED in HFSR. 2011-03-12 13:57:32 +13:00
Gareth McMullin 4c75ac524b Started halt/resume for ARM7TDMI. 2011-03-11 00:02:08 +13:00
Gareth McMullin fcdbf8efc8 Added a skeleton of an ARM7TDMI driver. No support yet. 2011-03-09 19:03:41 +13:00
Gareth McMullin a6f2117d1d Further cleanup of adiv5* 2011-03-08 22:15:35 +13:00
Gareth McMullin b8462dd1f2 Removed useless abstraction of low-level AP access functions. 2011-03-07 07:12:14 +13:00
Gareth McMullin 91815f2d23 Cleaned up some magic numbers in adiv5* 2011-03-05 23:43:03 +13:00
Gareth McMullin a139aae479 Cleaned up more magic numbers in cortexm3.c 2011-03-02 21:34:36 +13:00
Gareth McMullin c648d7c9e2 Cleaned out some magic numbers in cortexm3.c 2011-03-02 19:28:47 +13:00
Gareth McMullin c43e392f8c cm3_fault_unwind: Adjust stack pointer after reading registers. 2011-02-23 18:14:44 +13:00
Gareth McMullin c9774944de Removed debugging output in cm3_fault_unwind(). 2011-02-21 21:04:57 +13:00
Gareth McMullin 32cabac0f3 Stack is now unwound on hardfault. 2011-02-21 20:57:56 +13:00
Gareth McMullin 0dfdc25bb2 Added git info to version output.
Fixed memory leak in SWD mode.
2011-02-18 13:50:21 +13:00
Gareth McMullin 660e861725 Force SRST high. Hopefully fixes target getting stuck in reset. 2011-02-17 18:00:03 +13:00
Piotr Esden-Tempski e28edc0899 Removed redundant linker parameters. 2011-02-16 20:47:56 -08:00
Piotr Esden-Tempski c8d1b8d0cc Cleaned up CFLAGS and LDFLAGS as well as targets to use the correct flags. Now blackmagic will compile also on a multilib compiler. 2011-02-16 20:24:26 -08:00
Gareth McMullin 8b65e8e259 Fixed dfu.py to work with PyUSB 1.0. 2011-02-17 16:48:15 +13:00