aboutsummaryrefslogtreecommitdiff
path: root/include/libopencm3/stm32/f4
AgeCommit message (Collapse)Author
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-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-25fix stm32f4 sdio base adressalexn
2013-02-18Merge pull request #92 "DMA tidyup"Piotr Esden-Tempski
Merge remote-tracking branch 'karlp/dma_tidy'
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-02-18Merge pull request #79 "More L1 support (and f2/f4 rtc)"Piotr Esden-Tempski
Merge remote-tracking branch 'karlp/pr_more_l1_rtc'
2013-02-15Fixes #93 copypasta error in RCC_CSR_BORRSTF definition.Piotr Esden-Tempski
2013-02-06[stm32] Use common memorymap include for consistencyKarl Palsson
Most peripheral headers simply include <libopencm3/stm32/memorymap.h> which, like the rest of libopencm3 requires the correct compiler define flag to be set. A few peripherals were directly including the platform include, libopencm3/stm32/xx/memorymap.h, and in some of those cases it wasn't even correctly including the correct platform. (Likely the result of copy/paste errors) These direct includes have been eliminated
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-08Minor cleanup to use dispatch memorymap.hKen Sarkies
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-06Merge pull request #73 RNGPiotr Esden-Tempski
Merge remote-tracking branch 'oojah/master'
2013-01-06Merging pull request #64 Various changesPiotr Esden-Tempski
Merge remote-tracking branch 'bgamari/master'
2012-12-12STM32: Move RNG to common area and add support for the F2.Roger Light
2012-12-12Update STM32 RNGEN register bit name to more closely match documentation.Roger Light
2012-11-14stm32/f4/memorymap.h: Fix ADC offsetsBen Gamari
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 DMA_ISR_OFFSET definitionBen Gamari
2012-11-07Enable nvic and exti support for L1Karl Palsson
And include an example that uses it.
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-30STM32F4: New adc moduleKen Sarkies
Note adc.h was provided by Matthew Lai but was never merged. adc.c is new.
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-18switch all interrupt lists to yaml formatchrysn
2012-10-18add irq cound to existing nvic.h fileschrysn
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 #28 Random number generator defenition and example.Piotr Esden-Tempski
Merge remote-tracking branch 'tiltit/master'
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-09-27Add all SCB registers mentioned in ARM DDI 0403D manual.Daniel Serpell
See table B3-4 and B3-5 for the definitions and B3-24 for the bit assignments of SBC_CPACR.
2012-09-15Setup to document entire project using doxygen.Ken Sarkies
New doc directory with config files and generated html, LaTeX/pdf. Makefile provided for autogeneration and explanatory README. The project structure is hostile to doxygen, which can't cope with functions of the same name. Doxygen is run for each family separately, and separately for LaTeX generation. Customized layout files sort of "integrate" HTML, and separate pdfs are generated for each family. Not ideal but seems the best solution until doxygen changes, if at all.
2012-09-07Random number generator register definitions.Oliver Dille
2012-09-02Add C linkage declaration for C++ usageNicolas Schodet
2012-03-21Revert "Fix setting alternate port functions on the STM32F4."Fergus Noble
This was also fixed in ac29b654a992a4855626fc0b92874d3847914f85 in a different way. I think the mask definition should be left with 1s indicating the bits of interest. This reverts commit e11185d47d0a2fea6d2782761edd5fd489541512.
2012-03-02License change of the library to LGPL, version 3 or later.Piotr Esden-Tempski
Agreed to by all the significant contributors to the library.
2012-02-24Added set priority group convenience function.Piotr Esden-Tempski
2012-02-24Updated SCB_AIRCR_PRIGROUP bit definitions to be more consistent with the ↵Piotr Esden-Tempski
style the library.
2012-02-12Fix setting alternate port functions on the STM32F4.Gareth McMullin
Thanks to Ricardo Martins.