55 Commits

Author SHA1 Message Date
Gareth McMullin
600f0d27d9 Use sniprintf on newlib platforms. 2015-11-11 12:41:13 -08:00
Gareth McMullin
482070c91b Merge branch 'v1.6-branch'
Conflicts:
	src/Makefile
	src/platforms/stlink/platform.h
	src/platforms/swlink/platform.h
2015-04-03 21:02:01 -07:00
Gareth McMullin
97824b7f02 Use git describe for version in generated header file. 2015-04-03 20:21:33 -07:00
Gareth McMullin
68f54a3545 Remove old platform specific error handling macros. 2015-03-22 14:06:56 -07:00
Gareth McMullin
9a8dbdeff7 Fix errors when building for non-native platforms. 2015-03-22 12:26:45 -07:00
Gareth McMullin
f5f87bf70f Build for stlink with -Os. 2015-03-15 20:39:19 -07:00
Gareth McMullin
0d99e22a26 Quieten build system. 2015-03-07 11:03:50 -08:00
Gareth McMullin
1eac78b1c8 Move targets to make bin and hex files to toplevel makefile. 2015-03-07 11:03:50 -08:00
Gareth McMullin
3e466f2d23 Factor out timing routines common to all STM32 targets. 2015-03-02 21:59:04 -08:00
Gareth McMullin
b07ffffcee Factor out common cdcacm.c from stm32 and tm4c.
Cleaned up interface to enter bootloader and read serial number.
2015-03-02 10:16:33 -08:00
Gareth McMullin
4d4813de87 Clean up includes everywhere.
All source files include general.h first and before anything else.
This inlcludes platform.h and platform_support.h
No header file needs to include to include any of these, but should include
any others needed for it's own declarations.
2015-03-01 22:16:04 -08:00
Gareth McMullin
476f83b69a Move common USB stuff out of platform header files. 2015-02-28 22:48:26 -08:00
Gareth McMullin
5eff0ab5d6 Factor out common GPIO code in STM32 platforms. 2015-02-28 22:09:50 -08:00
Gareth McMullin
75001a4421 Factor Morse code functions out of platform code. 2015-02-28 22:05:10 -08:00
Gareth McMullin
a5549d630c Whitespace cleanup. 2014-10-16 13:50:56 -07: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
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
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
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
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
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
Gareth McMullin
700833f38f Use do {...} while(0) for PLATFORM_FATAL_ERROR() macro. 2013-08-19 12:27:36 +12:00
Gareth McMullin
8c877d6dfa Fix trailing whitespace everywhere. 2013-06-17 15:53:32 +12:00
Paul Fertser
cdaed128c1 stlink: add support for SRST handling
This enables SRST signals in open drain mode for both stlinkv1 and
stlinkv2 hardware platforms.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2013-05-14 12:34:53 +12:00
Allen Ibara
43f7e7a3cf Changes to the USBUART to make it less likely to drop characters at higher baud rates.
USB UART seems to work fine at 115.2Kbps or 230.4Kbps, but starts to drop characters
as the data rate goes higher. This commit changes the usbuart ISR to fill a software
FIFO, and adds a low priority timer interrupt to run deferred processing to drain a
FIFO and send USB CDCACM packets, rather than calling the usb send within the UART
ISR.

Tested on native platform, up to 1.5MBps.
2013-04-27 12:56:58 -07:00
Gareth McMullin
126df7bb35 Allow extra LDFLAGS on command line. Use nano.specs for swlink. 2013-04-16 16:47:38 -07:00
Paul Fertser
9c95f039cf Make code compatible with newlib-nano and use it for stlink
With gcc-arm-none-eabi-4_7-2013q1-20130313 and -O2 I get
   text    data     bss     dec     hex filename
  45744     304    2376   48424    bd28 blackmagic

With -Os the results are even more impressive:
   text    data     bss     dec     hex filename
  37900     304    2376   40580    9e84 blackmagic

Since -Os might lower the debugging speed, do not enable it yet in the
absence of real measurements.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2013-04-14 11:48:59 -07:00
Paul Fertser
91b481731d stm32f1/stm32f4: fix hardware CRC calculation
This was real-life tested on stm32f1 hardware including computation
for odd-sized ranges.

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2013-04-14 11:35:23 -07:00
Uwe Bonnes
920ced062e SWLINK: Add variant for the STM8S Discovery board 2013-03-12 12:24:10 +01: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
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
96ae3886ff stm32:cdcacm/usbdfu: Print version and build information in the product string 2013-01-25 13:01:57 +01: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
1fa961841d Product and DFU String now tell the hardware they run on 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
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
67f8176c5b stlink: Add the UART 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
Gareth McMullin
09c0fb5773 Build with libopencm3 as a submodule.
Fix incompatibilities with latest libopencm3.
2012-10-22 18:45:42 +13:00