Commit Graph

249 Commits

Author SHA1 Message Date
Gareth McMullin d4411fc51f Removed verison info from USB strings on native platform. 2013-03-31 12:18:11 -07:00
Gareth McMullin 3a70b81cce Add erase_mass command for stm32f4 devices. 2013-03-27 14:10:07 -07:00
Gareth McMullin d7a6f0165e Accept new chip ID for stm32f4 and include flash layout for 2MiB parts.
Thanks to Mike Smith.
2013-03-27 11:24:43 -07:00
Gareth McMullin 87dad080e1 Fix build for f4discovery host. 2013-03-17 10:17:05 +13:00
Gareth McMullin 931cd97f15 Removed stm32_can and usps_f407 platforms. 2013-03-15 20:50:55 +13:00
Uwe Bonnes 486c5de013 swlink: Add missing item to connector layout 2013-03-14 22:56:31 +01:00
Uwe Bonnes 920ced062e SWLINK: Add variant for the STM8S Discovery board 2013-03-12 12:24:10 +01:00
Gareth McMullin e880c553fb Restore trace timer interrupt handler. 2013-03-12 19:14:11 +13:00
Gareth McMullin 7c2e994381 Split out platform specific bootloader parts to separate files. 2013-03-12 19:04:10 +13:00
Gareth McMullin 55f161208d Further split-up of DFU bootloader. 2013-03-12 15:00:15 +13:00
Gareth McMullin 14e5e8b0b6 Separated clean and dirty bootloader sections. 2013-03-12 09:57:28 +13:00
Vegard Storheil Eriksen e8f9d52d2f gdb_if: Fix USB flow control.
The introduction of the double buffering broke USB flow control, causing
loss of data when a new packet arrived with the previous still present in
the double buffer.

With this patch the endpoint is kept in NAK until the double buffer is empty.
2013-03-06 20:36:49 +01:00
Gareth McMullin d5be7b7a50 Merge pull request #11 from aibara/master
Another small fix for adiv5, ap_mem_write_bytes double increment analogous to previous fix for ap_mem_read_bytes
2013-02-18 00:51:45 -08:00
Gareth McMullin 99ac73907f Merge pull request #9 from jeffstaley/master
Bug fixes for lpc11xx code
2013-02-18 00:50:50 -08:00
Uwe Bonnes ff8de39774 usbuart: Don't try to send until configured. Enumeration may hang else 2013-02-15 17:55:36 +01:00
Uwe Bonnes dee82a0d4f Document changes between ST-Link V1 and V2 and implement needed changes 2013-02-15 17:39:27 +01:00
Uwe Bonnes f8ea954275 STLINK: Add pointer to Discoveryboard modification instructions 2013-02-11 19:36:22 +01:00
Uwe Bonnes 327ee49a67 usps_f407: add another platform 2013-02-03 14:22:14 +01:00
Uwe Bonnes 31f39339fd stm32/usbdfu.c: Rearrange code to clarify the tasks to be done 2013-02-03 14:14:48 +01:00
Allen Ibara 4d6ae0a1b2 Avoid double increment of dst in adiv5 write bytes function. 2013-01-31 13:39:41 -08:00
Uwe Bonnes b1a942aca3 STM32F0/3: Handle the option bytes 2013-01-30 17:16:44 +01:00
Piotr Esden-Tempski 9819f9d5b3 Corrected the led pin for F3 and F4 discovery boards. Needs proper fixing so that it works on all platforms in the future. 2013-01-28 12:15:50 -08:00
mirage b50b3ffa86 Error in calculating ending sector number. 2013-01-26 11:38:27 +08:00
Uwe Bonnes 96ae3886ff stm32:cdcacm/usbdfu: Print version and build information in the product string 2013-01-25 13:01:57 +01:00
Uwe Bonnes 8415fc829b stm32/cdcacm.c: remove unneeded includes 2013-01-23 17:28:34 +01:00
Uwe Bonnes 32b909067b STM32: Use hardware CRC unit 2013-01-23 16:11:17 +01:00
Uwe Bonnes d868088d78 STM32L1: Add to the list of known JTAG IDs 2013-01-23 00:16:01 +01:00
Uwe Bonnes 6157754201 libftdi: List some know cables and allow to specify cable and serial 2013-01-23 00:16:01 +01:00
Uwe Bonnes ce059cc8ed LIBFTDI: Propagate the command line arguments to platform_init 2013-01-23 00:15:47 +01:00
Uwe Bonnes 73d120577b usbdfu: Write protect the bootloader sector on F4 2013-01-22 19:04:51 +01:00
Uwe Bonnes 09e2d00b8e STM32F4: Add option byte handling 2013-01-22 18:49:11 +01:00
Piotr Esden-Tempski 0a91fc3b30 Updated stlink platform to the new locm3 usb api. 2013-01-21 13:43:37 -08:00
Uwe Bonnes 747cc58c2c STLINK: Unconditionally enable MCO from 8 MHz HSE to PA8 as on original firmware. F3 Discovery has has no quarz for the F3 and needs it. 2013-01-21 12:48:37 +01:00
Uwe Bonnes 8033fb2529 STLINK: Allow to force bootloader by starting with the RESET button pressed 2013-01-21 11:02:44 +01:00
Uwe Bonnes 749fb318e7 gdb_if: Use a doubled buffer scheme for reading data from USB
Needed, as the OTG driver erases the data read after eventually calling the callback
2013-01-21 11:02:44 +01:00
Uwe Bonnes 1fa961841d Product and DFU String now tell the hardware they run on 2013-01-21 11:02:44 +01:00
Uwe Bonnes 04624af4e5 f4discovery: Adapt from the "native" file and add or change code where needed
- stm32_mem.py has problems with erasing the big pages, but dfu-util works
- serial GDB remote server doesn't work. It neither works for the STM32F107,
  so maybe there is a problem with the usbd_f107_driver.
