Andrey Smirnov
7a5da60e26
Change USB strings handling code
...
This commit add an extra field to the _usbd_device, that allows to
keep track of the number of USB strings which allows simplify
boundaries checking code in usb_standard_get_descriptor.
This commit also changes the index base for strings in
usb_standard_get_descriptor which allows to get rid of necessity to
have a dummy one-character string in a strings array.
2012-11-06 16:46:55 -08:00
Jeff Ciesielski
6c41c808c3
stm32/f1/can: Add clearing of can timing bits on init
...
This corrects a bug introduced with the addition of allowing loopback
and silent parameters in the init function.
2012-11-01 18:02:11 -07:00
Jeff Ciesielski
fa1d5f8e43
stm32/f1/can: clean up can_available_mailbox ->fewer 'if' statements
2012-10-31 17:03:26 -07:00
Piotr Esden-Tempski
507a1742dc
Merge pull request #57 F2/F4 timer merging action
...
Merge remote-tracking branch 'tdaede/f4-timer'
2012-10-31 13:47:54 -07:00
Piotr Esden-Tempski
def9b9f381
Added new f4 adc module to the library makefile.
2012-10-31 13:39:24 -07:00
Piotr Esden-Tempski
f5df25d6de
Merge pull request #55 STM32F4: New adc module
...
Merge remote-tracking branch 'ksarkies/adc-f4'
2012-10-31 13:38:51 -07:00
Piotr Esden-Tempski
60aa32e2b9
Merge pull request #53 CAN fixes
...
Merge remote-tracking branch 'tdaede/master'
2012-10-31 13:37:19 -07:00
Ken Sarkies
68e6818761
STM32F4 New: headers and source code for DMA
...
This has been tested with some dac, timer and (as yet uncommitted) adc examples.
2012-10-31 13:36:07 -07:00
Ken Sarkies
5a6b1a1934
STM32F1 Addition to DMA to add interrupt flag read and clear.
...
Additional macros and defines added to header for the purpose.
Also disable of increment modes (seem to have been omitted originally).
2012-10-31 13:35:59 -07:00
Piotr Esden-Tempski
6b2ca89f48
Merge pull request #22 fixing usb and f4 alignment issues
...
Merge remote-tracking branch 'jdk/master'
Conflicts:
lib/stm32/f1/Makefile
lib/stm32/f4/Makefile
2012-10-31 13:34:18 -07:00
Thomas Daede
016c74af25
F2 timers are the same as F4 timers, so make the same changes to them
2012-10-31 15:34:10 -05:00
Thomas Daede
9468933735
Add back timer_set_option for STM32F4, and document.
2012-10-31 00:42:58 -05:00
Thomas Daede
a56764667c
Update comments and copy author from F4 version.
2012-10-31 00:11:59 -05:00
Thomas Daede
d7296f176a
Move timer.c to be common to all stm32 series
2012-10-30 16:52:54 -05:00
Ken Sarkies
0bd415365d
STM32F4: New adc module
...
Note adc.h was provided by Matthew Lai but was never merged.
adc.c is new.
2012-10-30 10:22:52 +10:30
chrysn
a1f4c29872
Merge branch 'efm32'
...
this adds support for energy micro's efm32 tiny gecko, gecko, leopard gecko and
giant gecko series.
also, the experimental libopencmsis is included in this branch, as it is
required for full operation of the free energymicro standard library
2012-10-29 14:44:37 +01:00
chrysn
a01e5c201b
Merge branch 'generalizations'
...
this merges common c and header files of different architectures, adds a
dispatch mechanism and yaml descriptions of interrupt handlers from which the
whole interrupt table setup c code is generated.
2012-10-29 14:34:42 +01:00
Thomas Daede
f385341495
Release the correct fifo in can_receive()
2012-10-28 02:53:53 -05:00
Thomas Daede
1bb0e9b970
Add CAN support for F2 and F4 series.
...
All stm32 series currently released share the same bxCAN hardware, so share can.c among all the families.
2012-10-28 02:50:46 -05:00
Jeff Ciesielski
f80bf1ccb1
stm32/i2c: Add DOXYGEN strings for i2c helper functions.
...
Also: Define i2c_dutycycle group in i2c header
2012-10-22 15:48:22 -07:00
Karl Palsson
e55a9e3875
Missing EXTI ports and flag numbers for F4
...
(Also missing for forthcoming L1)
2012-10-22 22:37:44 +00:00
Jeff Ciesielski
94abf6e529
stm32/f1: Add user_reset_hook to reset_handler w/ jump_to_dfu preset
...
This allows for pragramatic jumping to the DFU bootloader on CL devices, or
could be used for things like CRC checking of the firmware before boot
2012-10-22 14:45:44 -07:00
Jeff Ciesielski
dd5e797d61
stm32/f1/can: Add function to detect if can system has an available mailbox
2012-10-22 13:26:58 -07:00
Silvio Gissi
0a1cf977eb
Added irq.yaml to lpc_13xx and lpc_17xx families
2012-10-21 08:54:40 +02:00
Jeff Ciesielski
ffe392c11b
stm32/f1/i2c: remove unnecessary parenthesis
2012-10-19 23:16:08 -07:00
Jeff Ciesielski
24a35126bf
stm32/f1/can: Replace mistaken logical operators with bitwise operators.
...
also: remove unnecessary parenthesis
2012-10-19 23:05:37 -07:00
Jeff Ciesielski
1cb373464c
stm32/f1/gpio: use |= instead of = when setting up registers
2012-10-19 16:33:38 -07:00
Jeff Ciesielski
527eeacbff
stm32/f1/rtc: add PLL2/3 to switch statement to avoid compiler warning
2012-10-19 16:32:37 -07:00
Jeff Ciesielski
069a758f6c
stm32/f1/rcc: add 25mhz in to 72mhz out clock tree setup function.
...
also: added support for previously undefined PLLs
2012-10-19 16:31:52 -07:00
Jeff Ciesielski
153e81bc96
stm32/f1/vector: add ability to boot to DFU bootloader
...
note: Only works on CL devices
also: this could probably use a helper function
2012-10-19 16:30:27 -07:00
Jeff Ciesielski
be4ee41ef9
stm32/f1/i2c: add a whole bevy of additional helper functions
2012-10-19 16:29:20 -07:00
Jeff Ciesielski
a2fc8768c6
stm32/f1/dma: add clear_flag helper function
2012-10-19 16:28:44 -07:00
Jeff Ciesielski
4b86c28141
stm32/f1/can: Add loopback/silent vars to init function.
...
Also: add helper function for mailbox checking
2012-10-19 16:27:17 -07:00
chrysn
1e88ad186f
remove common modules from efm32*'s explicit build list
...
this is 75c216582 for the efm32 branch, see there for details
2012-10-19 19:30:25 +02:00
chrysn
a433217c5d
Merge branch 'generalizations' into efm32
2012-10-19 19:29:32 +02:00
chrysn
f62eee7644
remove nvic.o from stm32/f[24]'s explicit list
...
this was missed out in 75c216582, see there for details
2012-10-19 19:29:06 +02:00
chrysn
14a5fc78cf
completing dispatch
...
the LM3S irq list was previously unused as it was missing in the
dispatch files; now it got added. (before HEAD^, it wouldn't have made
any difference because the discriminating constant wasn't defined
anyway)
also, this enhances the warning messages
2012-10-19 19:10:42 +02:00
chrysn
99d7b21032
define platform specific constants for all chips
...
previously, only stm32 chips passed the information about which chip to
build on into the compiler. this information is essential to dispatch,
thus defining LPC13XX, LPC17XX, LPC43XX and LM3S in analogy to
STM32F1..4.
2012-10-19 19:10:42 +02:00
chrysn
75c2165827
build common .o files everywhere (fixes issue #29 )
...
vector.o, nvic.o, scb.o and assert.o are available on every platform,
but at least some of them differ between the implementations. they
already got built explicityly on some platforms; now adding them to the
common Makefile.include.
2012-10-19 18:56:39 +02:00
chrysn
1210738845
add generic OBJS to efm32 libraries
...
better fixes would be adding them to the generic (included) Makefile or
building the really device independent stuff in a _generic library
2012-10-19 17:03:23 +02:00
chrysn
6706899551
build vector.o on lpc13xx
...
no idea how this ever worked...
2012-10-19 15:18:21 +02:00
chrysn
843660dbfd
copied over linker scripts
...
this will need some generalization too...
2012-10-19 15:02:09 +02:00
chrysn
e11edaff11
build all efm32 families
2012-10-19 14:53:06 +02:00
chrysn
ab5a544d45
added irqs for the rest of the efm32 devices
2012-10-19 01:11:43 +02:00
chrysn
d526dd3268
rename tinygecko->efm32tg everywhere
2012-10-19 00:59:49 +02:00
chrysn
962f328691
renamed linker file to work with included makefile
2012-10-19 00:41:22 +02:00
chrysn
d13043d787
change discriminator in efm32 series from TINYGECKO to EFM32TG
2012-10-19 00:31:10 +02:00
chrysn
fa3c1ea6a2
pulling in a simplification in per-arch makefiles
2012-10-19 00:19:07 +02:00
chrysn
3a2e1c45aa
Merge branch 'generalizations' into efm32
2012-10-18 23:00:25 +02:00
chrysn
bc5146b710
unified systick handling
...
the only change this results in in the example binaries is in the
hackrf-jellybean/systick example, where the the check in
systick_set_clocksource for overflowing from the stm32 area gets used.
2012-10-18 22:48:14 +02:00