Commit Graph

2257 Commits

Author SHA1 Message Date
Gareth McMullin 241bf765ec DFU: Protect bootloader sectors if needed.
Check address bounds on erase/set address.
2012-05-22 21:47:18 +12:00
Gareth McMullin 5eb3a375e0 Added Windows libusb driver for Trace port interface.
Converted windows driver inf file to utf-8 encoding.
2012-05-19 14:43:57 +12:00
Gareth McMullin de49a9a21f Remove dependencies on make clean. 2012-05-19 11:54:22 +12:00
Gareth McMullin 32c1af05de Don't clobber watchpoints used for trace. 2012-05-19 11:53:41 +12:00
Gareth McMullin 38bea69f8a Fixed some issues with trace port capture.
Process last capture even on timeout.  Prevents last bit getting lost.
On timeout, don't allow next edge to resync decoder.
Timeout on 6 bit periods instead of 5.
Set systick interrupt to low priority.
2012-04-29 20:35:19 +12:00
Gareth McMullin 86626085d8 Fixed TRACESWO capture.
'mon traceswo' reports serial number and interface/endpoint no for libusb.
Interrupt priorities set so TIM3 for trace is highest priority.
Increased trace endpoint packet size to 64.
Buffer many trace packets into a single usb packet.  Stall on overflow.
Fixed stop bit detection in TIM3 interrupt handler.
2012-04-22 12:27:18 +12:00
Gareth McMullin b39572e17c Correct jtag port init to not interfere with usb vbus detect. 2012-04-22 12:21:24 +12:00
Gareth McMullin c1e9425725 Cleaned up traceswo capture routine. 2012-04-20 17:56:41 +12:00
Gareth McMullin 21ecbd23ea Added capture of SWO, passed to host over a vendor specific USB interface. 2012-04-18 19:15:44 +12:00
Gareth McMullin 9cff48dc6b Added .gitignore 2012-04-18 19:13:38 +12:00
Gareth McMullin 405570636b Added a Makefile for generation of some hardware outputs. 2012-04-12 18:47:30 +12:00
Gareth McMullin b513799c10 hardware: Removed solder paste openings on fiducials. 2012-04-02 16:57:40 +12:00
Gareth McMullin 75a2f97a0b Added new mini hardware design. 2012-03-25 20:19:31 +13:00
Gareth McMullin c0493ee0e8 Monitor USB VBUS to control D+ pull-up resistor. 2012-03-24 19:25:16 +13:00
Gareth McMullin ebf15cf5e2 Windows driver now supports 64-bit. 2012-03-24 19:02:03 +13:00
Gareth McMullin 537cbcdbd8 Added Windows driver setup info for DFU interfaces.
These use libusb and work with the uploader in the upgrade dir.
2012-03-18 15:16:51 +13:00
Gareth McMullin 87c14c294b Fixed some issues in Windows DFU uploader. 2012-03-18 15:15:00 +13:00
Gareth McMullin a43cbf65c9 Report FP registers as feature "org.gnu.gdb.arm.vfp".
This allows GDB to synthesise single precision registers S0-S32.
2012-02-12 14:59:42 +13:00
Gareth McMullin 38d8147774 Added FP register support. 2012-02-12 14:24:54 +13:00
Gareth McMullin a08e0bdd9c Made command handlers static. 2012-02-12 14:24:18 +13:00
Gareth McMullin 35a9e10f49 Accept partial match of monitor commands. 2012-02-12 12:02:50 +13:00
Gareth McMullin 4282244fb4 stm32f4: Fixed chunk padding for flash programming. 2012-02-08 20:43:12 +13:00
Gareth McMullin b52c62266a Fixed hexprog.py to work with current firmware 'g' packet. 2012-01-30 22:14:31 +13:00
Gareth McMullin c17ad8f2ce Merge pull request #1 from mbolivar/master
Add note about gschem to README.
2012-01-27 16:37:15 -08:00
Marti Bolivar 86b1679dd2 Add note that schematic is created in gschem.
This will help avoid confusion about which EDA toolchain should be
used to view and edit it.

Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
2012-01-27 19:17:15 -05:00
Gareth McMullin f5d8bda6e6 Support DFU GET_STATUS request when in application mode. 2012-01-19 21:51:42 +13:00
Gareth McMullin f2f5fd2fa1 Added unfinished, untested upgrade tool. 2012-01-18 20:46:35 +13:00
Piotr Esden-Tempski a7f14e3cc0 Changed the unique id generation to be 8 characters long. This is so Mac OS X uses the the unique id for naming the device file instead of the location. 2012-01-16 22:54:37 -08:00
Gareth McMullin 53ebc6770e Configure CDC ACM packet size in a #define for easy access.
This doesn't work for >64 bytes.  Suspect bug in libopencm3.
2012-01-09 23:15:10 +13:00
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