aboutsummaryrefslogtreecommitdiff
path: root/lib/stm32/f2
AgeCommit message (Collapse)Author
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()
2012-11-13Proposed deduplication of peripherals, GPIO exampleKen Sarkies
See rambling post on dev list for justification
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-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-31F2 timers are the same as F4 timers, so make the same changes to themThomas Daede
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-18drop two-line vector.c dispatchers in favor of central dispatchchrysn
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-13stm32 F2/F4 gpio_set_af() fixJason Kotzin
2012-09-03Support exceptions on all targetsNicolas Schodet
2012-09-03Use a specific symbol for data source address in flashNicolas Schodet
That way, data source address does not depend on any other unrelated change in linker script. This also fixes cases when .data input section is aligned on 8 bytes. The new version does not provide any address for the output section so that it is aligned to the strictest input section. The _data_loadaddr symbol will always take this alignment into account.
2012-09-03Clean up and make linker scripts more uniformNicolas Schodet
This includes: - fix some comments indent, - add entry point, - align exported symbols, - remove unneeded "." assignments.
2012-08-13Changed local build target for library and linker files.Piotr Esden-Tempski
- The library files are now being built into the lib subdirectory of the source. - The linker files for each library are being copied into the lib source subdirectory. Motivation: The relative locations of files in the source directory after make are now the same as after make install now. This makes it easier to reuse examples with their makefiles outside of the libopencm3 sourcecode directory.
2012-05-31Use ODR instead of IDR to toggle an output GPIONicolas Schodet
IDR represents the level on pin input while ODR is the value requested by the programmer. This makes a difference for example when using the output as open drain.
2012-05-25Mark reg32 variables as used. So that the compiler does not complain.Piotr Esden-Tempski
2012-04-25Fixed the linker scripts to be the way Tomaz Solc proposed.Piotr Esden-Tempski
Something went wrong when cherrypicking his commits in the pull request. Sorry about that. :(
2012-04-24Removed the load address statement from the .bss section.Piotr Esden-Tempski
Otherwise the linker will complain: "section has both a load address and a load region"
2012-04-24Support for exception handling in linker scripts.Tomaz Solc
This is needed even in plain C when 64 bit variable (e.g. long long int) arithmetic is used. For example it is required when newlib is compiled with --enable-newlib-io-long-long. Conflicts: lib/stm32/f1/libopencm3_stm32f1.ld lib/stm32/f2/libopencm3_stm32f2.ld
2012-04-07Corrected parameters of timer_set_mode() to u32.Gareth McMullin
2012-03-18Added basic exception handling to the stm32 linker scripts. Thanks Mike Smith!Piotr Esden-Tempski
2012-03-02Some additional LGPL3+ license change cleanups.Piotr Esden-Tempski
Changed the license to LGPL3+ for some makefiles that got ommited in the previous big patch commit. Corrected a find and replace error in a linker file.
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-12Linker scripts provide stack pointer at the top of RAM.Gareth McMullin
Thanks to Tomaz Solc.
2012-02-11Added the entry point definiton to all stm32 linker scripts. This allows gdb ↵Piotr Esden-Tempski
to reset the target correctly on exit.
2012-02-06More coding-style and cosmetic fixes.Uwe Hermann
2012-02-06Fix nasty bug with GPIO alternate function setup on F2/F4 (sorry guys).Fergus Noble
2012-02-06Discard .ARM.exidx section to make newlib 64bit (long long) printf support ↵Fergus Noble
work. This may need to be fixed if using C++.
2012-02-06Fixing small bug/typo in F2 rcc code.Fergus Noble
2011-11-16Added UART4 and UART5 gpio definitions for stm32f1. Also corrected the ↵Piotr Esden-Tempski
naming everywhere. Both peripherals are UARTS not U_S_ARTS.
2011-11-17lib: More small fixes.Uwe Hermann
2011-11-17lib/stm32/f2: Coding-style fixes.Uwe Hermann
2011-11-12Fixed loading of .data in linker scripts.Gareth McMullin
This fixes a problem where the linker included some padding bytes between the end of the .text section (_etext) and the start of the .data section. The C runtime copies from _etext, so all static initialised data was corrupted. This change forces the .data section to be written at _etext to avoid this problem.
2011-11-07Fix alignment issue in data sectionStephen Caudle
2011-11-02Add timer support for STM32F2 & STM32F4Stephen Caudle
2011-11-02Fix APB1 & APB2 frequencies in STM32F4 RCC tableStephen Caudle
2011-10-31Add generic STM32F2 RCC clock functionStephen Caudle
2011-10-30Fix stm32f2 RCC PLL values for 120MHzStephen Caudle