minix/kernel/arch/earm/omap_serial.c

23 lines
517 B
C
Raw Normal View History

2012-10-08 03:38:03 +02:00
#include <sys/types.h>
#include <machine/cpu.h>
#include <io.h>
#include "omap_serial.h"
void omap3_ser_putc(char c)
{
int i;
/* Wait until FIFO's empty */
for (i = 0; i < 100000; i++)
if (mmio_read(OMAP3_UART3_LSR) & OMAP3_LSR_THRE)
2012-10-08 03:38:03 +02:00
break;
/* Write character */
mmio_write(OMAP3_UART3_THR, c);
/* And wait again until FIFO's empty to prevent TTY from overwriting */
for (i = 0; i < 100000; i++)
if (mmio_read(OMAP3_UART3_LSR) & (OMAP3_LSR_THRE | OMAP3_LSR_TEMT))
break;
2012-10-08 03:38:03 +02:00
}