| 79 | } |
| 80 | |
| 81 | static int ls1c_uart_getc(struct rt_serial_device *serial) |
| 82 | { |
| 83 | struct rt_uart_ls1c *uart_dev = RT_NULL; |
| 84 | |
| 85 | RT_ASSERT(serial != RT_NULL); |
| 86 | |
| 87 | uart_dev = (struct rt_uart_ls1c *)serial->parent.user_data; |
| 88 | void *uart_base = uart_get_base(uart_dev->UARTx); |
| 89 | |
| 90 | if (LSR_RXRDY & reg_read_8(uart_base + LS1C_UART_LSR_OFFSET)) |
| 91 | { |
| 92 | return reg_read_8(uart_base + LS1C_UART_DAT_OFFSET); |
| 93 | } |
| 94 | |
| 95 | return -1; |
| 96 | } |
| 97 | |
| 98 | /* UART interrupt handler */ |
| 99 | static void uart_irq_handler(int vector, void *param) |
nothing calls this directly
no test coverage detected