Lines Matching refs:usart
30 static void atmel_serial_setbrg_internal(atmel_usart3_t *usart, int id, in atmel_serial_setbrg_internal() argument
43 writel(USART3_BF(CD, divisor), &usart->brgr); in atmel_serial_setbrg_internal()
46 static void atmel_serial_init_internal(atmel_usart3_t *usart) in atmel_serial_init_internal() argument
52 if (!(readl(&usart->csr) & USART3_BIT(TXEMPTY))) in atmel_serial_init_internal()
55 writel(USART3_BIT(RSTRX) | USART3_BIT(RSTTX), &usart->cr); in atmel_serial_init_internal()
58 static void atmel_serial_activate(atmel_usart3_t *usart) in atmel_serial_activate() argument
65 &usart->mr); in atmel_serial_activate()
66 writel(USART3_BIT(RXEN) | USART3_BIT(TXEN), &usart->cr); in atmel_serial_activate()
79 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE; in atmel_serial_init() local
81 atmel_serial_init_internal(usart); in atmel_serial_init()
83 atmel_serial_activate(usart); in atmel_serial_init()
90 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE; in atmel_serial_putc() local
95 while (!(readl(&usart->csr) & USART3_BIT(TXRDY))); in atmel_serial_putc()
96 writel(c, &usart->thr); in atmel_serial_putc()
101 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE; in atmel_serial_getc() local
103 while (!(readl(&usart->csr) & USART3_BIT(RXRDY))) in atmel_serial_getc()
105 return readl(&usart->rhr); in atmel_serial_getc()
110 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE; in atmel_serial_tstc() local
111 return (readl(&usart->csr) & USART3_BIT(RXRDY)) != 0; in atmel_serial_tstc()
143 atmel_usart3_t *usart; member
147 static void _atmel_serial_set_brg(atmel_usart3_t *usart, in _atmel_serial_set_brg() argument
153 writel(USART3_BF(CD, divisor), &usart->brgr); in _atmel_serial_set_brg()
156 void _atmel_serial_init(atmel_usart3_t *usart, in _atmel_serial_init() argument
159 writel(USART3_BIT(RXDIS) | USART3_BIT(TXDIS), &usart->cr); in _atmel_serial_init()
165 USART3_BF(NBSTOP, USART3_NBSTOP_1)), &usart->mr); in _atmel_serial_init()
167 _atmel_serial_set_brg(usart, usart_clk_rate, baudrate); in _atmel_serial_init()
169 writel(USART3_BIT(RSTRX) | USART3_BIT(RSTTX), &usart->cr); in _atmel_serial_init()
170 writel(USART3_BIT(RXEN) | USART3_BIT(TXEN), &usart->cr); in _atmel_serial_init()
177 _atmel_serial_set_brg(priv->usart, priv->usart_clk_rate, baudrate); in atmel_serial_setbrg()
186 if (!(readl(&priv->usart->csr) & USART3_BIT(RXRDY))) in atmel_serial_getc()
189 return readl(&priv->usart->rhr); in atmel_serial_getc()
196 if (!(readl(&priv->usart->csr) & USART3_BIT(TXRDY))) in atmel_serial_putc()
199 writel(ch, &priv->usart->thr); in atmel_serial_putc()
207 uint32_t csr = readl(&priv->usart->csr); in atmel_serial_pending()
264 priv->usart = (atmel_usart3_t *)plat->base_addr; in atmel_serial_probe()
270 _atmel_serial_init(priv->usart, priv->usart_clk_rate, gd->baudrate); in atmel_serial_probe()
306 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_DEBUG_UART_BASE; in _debug_uart_init() local
308 _atmel_serial_init(usart, CONFIG_DEBUG_UART_CLOCK, CONFIG_BAUDRATE); in _debug_uart_init()
313 atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_DEBUG_UART_BASE; in _debug_uart_putc() local
315 while (!(readl(&usart->csr) & USART3_BIT(TXRDY))) in _debug_uart_putc()
318 writel(ch, &usart->thr); in _debug_uart_putc()