2013-01-21 11:02:44 +01:00
Uwe Bonnes e373619374 stlink: LED is connected to GPIO9. Before LED was associated with the MCO Output. 2013-01-21 11:02:44 +01:00
Uwe Bonnes 8b1ec3151f usbuart, jtagtap, swdptap: Factor out GPIO setup 2013-01-21 11:02:44 +01:00
Uwe Bonnes 7e91f68efa f4discovery: Create a platforms directory for the F4 on the F4 Discovery board 2013-01-21 11:02:44 +01:00
Uwe Bonnes 15d7077115 traceswo: Move (now-constant) traceswo.c to platforms/stm32 2013-01-21 11:02:44 +01:00
Uwe Bonnes 09715e1db8 traceswo: factor out platform dependant parts 2013-01-21 11:02:44 +01:00
Uwe Bonnes 72ca77af53 stm32_can: Changes to get blackmagic to work 2013-01-21 11:02:44 +01:00
Uwe Bonnes 313a24b316 usbdfu: Allow for different, but constant flash page sizes 2013-01-21 11:02:43 +01:00
Uwe Bonnes 1eb9bfc650 platforms/stm32: Move more platform dependencies to platform.h 2013-01-21 11:02:43 +01:00
Uwe Bonnes 30d8aa1eb7 Move (now-constant) cdcacm.c to platforms/stm32 2013-01-21 11:02:43 +01:00
Uwe Bonnes 04415582bd cdcacm: move non-constant parts to platform.[hc] 2013-01-21 11:02:43 +01:00
Uwe Bonnes 533608a2f4 Move usbuart to the stm32 directory 2013-01-21 11:02:43 +01:00
Uwe Bonnes 16ac8e0478 stlink: Add DFU capability 2013-01-21 11:02:43 +01:00
Uwe Bonnes 7188a4a8cb Move usbdfu to platforms/stm32 directory 2013-01-21 11:02:43 +01:00
Uwe Bonnes 67f8176c5b stlink: Add the UART 2013-01-21 11:02:43 +01:00
Uwe Bonnes 35d6adc236 native/usbuart: Move platform dependant parts to platform.h 2013-01-21 11:02:43 +01:00
Uwe Bonnes 16b9c1e83f stlink: Update to current libopencm3 usb api. 2013-01-21 11:02:43 +01:00
Uwe Bonnes ebb48245aa stlink: Use a seperate linker file as stlink has only 64 kByte 2013-01-21 11:02:43 +01:00
mirage 99a23a7e1a As per the lpc11xx manual the stack pointer should be set before IAP
calls are made.  

