deprecation macro (closes #48)
lm4f: Add API for enabling/disabling peripherals clock source

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>
lm4f: Add API for controlling the system run clock sources

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
lm4f: Make miniblink example more readable, by defining RGB pins

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>
lm4f: Update miniblink example to demonstrate clock API

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>
Remove assembly forcing stack.

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.
[examples f1] ADC+DAC very basic example

Just shows some basic working examples of using the DAC with the ADC. No
special features, but very little hardware required to demonstrate.
[l1] fix whitespace and missing license info

Earlier additions to the L1 support were not correctly using linux
coding guidelines as specified in /HACKING.

Some examples were also missing license information.
[l1] PWR: fix style for common code

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.
[l1] Update to newest ref man definitions

Support for the Medium+ and High density parts, mostly by way of extra
irqs and register definitions.
[l1] rcc: support MSI clocking

Some new definitions and helpers.  Main change really that the list of
preconfigured clock configs is no longer restricted to HSI/PLL
[stm32] Support the "new" BCD style RTC peripheral

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.
Add examples making use of the RTC

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.
[flash] l1: use "proper" bit definition naming.

Part 1 of 4: updated l1 to use flash_<reg>_bit instead of just flash_bit
[flash] f1: use "proper" bit definition naming.

Part 2 of 4: updated f1 to use flash_<reg>_bit instead of just
flash_bit
[flash] f2: use "proper" bit definition naming.

Part 3 of 4: updated f2 to use flash_<reg>_bit instead of just
flash_bit
[flash] f4: use "proper" bit definition naming.

Part 4 of 4: updated f4 to use flash_<reg>_bit instead of just
flash_bit
Add notes on build prerequisites
Fix logical operator error in tim_ic_set_input reported by hmjack2008
[stm32-dma] Eliminate redundant write.

Clearing a single bit in DMA_CCR, then immediately writing a 0 over the
entire register is completely redundant on the F1, F3 and L1 DMA
peripherals.  (Unlike the F2 & F4 DMA Peripheral, where this is
required)