Re: Writing a console/tty driver -- how to use tty_port?

From: Timur Tabi
Date: Thu Oct 28 2010 - 17:08:38 EST


Arnd Bergmann wrote:
> If the device is not a UART, the best option may be to make the driver
> a backend to the hvc driver, like e.g. drivers/char/hvc_tile.c.

The current version *is* a backend to hvc, but I have to abandon that because of
this thread:

http://lists.ozlabs.org/pipermail/linuxppc-dev/2010-September/085664.html

I posted a patch that causes hvc to spin if the backend driver returns -EAGAIN,
which is my driver does when the output buffer is full.

In other words, hvc does not support backend drivers that can detect full output
buffers.

> This works for all devices with or without interrupts that don't need
> to set up the communication parameters but simply provide a read/write
> character interface.

If my patch were accepted, I wouldn't need to do the rewrite. Dropping
characters during a printk() is not acceptable for us.

--
Timur Tabi
Linux kernel developer at Freescale

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/