Re: 8250.c: Generic support for RTS disabling once shiftreg and fifo is empty. (low latency RS485 etc).

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 27 Apr 2012 08:23:23 +0200
Christian Melki <christian.melki@xxxxxxxxxxxx> wrote:

> Hi.
> 
> I have written a patch for 8250.c that introduces a new ioctl to tell the uart driver to shift disable RTS when uart has been completely emptied.
> This idea is to set the ioctl once the master is finished and wants to shift the bus.
> We needed this to be in the kernel since we have very little time to shift RTS according to the implemented protocol on top of RS485.
> 
> Is there any interest in the community for such a behavior?

We have a set of RS485 ioctls that provide a standard interface for
assisting RS485 handling. The interface should probably use those if
possible.

> The patch is a little ugly right now. It busywaits a maximum amount of time for the shift register to become empty. I don't know how to do it without introducing a latency that is more than our max RTS time shift requirement (50us). I think it could be useful with a generic 8250.c support for this.

We've hit the same hardware limit in a couple of other places where you
end up having to spin on the last byte. I don't think it's a problem
providing it is only triggered when trying to do the RS485 bits with that
feature.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux