Commit Graph

319 Commits

Author SHA1 Message Date
chrysn 9324f00038 enhanced cmsis again for other efm32tg examples 2012-04-29 00:18:03 +02:00
chrysn 4a36d23d8c more irq/isr translations 2012-04-27 17:00:24 +02:00
chrysn dfbb7912c3 additions to opencmsis to make the clock example run 2012-04-27 15:55:43 +02:00
chrysn c9b074a120 sys tick cmsis interface for blink example 2012-04-27 15:21:59 +02:00
chrysn 286af7f26e new requirements form emlib and -examples 2012-04-27 14:10:29 +02:00
chrysn 8359caff3b moved core_cm3.h to more general location 2012-04-22 22:07:01 +02:00
chrysn 09fea0bc1b Merge branch 'master' into efm32
Conflicts:
	Makefile
2012-04-19 17:28:55 +02:00
chrysn 0e62b15125 added lcd example
the way text is generated is currently rather awkward, looking for a
better solution.
2012-04-04 19:59:47 +02:00
Taylor Vesely 66c5f91a87 Implemented gpio_clear() for LPC17xx. 2012-03-27 16:42:36 -06:00
Taylor Vesely bf2b8aad2f Added a bunch of register definitions and gpio_set() to LPC17xx gpio. 2012-03-26 16:43:43 -06:00
Taylor Vesely 9eb77c9fd7 Wrote miniblink.c for Blueboard-LPC1768-H, cleaned up gpio.h. 2012-03-22 16:22:22 -07:00
Taylor Vesely 82f89c414a Started to set up GPIO registers. 2012-03-22 16:22:21 -07:00
Taylor Vesely cec41eb0c4 Filled in the APB0 memory map for the lpc17xx. Also set values for the
GPIO on AHB.
2012-03-22 16:22:21 -07:00
Taylor Vesely 60788fd9d2 Started porting to LPC17xx. Created file stubs and started conversion. 2012-03-22 16:22:21 -07:00
Daniel O'Connor 404353b1aa - Add FSMC helper macros. IMO FSMC_BTR_ACCMOD aren't much use, but I left them in case someone uses them.
- FSMC_BASE is already in memorymap.h so don't define it here.
2012-03-22 15:43:07 -07:00
Daniel O'Connor 5a463f03e1 Cast PERIPH_BASE to unsigned otherwise certain operations result in build problems (overflow signed type). 2012-03-22 15:41:43 -07:00
Daniel O'Connor f76e99c98d Add mask for SWJ bits.
(These are write only)
2012-03-22 15:41:19 -07:00
Fergus Noble a30fc96c59 Revert "Fix setting alternate port functions on the STM32F2."
This was also fixed in ac29b654a9 in a
different way. I think the mask definition should be left with 1s
indicating the bits of interest.

See also 87ea496ca7.

This reverts commit 2433f17e73.
2012-03-21 20:19:36 -07:00
Fergus Noble 87ea496ca7 Revert "Fix setting alternate port functions on the STM32F4."
This was also fixed in ac29b654a9 in a
different way. I think the mask definition should be left with 1s
indicating the bits of interest.

This reverts commit e11185d47d.
2012-03-21 20:16:10 -07:00
Piotr Esden-Tempski ec34e21ead Changed parameter size for trigger enable. 2012-03-19 20:20:05 -07:00
Piotr Esden-Tempski 451a5e227d Started some cleanup in the ADC headers and convenience code. 2012-03-19 17:38:24 -07:00
Piotr Esden-Tempski 4e26104c18 Fixed position of PSIZE bits, thanks to Patrick for spotting this. 2012-03-17 16:17:40 -07:00
Piotr Esden-Tempski aaa0158221 Fixed operation order for dma bit calculations. 2012-03-13 12:18:28 -07:00
chrysn da4567a035 efm32: registers for leds 2012-03-04 22:48:13 +01:00
chrysn 692817059c various enhancements for header generation
* don't reference sections that don't exist (typically happens for
  registers that don't contain any fields and are interpreted
  numerically.

* allow templates to use override_backref for surpressing the list of
  registers that use it

* print doc for fields even when it uses values or only exports a mask

* allow fields to define their own mask; those fields have to define
  their values explicitly too, and don't have to provide a shift

* don't print a "No values defined for the field" lines, as there's
  always a mask in that case by now.
2012-03-04 22:43:52 +01:00
chrysn c2fdd6e751 header file generation learned register templates
registers that have the same structure can now use shared value
definitions. the abstraction is kept active through the header
generation; that is, no cartesian product code is generated.
2012-03-04 19:45:13 +01:00
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] 43561de329
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