In lpc11xx_flash_prepare() and lpc11xx_flash_erase() bug in calculating
the ending sector number.
2013-01-13 09:50:23 +08:00
Gareth McMullin 2a46994b42 Fixed magic numbers for CSW access. 2013-01-11 10:02:34 -08:00
Gareth McMullin ad9c76e97f Update to current libopencm3 usb api. 2013-01-10 22:01:21 -08:00
Allen Ibara 83a06052f1 Don't increment src address twice in ap_mem_read_bytes function. Fixes corrupted thumb disassembly dumps in gdb. 2013-01-10 14:04:17 -08:00
Gareth McMullin 1d16d6c34c Check for 10-bit address over flow when auto-incrementing.
Clean up whitespace.
2012-11-21 09:50:50 +13:00
Vegard Storheil Eriksen 8f04241aa8 Added support for STM32F37x. 2012-11-15 18:36:32 +01:00
Gareth McMullin 2637f072a1 Probe function return bool, true if device identified.
Correctly identify LM3S3748.
2012-11-03 23:53:25 +13:00
Gareth McMullin e1c1162a1a Recognise LPC43xx dual core devices. 2012-11-03 21:33:28 +13:00
Gareth McMullin f526a82773 Move breakpoint packet handler out of main gdb loop.
Use gdb_putpacketz for constant strings.
2012-11-03 20:38:27 +13:00
Gareth McMullin 538f4d41b6 Clean up whitespace. 2012-11-03 19:59:01 +13:00
Gareth McMullin dac1f60dc2 Clean up ancient bad typing and malloc madness. 2012-11-03 19:52:09 +13:00
Gareth McMullin 50b6c623d6 Check for null pointer before decalaring register array. 2012-11-03 19:04:27 +13:00
Gareth McMullin 0990c2224c Allow target attachment to timeout and report failure.
This is needed for if the target device is held in reset.
2012-11-03 16:42:46 +13:00
Vegard Storheil Eriksen faa43fdc92 Added support for STM32L1. 2012-10-25 21:44:26 +02:00
Vegard Storheil Eriksen dddb51ca1c Added support for STM32F0. 2012-10-24 18:08:01 +02:00
Vegard Storheil Eriksen cb41855d91 Added support for STM32F3. 2012-10-23 19:40:23 +02:00
Gareth McMullin 09c0fb5773 Build with libopencm3 as a submodule.
Fix incompatibilities with latest libopencm3.
2012-10-22 18:45:42 +13:00
Gareth McMullin 206237e8dd Fix support for multiple devices on the same jtag chain.
Mask out architecture version in ADIv5 JTAG IDCODE.
2012-09-04 21:50:12 +12:00
Gareth McMullin 358ef32225 Whitespace fixes. 2012-09-04 21:48:49 +12:00
Gareth McMullin 9137c2d058 Add a copy of DEMCR to Cortex-M private data to preserve over 'run'. 2012-08-10 21:07:06 +12:00
Gareth McMullin 234d54c5a5 Correct stepping over programmed breakpoints.
Fixes issue #2.
2012-07-05 22:08:01 +12:00
Gareth McMullin 0433d3d12a cortexm: Moved all static data to the heap. 2012-07-05 21:26:26 +12:00
Gareth McMullin 0c379744e9 cortexm: Poll for S_RESET_ST in DHCSR to detect release from reset. 2012-07-05 20:12:18 +12:00
Gareth McMullin 00c4dbfb11 ADIv5 AP and DP are now allocated on the heap and reference counted.
They are unref'd and free'd automatically when the target list is
destroyed.
2012-07-05 19:23:28 +12:00
Gareth McMullin af1ef670ba libftdi: Fixed delay function. 2012-07-05 19:10:08 +12:00
Gareth McMullin 5dff263078 Add delay after reset request.
Hopefully this fixes problems observed with failing vFlashWrite.
2012-07-01 22:40:43 +12:00
Gareth McMullin d64cec686a Signal on halt is now returned by target_halt_wait().
Fault unwinding is now handled internally in target implementation.
GDB server doesn't need to know about it.
2012-06-30 20:29:08 +12:00
Gareth McMullin 53af978295 Allow user to specify JTAG IR lengths.
This allows the use of devices that shift out values other than 0x01
from IR.
2012-06-30 16:47:23 +12:00
Gareth McMullin 01d0390b54 Fixed build for stlink platform. 2012-06-28 20:49:32 +12:00
Gareth McMullin 22993fb5bd Clear target error on attaching.
Fixes possible lock-up on devices booting from blank flash.
2012-06-28 20:11:53 +12:00
Gareth McMullin 466bb66424 Made cur_target, last_target static in gdb_main.c.
Added target destroy notify mechanism.
2012-06-27 21:26:08 +12:00
Gareth McMullin 4581da2034 Added option byte programming commands for STM32F1. 2012-06-26 21:02:11 +12:00
Gareth McMullin 29b9e103fb Fixed crash on monitor commands with no attached target. 2012-06-26 19:48:50 +12:00
Gareth McMullin 94516329a0 Added 'erase_mass' command for STM32F1 and cleaned up some magic numbers. 2012-06-26 19:42:41 +12:00
Gareth McMullin 0e768664ac Added 'vector_catch' command to control trapped vectors on Cortex-M. 2012-06-25 21:19:09 +12:00
Gareth McMullin b0d41d155a Made SAM3X monitor commands static. 2012-06-25 21:16:20 +12:00
Gareth McMullin 8b7c6bbaba Added monitor commands to set GPNVM bits on SAM3X. 2012-06-24 21:55:22 +12:00
Gareth McMullin 03fdd23e9c Added mechanism for target driver to add new monitor commands. 2012-06-24 21:41:32 +12:00
Gareth McMullin a16123997b Added target.c for common target routines. 2012-06-24 19:08:49 +12:00
Gareth McMullin 8872315e82 Updated lmi, nxp and stm32f4 drivers to use adiv5_target_ap(). 2012-06-24 14:44:02 +12:00
Gareth McMullin cb19164f2f Added flash erase function for Atmel SAM3X. 2012-06-23 21:13:08 +12:00
Gareth McMullin c09cbe8719 First cut at an Atmel SAM3X driver. 2012-06-22 23:13:25 +12:00
Gareth McMullin 33905d7203 Check target error after target specific probes. 2012-06-21 20:54:56 +12:00
Gareth McMullin 6089a66dce Renamed target_flash_write_words to target_flash_write.
Buffer from GDB may not be aligned or integer number of words.
Corrected alignment in in STM32F1 driver.
2012-06-18 20:53:06 +12:00
Gareth McMullin bc7e7d2112 Removed target header files containing a single prototype.
Target probe prototypes are all in target.h now.
2012-06-18 20:27:06 +12:00
Gareth McMullin bc5a6f022b Renamed Cortex-M driver appropriately since it support M0, M3 and M4F. 2012-06-18 19:56:19 +12:00