150 Commits

Author SHA1 Message Date
chrysn
e1a660eb9d efm32 cmu: convenience functions
includes a fix for the register definitions (subtle differences between
two fields)
2012-03-04 16:59:20 +01:00
chrysn
61b649370f efm32: generate _MASK constants
constants are generated for all fields that either have named values or
length > 1
2012-03-04 16:57:43 +01:00
chrysn
bc1bff477b efm32: shortened doxygen names and grouped them per chip family 2012-03-04 16:56:48 +01:00
chrysn
d3fe8c18f8 experimental yaml based header file generation
the header file genertion mechanism here is designed to:

* use human readable source data that is better structured and less
  repetitive than the header files themselves

* produce same quality header files than the manual process of writing
  them. some features were not yet enabled to show that the existing
  headers didn't change. (look at emu.h's differences. whitespace
  switched from tabs to spaces as they are easier to handle, use
  --color-words to see the few differences that stemmed from
  inconsistencies in the original file.)

* be less tedious and thus error prone when doing large modifications
  (eg, i forgot to add _MASK to bitfields, would like to enable
  bitbanding acces, and to overhaul the naming in doxygen modules)
2012-03-04 12:49:06 +01:00
chrysn
cdf36e6c8e efm32: some more cmu registers and doxygen update 2012-03-03 20:19:03 +01:00
chrysn
78c93dc779 add missed license headers to efm32 files
some files had nonstandard shared copyright lines, fixed them too
2012-03-03 00:26:55 +01:00
chrysn
4668adcf1f follow the license change to lgpl3 in efm32
this follows the license change of the master branches in [43561de]. all
files whose copyright is not my own are originally based on files whose
license has been changed in master.

the expression used for the conversion was:

sed -i -e 's/This program is free software: you can redistribute/This library is free software: you can redistribute/g' -e 's/under the terms of the GNU General Public License as published/under the terms of the GNU Lesser General Public License as published/' -e 's/This program is distributed in the hope that/This library is distributed in the hope that/g' -e 's/You should have received a copy of the GNU General/You should have received a copy of the GNU Lesser General/' -e 's/along with this program.  If not/along with this library. If not/' -e 's/GNU General Public License for more details/GNU Lesser General Public License for more details/' */**/efm32/**/*(.)

