Gareth McMullin
75001a4421
Factor Morse code functions out of platform code.
2015-02-28 22:05:10 -08:00
Gareth McMullin
5d136398e1
Use sensible return convention for platform_target_get_power()
2015-02-28 21:23:24 -08:00
Gareth McMullin
1b2cd547bc
Merge pull request #72 from dlaw/master
...
Add support for SAM4 erase command
2015-01-26 10:59:32 +13:00
Gareth McMullin
1552218e8f
Merge pull request #71 from maknoll/master
...
SAM3S support
2015-01-26 10:56:52 +13:00
David Lawrence
b771d0dcd6
Add support for SAM4 erase command
2015-01-23 16:36:12 -05:00
Martin Knoll
a7283196d1
SAM3S support
2015-01-22 16:09:01 +01:00
Richard Meadows
ea78e2d737
Complete refactor of samd20 -> samd
2015-01-18 22:40:02 +00:00
Richard Meadows
565795e168
Added support for SAMD10/11/21, and list of tested SAM D devices
...
This allows blackmagic to be used with the new Arduino Zero board via
the unpopulated SWD header on the east end of the board.
2015-01-18 22:35:59 +00:00
Richard Meadows
3726061773
Support for the NVMCTRL Security Bit (PROT=1)
2015-01-18 20:46:26 +00:00
Richard Meadows
e75ea64a01
Renamed nvmc control a register to match datasheet
2015-01-18 14:11:58 +00:00
Richard Meadows
1c1312b467
Added better feedback for samd erase failures
2015-01-18 13:22:41 +00:00
Gareth McMullin
a3ab9b24d1
Avoid repetition of cortexm code in stmd20 driver.
2015-01-18 12:16:17 +13:00
Gareth McMullin
f1981925b3
Merge branch 'samd20-revb-fix' of https://github.com/richardeoin/blackmagic into richardeoin-samd20-revb-fix
2015-01-18 11:03:10 +13:00
Richard Meadows
cad30cfa39
Fixed run command on SAM D20 old revision B silicon.
...
This appears to be related to Atmel Errata Reference 12015 (see §
35.4.1 DSU in the datasheet) but only applies to revision B silicon -
not revision C. While this is an old silicion revision (latest is
revision E as of 17 Jan 2015) I found one on a development board.
2015-01-17 18:58:00 +00:00
Richard Meadows
9072faf6ca
Fixed spaces / tabs from last commit
2015-01-17 18:35:36 +00:00
Richard Meadows
c12002b636
Check target_attach succeeded in vRun command, and return error if not
2015-01-17 18:30:58 +00:00
Gareth McMullin
abcc04d4f3
Merge pull request #63 from beewoolie/static-stubs
...
Fix to move stubs into rodata.
2015-01-17 13:18:20 +13:00
David Lawrence
985627af7e
SAM4S support
2015-01-12 14:53:58 -05:00
Marc Singer
da28970c3e
Fix to move stubs into rodata.
...
o Stubs were declared as globals which means they will be initialized
data. No need for this. Now, stubs are static const and are only
present in the program image.
2015-01-09 18:18:10 -08:00
Gareth McMullin
9c5ffd61f7
First cut at Freescale Kinetis support.
2015-01-06 22:26:00 +13:00
Uwe Bonnes
d162e75ceb
stm32f4.c: Add STM32F411 ID.
2014-12-23 21:32:21 +13:00
Gareth McMullin
fdd7799304
Merge pull request #60 from themadinventor/lp-icdi-clean
...
Added (preliminary) support for TI TM4C123 Launchpad
2014-12-23 21:31:43 +13:00
Fredrik Ahlberg
346258934b
Added support for TI TM4C123 Launchpad
2014-11-23 22:59:16 +01:00
Vegard Storheil Eriksen
9434299613
Add support for halfword memory accesses.
2014-10-21 00:12:50 +02:00
Gareth McMullin
fd9eef821e
Revert USB double buffered OUT handling on STM32F1.
...
This introduced a bug where the endpoint can get stuck, forever sending NAK.
2014-10-16 13:50:56 -07:00
Gareth McMullin
f85a8c4ebb
Fix build for f4discovery by defining platform_hwversion().
2014-10-16 13:50:56 -07:00
Gareth McMullin
a5549d630c
Whitespace cleanup.
2014-10-16 13:50:56 -07:00
Gareth McMullin
60626e5bbe
Merge pull request #57 from aibara/dev/lpc43xx_wdt
...
LPC43XX: Attempt to handle case of running WDT.
2014-09-17 10:14:21 +12:00
Allen Ibara
c5abc9a0bd
LPC43XX: Attempt to handle case of running WDT.
...
If the WDT is running, it may reset while we are trying to flash.
Since we can't disable it, we set a long period and attempt to pet it
before each IAP call.
2014-09-16 14:54:24 -07:00
Gareth McMullin
9fda010b32
Give up unwinding a fault if reading the stack fails.
2014-09-12 12:24:43 +12:00
Richard Eoin Meadows
091389b982
SAMD20 prints die revision
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
f4e20d0d04
Ooops - Semicolon from last commit :-)
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
f4474557d0
SAM D20 MBIST shouldn't fail silently
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
39a0b064af
Use external access DSU range
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
2a444ab1fb
Fixed SAM D20 support with reset attached.
...
monitor connect_srst enable can be used to connect to targets that re-use the SWCLK pin
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
e75798f201
Optimised flash write, programming speed is now approx. 2x faster
2014-09-03 21:17:48 +12:00
Richard Eoin Meadows
02812b6bf1
Added notes about the datasheet and NVMCTRL Security Bit
2014-09-03 21:17:41 +12:00
Richard Eoin Meadows
945a2802d5
Atmel SAMD20 support
2014-09-03 21:17:41 +12:00
Gareth McMullin
9d9ecb572e
Assert SRST when scanning JTAG if configured. Closes #54 .
2014-08-27 19:03:37 +12:00
Gareth McMullin
8a32b46f65
Fix build for non-native targets.
2014-08-08 20:22:33 +12:00
Gareth McMullin
84fc40085e
Send a null packet on end of USB transfer if last data packet is full.
2014-08-06 12:38:57 +12:00
Hans Baier
d265b76001
Add support for STM32F401RE
2014-08-06 10:49:48 +12:00
Gareth McMullin
d7c30caa3e
Style clean up.
2014-07-30 21:15:43 +12:00
Gareth McMullin
f06bc0fd79
Minor fixes to stm32f1 flash routines.
2014-07-30 20:27:30 +12:00
Gareth McMullin
fad6eb3c14
Fix parity support on USB UART interface.
2014-07-30 19:57:18 +12:00
Gareth McMullin
2b61bed291
Merge branch 'nrf51-uicr' of https://github.com/richardeoin/blackmagic into richardeoin-nrf51-uicr
...
Conflicts:
src/nrf51.c
2014-07-30 16:55:02 +12:00
Gareth McMullin
4447fb428a
Merge pull request #50 from richardeoin/nrf51-ficr
...
Added monitor commands for reading various nRF51 device parameters
2014-07-30 16:51:46 +12:00
Gareth McMullin
936b7460e0
Merge branch 'John-Titor-lpc11xx-flash'
2014-07-30 16:48:56 +12:00
Gareth McMullin
3daf5d7e11
Merge branch 'lpc11xx-flash' of https://github.com/John-Titor/blackmagic into John-Titor-lpc11xx-flash
...
Conflicts:
src/lpc11xx.c
2014-07-30 16:45:55 +12:00
Gareth McMullin
bfe5d1168b
Merge pull request #47 from richardeoin/target-power
...
Added monitor option to toggle target power
2014-07-30 14:19:46 +12:00
Gareth McMullin
7e396b0205
Merge pull request #30 from BuFran/pulls/l152c
...
[SUP] Add support for stm32l152c-discovery board
2014-07-30 14:17:51 +12:00
Gareth McMullin
5d61575ce6
Merge remote-tracking branch 'origin/lpc8xx'
...
Conflicts:
src/lpc11xx.c
2014-07-30 14:11:10 +12:00
Frantisek Burian
88a80e25d5
[SUP] Add support for stm32l152c-discovery board
2014-07-09 16:35:33 +02:00
Richard Eoin Meadows
7dc18768c4
Support erasing + flashing the User Information Configuration Registers (UICRs)
2014-06-11 13:43:59 +01:00
Richard Eoin Meadows
380f128d0a
Added monitor commands for reading various nRF51 device parameters
2014-06-11 13:39:06 +01:00
none
3543e560af
Fix lpc11xx magic number programming when chunks overlap
...
In the case where the vectors are in a separate section smaller than
the chunksize, the lpc11xx magic number calculation could generate an
incorrect value.
2014-06-10 21:23:17 -07:00
Richard Eoin Meadows
c1b1d45155
TRST only exists on hardware version 0
2014-05-28 12:45:21 +01:00
Richard Eoin Meadows
42e41edfa1
Target power option is only for versions > 0
2014-05-28 12:33:43 +01:00
Richard Eoin Meadows
c9089f5851
Added monitor option to toggle target power
2014-05-28 12:25:48 +01:00
Richard Eoin Meadows
63bce97cbd
PLATFORM_FATAL_ERRORs are now caught even when they happen in the
...
initial JTAG scan that occours during platform_init.
Previously any fatal errors that occoured during this scan caused a
hardfault.
2014-05-28 12:10:26 +01:00
Gareth McMullin
72ae78a185
Updated libopencm3. Fixes broken bootloader, issue #43 .
2014-05-08 11:02:35 -07:00
Mike
34d0f64529
Nordic nRF51 series support
2014-05-01 15:09:59 +01:00
Gareth McMullin
3077472620
Unwind hardfaults in dual-stack mode.
2014-03-31 20:58:06 +13:00
Jared Boone
096e1b32c6
Add support for LPC11U14 (tested) and related U-series microcontrollers (untested).
2014-03-08 19:07:50 +13:00
Gareth McMullin
cbb85b6a45
LPC812 support
2014-03-08 18:58:39 +13:00
Frantisek Burian
12aeaad441
[locm3] Use the new clock-enabling mechanisms in locm3.
2014-02-13 18:21:16 +01:00
Frantisek Burian
690e99c6b2
Fix the STK_CTRL to the STK_CSR library change.
2014-02-13 17:52:09 +01:00
Richard Eoin Meadows
e5624a7e6d
Added support for the LPC1115FBD48/303 (ID determined experimentally)
2014-01-29 08:02:04 +08:00
bon@elektron.ikp.physik.tu-darmstadt.de
d27c50c601
Add STM32F03X and STM32F07X handling.
2014-01-24 05:03:38 +08:00
bon@elektron.ikp.physik.tu-darmstadt.de
0c9d5d8166
Add dfu bootloader update application and use absolute delay for stlink
...
Hello,
appended 3 patches
- adds a dfu-bootloader appliaction
- uses absolute delays when waiting for pull-up delays on the STLINK
(hopefully fixes issue #30 )
Updating the dfu-bootloader by additional application is helpfull for the
STLINK, as for flashing the bootloader by SWDb otherwise jumpers need to be
soldered or external SWD is not possible.
Use like:
- dfu-util -s 0x08002000:leave -D dfu_upgrade.bin
- dfu-util -s 0x08000000:leave -D blackmagic_dfu.bin
- Push reset buttom and reconnect to enter new dfu bootloader
- dfu-util -s 0x08002000:leave -D blackmagic.bin
--
Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de
Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
>From fae5022c304a8866f056ea66660ac7ce3809dcf8 Mon Sep 17 00:00:00 2001
From: Uwe Bonnes <bon@elektron.ikp.physik.tu-darmstadt.de>
Date: Sun, 20 Oct 2013 15:00:36 +0200
Subject: F1: Prepare to update dfu bootloader via DFU with additional
application.
2014-01-24 04:59:09 +08:00
Gareth McMullin
ac0fc8216a
Merge pull request #35 from burgrp/upstream
...
Fix in checksum calculation condition
2014-01-23 10:52:09 -08:00
Gareth McMullin
eb2f2afa9a
Merge pull request #32 from aibara/lpc43xx_updates
...
Lpc43xx target support updates
2014-01-23 10:51:46 -08:00
Pavel Burgr
ce17cc2e2b
Fix in checksum calculation condition
2014-01-22 10:35:35 +01:00
Allen Ibara
01244fc84d
LPC43XX: Force target to use internal clock.
...
Without this, flash write timing might be incorrect.
2014-01-10 13:24:25 -08:00
Allen Ibara
2b798fa8fc
LPC43XX: Make the chunk_offset logic more explicit.
2014-01-10 13:24:25 -08:00
Allen Ibara
487252150f
LPC: Cleanup regs_size (in bytes).
...
Also use sizeof() to make it clear why we multiple and divide by 4.
2014-01-10 13:24:25 -08:00
Allen Ibara
df9c19f071
LPC43XX: Remove type cast for erase function
2014-01-10 13:24:25 -08:00
Allen Ibara
911af3b836
LPC43XX: Add reset command to do a system reset (but not the debug).
2014-01-10 13:24:25 -08:00
Allen Ibara
813622b1b6
LPC43XX: Add mkboot target command; dont make banks bootable by default.
...
This used to be done transparently in the write step, however that
breaks the 'verify' command. This is also more flexible for cases
where you want to write a flash bank without ever intending it to
be bootable.
2014-01-10 13:24:25 -08:00
Allen Ibara
29c7846612
LPC43XX: Make sure to align target struct to word alignment
2014-01-10 13:24:25 -08:00
Frantisek Burian
8014d434de
Update to the newest libopencm3
2014-01-04 17:29:54 +01:00
Gareth McMullin
8835df1822
Merge remote-tracking branch 'origin/usbuart_highrate'
2013-12-04 16:16:08 +13:00
Gareth McMullin
42570efaf8
Revert "STM32F4: Add handling of second bank and dual boot devices."
...
This reverts commit 536482f804
.
2013-10-22 07:48:06 +08:00
Uwe Bonnes
09fbe783c5
f4discovery: Limit clock to 48 MHz and stack 24 kiByte so that code can be compiled unchanged for F401Discovery too.
...
TODO: Bump clk up to 84 MHz as soon as libopencm3 supports that speed.
2013-10-22 07:26:35 +08:00
Uwe Bonnes
536482f804
STM32F4: Add handling of second bank and dual boot devices.
2013-10-22 07:21:35 +08:00
Uwe Bonnes
cbd73cfb8f
STM32F4: Recognize F401.
2013-10-22 07:21:35 +08:00
Uwe Bonnes
5aa802969b
stlink: Give the NRST check more time as otherwise some L1 discovery board stayed in the bootloader.
2013-10-22 07:18:09 +08:00
Uwe Bonnes
086f3565f0
stm32f1: Fix handling of option byte write. Write needs to happend on erased option bytes.
2013-10-20 16:14:25 +02:00
Uwe Bonnes
15e529a43a
stm32f1.c: On a read protected device, deny any other option action than erase.
...
Otherwise the first option action triggers an error, inhibiting further option
actions.
2013-10-20 16:14:19 +02:00
Michael Tharp
c395c6f73a
Configure SRST output as open-drain for BMP Mini hardware
2013-10-05 13:14:03 +08:00
Benno Leslie
3cce6f472c
Add support for the SYS_WRITEC semihosting operation.
...
This is implemented in the same manner as QEMU semihosting
support, specifically, a SYS_WRITEC results in a single
character write to STDERR.
2013-10-05 13:14:03 +08:00
Richard Eoin Meadows
b8f9a2ed4b
Bugfix: Always apply the vector table magic number correctly.
...
Previously when the flash write length was less than the Chunk size the 2nd chunk write would re-calculate and apply an incorrect magic number
2013-10-05 13:14:03 +08:00
Marc Singer
40820a2354
Added internal pull-up to PWR_BR.
...
o Prevent probe from inadvertently powering target. If PWR_BR is
allowed to float, the gate on Q1 (blackmagic_mini) will tend to be
close enough to zero to turn the transistor on. We activate the
internal pull-up on this IO pin to force the transistor off.
2013-10-05 13:14:03 +08:00
BuFran
e67192348f
FIX: usbd_init compatibility fix
...
Updated compatibility with libopencm3 commit 113e5c22e6390ba072148315e83a5faa5ff7ce86
2013-10-05 12:23:23 +08:00
BuFran
c857165c12
FIX: FLASH_* collision with libopencm3 definitions
...
Resolve collision to FLASH_* from the libopencm3 by adding STM32F1_ prefix to the L1's
2013-10-05 12:23:23 +08:00
BuFran
c28350f242
FIX: u{8,16,32} -> uint{8,16,32}_t to be compatible with new library
...
The use of u8, u16, u32 has been deprecated in libopencm3.
Update it with standard uint8_t, uint16_t, uint32_t types
2013-10-05 12:23:23 +08:00
BuFran
f1584b266b
[BUILD] Don't throw error on already cleaned output
2013-10-05 12:23:23 +08:00
Gareth McMullin
700833f38f
Use do {...} while(0) for PLATFORM_FATAL_ERROR() macro.
2013-08-19 12:27:36 +12:00
Gareth McMullin
a30ef31018
Handle SW-DP fault on WDATAERR.
2013-06-19 21:06:59 +12:00
Gareth McMullin
d8f737fc53
Disable ADIv5 timeout while target is running.
2013-06-19 21:05:53 +12:00