[PATCH] amba-pl011: support hardware flow control
Russell King - ARM Linux
linux at arm.linux.org.uk
Wed Feb 10 03:30:12 EST 2010
On Wed, Feb 10, 2010 at 01:16:37AM +0000, Jamie Lokier wrote:
> Russell King - ARM Linux wrote:
> > This means that when the kernel's buffers fill up, the kernel calls
> > down to the serial core layer to throttle the input. This then
> > calls into the set_mctrl function to de-assert RTS. However, because
> > the hardware ignores the requested software state, the RTS signal
> > is not de-asserted, and the remote end continues sending data.
> >
> > So, enabling hardware auto-RTS is bad news - you will lose data if
> > the application stops reading data.
>
> Surely the driver can just stop reading from the UART when the
> kernel's buffers are full and hardware-RTS is enabled. Then the
> hardware will deassert RTS itself.
I'll let you work out how to implement that.
More information about the linux-arm-kernel
mailing list