aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-01-29Fixing gpio_set_af now really...Piotr Esden-Tempski
2013-01-29Fix gpio_set_af register usage.Piotr Esden-Tempski
2013-01-29Added IRQ USART example for the f4 discovery board.Piotr Esden-Tempski
2013-01-23Add notes on build prerequisitesKarl Palsson
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-23[flash] f2: use "proper" bit definition naming.Karl Palsson
Part 3 of 4: updated f2 to use flash_<reg>_bit instead of just flash_bit
2013-01-23[flash] f1: use "proper" bit definition naming.Karl Palsson
Part 2 of 4: updated f1 to use flash_<reg>_bit instead of just flash_bit
2013-01-23[flash] l1: use "proper" bit definition naming.Karl Palsson
Part 1 of 4: updated l1 to use flash_<reg>_bit instead of just flash_bit
2013-01-23Add examples making use of the RTCKarl Palsson
Add an example using the RTC to help with a lower power design. This is a sister example to the existing "button-irq-printf", which is functionally identical, but uses far less power. There's more tricks that can be done to lower the power even further, but this shows a few of the early steps that can be done, using the RTC wakeup instead of a timer.
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] rcc: support MSI clockingKarl Palsson
Some new definitions and helpers. Main change really that the list of preconfigured clock configs is no longer restricted to HSI/PLL
2013-01-22[l1] Update to newest ref man definitionsKarl Palsson
Support for the Medium+ and High density parts, mostly by way of extra irqs and register definitions.
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-22[l1] fix whitespace and missing license infoKarl Palsson
Earlier additions to the L1 support were not correctly using linux coding guidelines as specified in /HACKING. Some examples were also missing license information.
2013-01-22[examples f1] ADC+DAC very basic exampleKarl Palsson
Just shows some basic working examples of using the DAC with the ADC. No special features, but very little hardware required to demonstrate.
2013-01-16Remove assembly forcing stack.Karl Palsson
Fixes #51 There should be no reason for manually trying to load the stack. Cortex devices can be programmed with only C, and any code that needed this would indicate broken vectors.
2013-01-10efm32gg990f1024: added linker scriptchrysn
2013-01-10platform-independent makefile: fix old "stm32" referencechrysn
the "make clean" target showed a constant "stm32/f1" debug message instead of the current relative directory. this is fixed by showing the relevant portion of the current directory instead, relevant being determined by evaluating the current makefile's relative position and stripping that part off.
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-09Removed dummy character string from examples due to api change in: 7a5da60Piotr Esden-Tempski
2013-01-09lm4f: Update miniblink example to demonstrate clock APIAlexandru Gagniuc
Flashes the Red, Green and Blue diodes on the board, in order. The system clock starts at 80MHz. Pressing SW2 toggles the system clock between 80MHz, 57MHz, 40MHz ,20MHz, and 16MHz by changing the PLL divisor. Pressing SW1 bypasses the PLL completely, and runs off the raw 16MHz clock provided by the external crystal oscillator. The LEDs will toggle at different speeds, depending on the system clock. The system clock changes are handled within the interrupt service routine. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2013-01-09lm4f: Make miniblink example more readable, by defining RGB pinsAlexandru Gagniuc
Instead of setting and clearing RGB pins by PINx constants, define more readable constants such as RGB_RED, and RGB_PORT. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2013-01-09lm4f: Add API for controlling the system run clock sourcesAlexandru Gagniuc
Add an abstraction layer to handle the clock control for the run time clock on LM4F (RCC). Sleep and deep-sleep clock configuration is not handled. Complete documentation for the clock control API is included in doxygen-style comments, and is included in [doc]. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com> Conflicts: lib/lm4f/Makefile
2013-01-09lm4f: Add API for enabling/disabling peripherals clock sourceAlexandru Gagniuc
The enum definitions are specified in the form 31:5 register offset from SYSCTL_BASE for the clock register 4:0 bit offset for the given peripheral The names have the form [clock_type]_[periph_type]_[periph_number] Where clock_type is RCC for run clock SCC for sleep clock DCC for deep-sleep clock Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
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-08Move STM32F1 DMA files to respective common directoriesKen Sarkies
This sets the stage for adding DMA to STM32F3xx (when added) and STM32L1xx as the controller appears to be identical in these.
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-06Marked some dummy variables in examples as unused, so that the newer GCC ↵Piotr Esden-Tempski
stops complaining.
2013-01-06Fixed compilation of all the examples after merging pull requests...Piotr Esden-Tempski
2013-01-06Merging pull request #74 LM4F initial supportPiotr Esden-Tempski
Merge remote-tracking branch 'mrnuke/lm4f_initial'
2013-01-06Merge pull request #73 RNGPiotr Esden-Tempski
Merge remote-tracking branch 'oojah/master'
2013-01-06Merging pull request #69 Add __attribute__ ((naked)) to reset_handler()Piotr Esden-Tempski
Merge remote-tracking branch 'nfbraun/master'
2013-01-06Merging pull request #67 L1 support: flash, power basics, timersPiotr Esden-Tempski
Merge remote-tracking branch 'karlp/pr_l1_flash-rcc-pwr-timers'
2013-01-06Merging pull request #64 Various changesPiotr Esden-Tempski
Merge remote-tracking branch 'bgamari/master'
2013-01-06Merging pull request #63 Improvements to STM32F1 I2C, CAN, RCC, and USB (f107)Piotr Esden-Tempski
Merge remote-tracking branch 'icd/master'
2013-01-01doc: Include LM4F files when creating documentationAlexandru Gagniuc
There was no reference to LM4F in in the doc/ subdirectory. Add the needed infrastructure to generate focumentation for LM4F. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2013-01-01lm4f: Update stellaris example to new LM4F registersAlexandru Gagniuc
The LM4F provides new registers for system control. Each peripheral now has its own clock gating control register. The LM4F still supports the legacy registers for backwards compatibility. Use SYSCTL_RCGCGPIO instead of SYSCTL_RCGC to enable the GPIO. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2013-01-01lm4f: Add system control register definitionsAlexandru Gagniuc
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Compile in the interrupt vector tableAlexandru Gagniuc
Add an "#ifdef(LM4F)" clause to include/libopencm3/dispatch/nvic.h and lib/dispatch/vector_nvic.c. This compiles in the vector table and allows interrupts to be used. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Compile with FPU supportAlexandru Gagniuc
Specify the -mfloat-abi=hard and -mfpu=fpv4-sp-d16 flags so that FPU is enabled by default. While this compiles with FPU support, in order to use the floating point types, the FPU must be explicitly enabled at runtime. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Fix problems with example Makefile.includeAlexandru Gagniuc
Fix three distinct issues were present with examples/lm4f/Makefile.include: 1. Architecture flags were not being passed to the linker. This caused the linker to link against the wrong libraries when trying to use any C library, causing hard faults. 2. -lc and -lnosys were not linked against. Try using printf() without -lnosys 3. The makefile erroneously specified -mcpu=cortex-m3 instead of m4. Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Remove erroneous references to lm3sAlexandru Gagniuc
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Add exammple for Stellaris Launchpad boardAlexandru Gagniuc
Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
2012-12-31lm4f: Add lm4f support files copied from lm3sAlexandru Gagniuc
Create lm4f code infrastructure from the lm3s infrastructure. As far as the interrupt table is concerned, don't create an irq.yaml. Just include the LM3S nvic.h. The LM3S vector table seems to be compatible with the LM4F Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>