lm4f: Add UART register definitions

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Add UART function prototypes

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Add UART "convenience" macros

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Add basic UART implementation

Add basic functionality needed to setup the UART and send/recieve
data.
Interrupts, DMA, and more advanced features are not implemented in
this patch.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Add basic UART echo example

Nothing fancy, just a demonstration of the blocking send and
recieve.

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Use typedef's enum for UART parameters

typedef the enums used for the uart.
For example, change
enum uart_flowctl {
	UART_FLOWCTL_NONE,
	UART_FLOWCTL_SOFT,
	UART_FLOWCTL_HARD,
};

to:
typedef enum  {
	UART_FLOWCTL_NONE,
	UART_FLOWCTL_SOFT,
	UART_FLOWCTL_HARD,
} uart_flowctl_t;

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Modify uart example to use new clock API

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Fix UART bit definitions

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Implement UART Rx and Tx interrupt enable/disable

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
lm4f: Add USB register definitions

Signed-off-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>