9
0
Fork 0

omap_uart: add low level port serial initialization

some sort of UART setup has to be done in order to use PUTC_LL

Signed-off-by: Vicente Bergas <vicencb@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Vicente Bergas 2013-03-10 00:19:37 +01:00 committed by Sascha Hauer
parent 6dbb0383d0
commit c9f6ceb59e
1 changed files with 21 additions and 0 deletions

View File

@ -41,9 +41,30 @@
#endif
#define LSR_THRE 0x20 /* Xmit holding register empty */
#define LCR_BKSE 0x80 /* Bank select enable */
#define LSR (5 << 2)
#define THR (0 << 2)
#define DLL (0 << 2)
#define IER (1 << 2)
#define DLM (1 << 2)
#define FCR (2 << 2)
#define LCR (3 << 2)
#define MCR (4 << 2)
#define MDR (8 << 2)
static inline void INIT_LL(void)
{
writeb(0x00, UART_BASE + LCR);
writeb(0x00, UART_BASE + IER);
writeb(0x07, UART_BASE + MDR);
writeb(LCR_BKSE, UART_BASE + LCR);
writeb(26, UART_BASE + DLL); /* 115200 */
writeb(0, UART_BASE + DLM);
writeb(0x03, UART_BASE + LCR);
writeb(0x03, UART_BASE + MCR);
writeb(0x07, UART_BASE + FCR);
writeb(0x00, UART_BASE + MDR);
}
static inline void PUTC_LL(char c)
{
/* Wait until there is space in the FIFO */