aboutsummaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2012-10-31STM32F1 Addition to DMA to add interrupt flag read and clear.Ken Sarkies
Additional macros and defines added to header for the purpose. Also disable of increment modes (seem to have been omitted originally).
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-29Merge branch 'efm32'chrysn
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-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-21Added irq.yaml to lpc_13xx and lpc_17xx familiesSilvio Gissi
2012-10-19remove common modules from efm32*'s explicit build listchrysn
this is 75c216582 for the efm32 branch, see there for details
2012-10-19Merge branch 'generalizations' into efm32chrysn
2012-10-19remove nvic.o from stm32/f[24]'s explicit listchrysn
this was missed out in 75c216582, see there for details
2012-10-19completing dispatchchrysn
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-19define platform specific constants for all chipschrysn
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-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-19add generic OBJS to efm32 librarieschrysn
better fixes would be adding them to the generic (included) Makefile or building the really device independent stuff in a _generic library
2012-10-19build vector.o on lpc13xxchrysn
no idea how this ever worked...
2012-10-19copied over linker scriptschrysn
this will need some generalization too...
2012-10-19build all efm32 familieschrysn
2012-10-19added irqs for the rest of the efm32 deviceschrysn
2012-10-19rename tinygecko->efm32tg everywherechrysn
2012-10-19renamed linker file to work with included makefilechrysn
2012-10-19change discriminator in efm32 series from TINYGECKO to EFM32TGchrysn
2012-10-19pulling in a simplification in per-arch makefileschrysn
2012-10-18Merge branch 'generalizations' into efm32chrysn
2012-10-18unified systick handlingchrysn
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-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-18remove files not required in generalizations branch any morechrysn
2012-10-18Merge branch 'generalizations' into efm32chrysn
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-18Merge branch 'generalizations' into efm32chrysn
Conflicts: Makefile
2012-10-18integrate irq2nvic_h script in buildprocesschrysn
2012-10-18split irq.yaml output in nvic.h and vector_nvic.hchrysn
the weak pragmas need to be used in the very compilation unit where their target is defined, requiring another dispatch
2012-10-18drop two-line vector.c dispatchers in favor of central dispatchchrysn
2012-10-18unified nvic.cchrysn
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-16Initial documentation for SPI, I2C and CRCKen Sarkies
(no code changes)
2012-10-16Additional stm32/usart.c functions to enable/disable Rx/TxKen Sarkies
interrupts, return a status flag and check for interrupt source.
2012-10-16Initial documentation for stm32/usart.c, usart.hKen Sarkies
Some minor documentation corrections to timer.h
2012-10-16stm32f1:Ken Sarkies
Add object files to Makefile to include new modules into lib. Correct typo in pwr.c Add two new functions to timer.c to preset the counter (for use with deadman style timeouts) and to identify an interrupt source. Also noticed lib/makefile.include didn't clean lib/stm32, which isn't a target. Added a fix.
2012-10-08add _end and __end symbols for compatibility with code written against ↵Thomas W. Barr
CodeSourcery linkers
2012-10-08complete peripheral handlers in vector tableThomas W. Barr
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-05Doc changes to go with previous commitKen Sarkies
2012-10-05Code changes to stm32f1 adc.c and adc.hKen Sarkies
remove rcc_set_adc_clk - use rcc version Added functions: - adc_power_on - adc_start_conversion_direct - adc_set_dual_mode - adc_eoc - adc_eoc_injected - adc_read_regular - adc_read_injected - adc_set_injected_offset Tested dual mode scanned regular, but no tests of injected yet. Changes: "discontinuous" was misspelled. - adc_set_discontinuous_mode_regular - added "length" parameter - adc_disable_discontinuous_mode_regular - name change - adc_enable_discontinuous_mode_injected - name change - adc_enable_automatic_injected_group_conversion - disable triggers - adc_enable_jeoc_interrupt - name change to match common usage in lib - adc_disable_jeoc_interrupt - ditto - adc_enable_external_trigger_regular - remove incorrect test on parameter - adc_enable_external_trigger_injected - ditto - adc_set_sample_time - name change to match function's purpose - adc_set_conversion_time_on_all_channels - ditto - adc_set_injected_sequence - changed order of register loading (ref Barlow's issue) - adc_enable_analog_watchdog_on_all_channels - flipped AWDSGL - adc_enable_analog_watchdog_on_selected_channel - ditto added aliases for expected commonly used functions to avoid sudden user code breakage In adc.h, corrected errors in SQR names added "deprecated" compiler warnings to adc_on and to aliases defined in adc.c
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-02use _data_loadaddr instead of _etextchrysn
this change was done in master in [1] and just merged here. [1] 74cd991e7e8972cf22933743c847b5ce2b165798
2012-10-02add back minimal support librarieschrysn
some of the libraries removed in [1] were essential to building anything on efm32 (especially, irq.h). [1] 4a6f4c0f7d62858a4a9afba18f11289cb0bb8358
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.
2012-09-27Compile stm32-f4 library with floating point support.Daniel Serpell
This enables hard-float in the compilation of library and examples for the stm32f40* chips.
2012-09-15remove the support libraries for efm32chrysn
i don't plan to extend or support them, and they'll just grow stale
2012-09-13Merge branch 'master' into efm32chrysn
Conflicts: Doxyfile Makefile