/* Write a char to the Tx buffer */ void serial_putc(char c) { while ((xdfuart_readl(SR) & XZYNQUART_SR_TXFULL) != 0) ; if (c == '\n') { xdfuart_writel(FIFO,'\r'); while ((xdfuart_readl(SR) & XZYNQUART_SR_TXFULL) != 0) ; } xdfuart_writel(FIFO,c); }
/* Test character presence in Rx buffer */ int serial_tstc(void) { /* add by star-star */ if (test_bootdelay) printf("***actual serial_tstc function \n"); /* UART_BASE + XZYNQUART_SR_OFFSET */ return (xdfuart_readl(SR) & XZYNQUART_SR_RXEMPTY) == 0; }
/* Get a char from Rx buffer */ int serial_getc(void) { while (!serial_tstc()); return xdfuart_readl(FIFO); }
/* Test character presence in Rx buffer */ int serial_tstc(void) { return (xdfuart_readl(SR) & XZYNQUART_SR_RXEMPTY) == 0; }