[43561de] 43561de3297b88d68753cb4625d6dc48bfb43d71
2012-03-03 00:21:21 +01:00
chrysn
563586c072 Merge branch 'master' into efm32 2012-03-02 23:59:52 +01:00
Piotr Esden-Tempski
43561de329 License change of the library to LGPL, version 3 or later.
Agreed to by all the significant contributors to the library.
2012-03-02 14:44:49 -08:00
chrysn
e388056fda efm32: energy management unit headers and example 2012-03-02 21:54:23 +01:00
chrysn
eda122180a (efm32: remove todo that couldn't work out) 2012-03-02 21:53:52 +01:00
Piotr Esden-Tempski
994d559a6c Corrected interrupt flag register defines. 2012-02-29 18:00:10 -08:00
Piotr Esden-Tempski
f5cd026ae3 Added dma_channel_reset prototype. 2012-02-29 17:53:46 -08:00
chrysn
541fded753 convenience functions for efm32 gpio
also, the whole gpio header file is now a big doxygen group, structuring
the convenience functions and the register/value definitions
2012-03-01 02:18:22 +01:00
Piotr Esden-Tempski
ec904f176b Cleaned up and streamlined DMA support for f1. Definitely needs a bunch of testing! 2012-02-29 16:02:51 -08:00
chrysn
a747e887bd efm32 tinygecko gpio: implemented all the bit values
along with the actual implementation comes a first attempt to better
structure the doxygen groups. putting all the groups in a bigger one
makes it easier to reference them from the file itself, and makes the
structure clearer on the module page.
2012-02-29 02:32:14 +01:00
Piotr Esden-Tempski
c49f505df4 Added spi reset convenience function. 2012-02-28 11:28:29 -08:00
chrysn
f4376371ec efm32: minor documentation enhancements 2012-02-27 13:24:19 +01:00
chrysn
f6025af859 efm32 tinygecko: defined interrupts
there seems not to be anything family specific about the interrupt
vectors of m3 based efm32 systems, thus renaming vector.h to irq.h
2012-02-27 13:21:40 +01:00
chrysn
be62115f00 efm32: created memory map from all base addresses 2012-02-27 12:01:41 +01:00
chrysn
2275ed7b0c overhauled documentation
includes minor refactoring in example code and modification of how the
generic and the tinygecko specific vector.h go together (bringing it in
line with stm32/f1's memorymap.h)
2012-02-26 03:42:25 +01:00
chrysn
08918902ab made blinking a led on efm32 possible
this includes all register definitions for the gpu and mcu modules, but
not all their bit definitions
2012-02-25 23:22:37 +01:00
chrysn
2180a02e2f first attempt at porting libopencm3 to energymicro
unless sources are explicitly given, the linker scripts and make files
were copied over from the stm32/f1 port.
2012-02-25 23:22:37 +01:00
Piotr Esden-Tempski
2b3f07ee08 Added reset function to i2c convenience functions. 2012-02-24 17:14:50 -08:00
Piotr Esden-Tempski
cbef43ddd8 Added set priority group convenience function. 2012-02-24 16:43:37 -08:00
Piotr Esden-Tempski
c5e5c0fdab Updated SCB_AIRCR_PRIGROUP bit definitions to be more consistent with the style the library. 2012-02-24 16:21:23 -08:00
Piotr Esden-Tempski
bffbb0e54d Added missing gpio definitions for timer 5. 2012-02-13 19:45:28 -08:00
Piotr Esden-Tempski
5a384ff895 Added combined gpio bank definitions to timers as you tend to set those up in bulk. 2012-02-13 16:02:08 -08:00
Piotr Esden-Tempski
b325c81127 Forgot some BANK suffixes. 2012-02-13 13:51:41 -08:00
Piotr Esden-Tempski
d4ea773de4 Added bank definitions to f1 gpio header. 2012-02-13 13:40:49 -08:00
Gareth McMullin
2433f17e73 Fix setting alternate port functions on the STM32F2.
Thanks to Ricardo Martins.
2012-02-12 15:00:09 -08:00
Gareth McMullin
e11185d47d Fix setting alternate port functions on the STM32F4.
Thanks to Ricardo Martins.
2012-02-12 15:00:09 -08:00
Mike Smith
7da1967056 Add an interface for soft disconnection, and hook it up in the F107 driver. 2012-02-12 15:00:08 -08:00
Uwe Hermann
5f82f28d01 f2/dma.h: Whitespace and coding-style fixes. 2012-02-06 23:27:00 +01:00
Fergus Noble
9949b5dcf4 Fixed typo in F2 dma header to match the datasheet. 2012-02-06 23:08:07 +01:00
Fergus Noble
477c410be4 Added functions to enable and disable DMA from stm32 USART. 2012-02-06 23:08:07 +01:00
Fergus Noble
31b0466525 DMA register definitions for F2. 2012-02-06 23:08:06 +01:00
Gareth McMullin
0731bba610 usb: Added support for Interface Association descriptors. 2011-12-28 21:05:41 +13:00
Gareth McMullin
651917aeb4 Added USB example for stm32f4.
Moved clock enable for OTG_FS back into applications.  This and gpio config
are the only differences between f107 and f2xx/f4xx.
2011-12-17 14:11:39 +13:00
Piotr Esden-Tempski
8af809a12a Reverted the api of the usart_set_baudrate function to hide the clock rail selection again. 2011-11-16 18:41:48 -08:00
Piotr Esden-Tempski
679f39426f Cleaned up header inclusion selection macros. 2011-11-16 18:41:48 -08:00
Piotr Esden-Tempski
c6f30043fd Added UART4 and UART5 gpio definitions for stm32f1. Also corrected the naming everywhere. Both peripherals are UARTS not U_S_ARTS. 2011-11-16 18:17:56 -08:00
Uwe Hermann
e626a72561 stm32/dbgmcu.h: Document reserved bits, cosmetic fixes. 2011-11-11 21:51:01 +01:00
Uwe Hermann
6967a02576 stm32/iwdg.h: Document reserved bits. 2011-11-11 21:50:18 +01:00
Uwe Hermann
581084dd39 stm32/pwr.h: Document reserved bits. 2011-11-11 21:49:10 +01:00
Uwe Hermann
1d592c1627 stm32/wwdg.h: Document reserved bits, add WWDG_CFG_W. 2011-11-11 21:48:35 +01:00
Uwe Hermann
45581dc220 stm32/fsmc.h: Document reserved bits. 2011-11-11 21:48:06 +01:00
Uwe Hermann
e4dc82879e stm32/fsmc.h: s/FSMC_PMEM_MEMHOLDX/FSMC_PMEM_MEMWAITX/.
This was a copy-paste error.
2011-11-11 21:46:41 +01:00
Uwe Hermann
b874da24f2 stm32/f4/pwr.h: Document reserved bits. 2011-11-11 21:44:11 +01:00
Uwe Hermann
b05eff8dbf stm32/f2/pwr.h: Document reserved bits. 2011-11-11 21:43:41 +01:00