aboutsummaryrefslogtreecommitdiff
path: root/lib/stm32/f4
AgeCommit message (Collapse)Author
2013-03-19Add support for static constructors and destructorsinit-fini-2Nicolas Schodet
2013-03-09This mainly moves the STM32 timers' code to the common area.Ken Sarkies
F2 and F4 have a common section to deal with the options register (TIM2 and TIM5 only) L1 has been made common with timer_common_all as its options register has very different settings to F2/F4. Code is in the L1/timer.c L1/timer.h files Note that F3 and F05 timers should fit into this scheme, with F3 having additional features. Bundled with this is L1/pwr.h to change a documentation setting Also all the Doxyfiles have added "ENABLE_PREPROCESSING = NO" to fix a problem introduced by commit 118.
2013-03-07Add test in common headers for improper inclusion of such files in application.Ken Sarkies
(prevents inclusion and also issues warning) Changes to some source files to remove references to common headers. Changes to rng.h to make guard symbols the same in f2 and f4.
2013-03-07Repair to documentation (most documented files)Ken Sarkies
to remove errors, duplications and inconsistencies. File lib/stm32/f1/pwr.c - all code removed as it duplicates that in common/pwr_common.c Remaining changes do not affect code. Compiles OK. TODO efm32 has no code so generates no modules TODO F2 needs pwr.c TODO L1 needs dma.h and dma.c
2013-02-27Fixing some errors introduced with #107.Michael Aherne
Namely: - I never added rtc to the makefile, so it wasn't getting compiled - I missed 2 includes that are needed once it's actually compiling
2013-02-26Adding f4-specific rtc functionsMichael Aherne
These should also work with the f2
2013-02-26Fix all warnings for stm32f4 lib.Piotr Esden-Tempski
2013-02-26Added more warning CFLAGS to all makefiles.Piotr Esden-Tempski
2013-02-26FLASH: Make sure that the flash unlock register state is cleared before ↵Piotr Esden-Tempski
trying to unlock the flash.
2013-02-25ADC: Fix CR usage in adc_enable_discontinuous_mode_regular. Fixes #101Piotr Esden-Tempski
2013-02-25CAN support STM32F4alexn
2013-02-18Merge pull request #84 "Pr flash reg rename"Piotr Esden-Tempski
Merge remote-tracking branch 'karlp/pr_flash-reg-rename' Conflicts: include/libopencm3/stm32/l1/flash.h
2013-01-23[flash] f4: use "proper" bit definition naming.Karl Palsson
Part 4 of 4: updated f4 to use flash_<reg>_bit instead of just flash_bit
2013-01-22[stm32] Support the "new" BCD style RTC peripheralKarl Palsson
Add the register definitions and some of the most basic helper functions for the new style BCD RTC module found on the F2, F4, L1, F3 and F0. This tries to keep as close to HACKING_COMMON_DOC as possible, while maintaining sane names.
2013-01-22[l1] PWR: fix style for common codeKarl Palsson
Code added for L1 to support the PWR Control block didn't properly follow the HACKING_COMMON_DOC guidelines. The naming was wrong, and some headers were missing. This commit has no functional changes, it only addresses the style and structure problems.
2013-01-09Merging pull request #72 DocPiotr Esden-Tempski
Merge remote-tracking branch 'ksarkies/doc' Conflicts: doc/stm32f1/Doxyfile doc/stm32f2/Doxyfile doc/stm32f4/Doxyfile lib/stm32/f1/Makefile lib/stm32/f2/Makefile lib/stm32/f4/Makefile
2013-01-08CRC moved to common areaKen Sarkies
2013-01-08I2C to common areaKen Sarkies
F2/4 has now I2C3 included
2013-01-08IWDG moved to common areaKen Sarkies
2013-01-08Move usart files to common areaKen Sarkies
Again added to L1 which is similar to F1
2013-01-08Move DAC to common areaKen Sarkies
(Note there are now dummy source files dac.c (and others) that are not compiled but are needed for documentation).
2013-01-08STM32: Moved SPI code into the common area.Ken Sarkies
Updated the documentation so that it appears in all families Also added it to the L1 area, but is untested. An addition to the memorymap allows commonality and a #ifdef added to the spi_common_all code to exclude the case of SPI3 for L1 and F0 as SPI3 doesn't exist in those. An rcc dispatch header was added to remove same code from the spi header.
2013-01-08STM32 DMA: replaced F4 header to match that for F2, and move header and ↵Ken Sarkies
source files to common. In the header: - Fix DMA_SxCR_CT: change shift from 18 to 19 For use with the convenience functions: - Added DMA_SxCR_CHSEL generic values - Added DMA_STREAM - generic values - Added dma_if_offset - rather than separating out LISR and HISR - Added masks - Added dma_disable_double_buffer_mode()
2013-01-06Merging pull request #64 Various changesPiotr Esden-Tempski
Merge remote-tracking branch 'bgamari/master'
2012-11-14stm32/f4/adc: DMA can always be used with ADC2Ben Gamari
I can't find any evidence in the manual to support this comment's claim.
2012-11-13Proposed deduplication of peripherals, GPIO exampleKen Sarkies
See rambling post on dev list for justification
2012-11-08Merging pull request #60 Miscellaneous DMA fixes for F4Piotr Esden-Tempski
Merge remote-tracking branch 'bgamari/master'
2012-11-08stm32f4/dma: Fix cut-and-paste errorBen Gamari
2012-11-08stm32f4: Add dma.oBen Gamari
2012-11-07Eliminate redundant gpio code from f2/f4/l1Karl Palsson
Implemented as per exti2
2012-11-07Enable nvic and exti support for L1Karl Palsson
And include an example that uses it.
2012-10-31Merge pull request #57 F2/F4 timer merging actionPiotr Esden-Tempski
Merge remote-tracking branch 'tdaede/f4-timer'
2012-10-31Added new f4 adc module to the library makefile.Piotr Esden-Tempski
2012-10-31Merge pull request #55 STM32F4: New adc modulePiotr Esden-Tempski
Merge remote-tracking branch 'ksarkies/adc-f4'
2012-10-31STM32F4 New: headers and source code for DMAKen Sarkies
This has been tested with some dac, timer and (as yet uncommitted) adc examples.
2012-10-31Merge pull request #22 fixing usb and f4 alignment issuesPiotr Esden-Tempski
Merge remote-tracking branch 'jdk/master' Conflicts: lib/stm32/f1/Makefile lib/stm32/f4/Makefile
2012-10-30Move timer.c to be common to all stm32 seriesThomas Daede
2012-10-30STM32F4: New adc moduleKen Sarkies
Note adc.h was provided by Matthew Lai but was never merged. adc.c is new.
2012-10-29Merge branch 'generalizations'chrysn
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-22Missing EXTI ports and flag numbers for F4Karl Palsson
(Also missing for forthcoming L1)
2012-10-19remove nvic.o from stm32/f[24]'s explicit listchrysn
this was missed out in 75c216582, see there for details
2012-10-19build common .o files everywhere (fixes issue #29)chrysn
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-18unify scb (system control block)chrysn
these register definitions are common to all cortex mcus. some of the registers might not be implemented everywhere (especially the floating point registers), but defining them does no harm. this modification does not result in any changes in the example binaries.
2012-10-18fix bug resulting from equally named fileschrysn
the local vector.o files shadowed the ../cm3/vector.c from VPATH, resulting in empty reset vectors.
2012-10-18drop two-line vector.c dispatchers in favor of central dispatchchrysn
2012-10-17Merge branch 'master' into generalizationschrysn
Conflicts: lib/lm3s/vector.c -- split out to lm3s/irq.h lib/stm32/f4/vector.c -- put the floating point initialization code into a function like in lpc43xx
2012-10-05Merging pull request #37 Adds hard-float support to stm32f4, with a nice ↵Piotr Esden-Tempski
mandelbrot example Merge remote-tracking branch 'schodet/hard-float'
2012-10-05unified vector table initializationchrysn
the cortex generic interrupts get moved to lib/cm3/vector.c, the platorms' individual irq names, initialization and handler prototypes go to platoform specific irq.h files. as the vector.c file heavily depends on platoform specific headers, it can't be built once-and-for-all in lib/cm3/, so there are inclusion stubs in the various architecture dirs; this might be better solved with Makefile / include path handling. one particular file is lib/lpc43xx/vector.c; that platform's initialization code contains an additional section to copy everything from flash to ram (which probably performs better there). that code still resides in the inclusion stub, and gets mashed in using defines. would need a cleaner implementation together with the Makefile solution. this commit contains some files of the upcoming efm32 branch, from which it was cherry-picked. the .bin files produced from before and after this commit only differ in lpc43xx, where the startup sequence was subtly modified.
2012-10-02Add assert macros to aid in debugging.Tomaz Solc
Adds libopencm3/cm3/assert.h header that provides assertion check macros similar to those provided by the standard C library. Thanks to Nicolas Schodet for help.
2012-09-27Enable floating-point coprocessor on reset.Daniel Serpell
Always enable the floating-point coprocessor with full access on reset, allowing usage of hard-fp toolchains.