All of lore.kernel.org
 help / color / mirror / Atom feed
From: Grant Edwards <grante@visi.com>
To: linux-serial@vger.kernel.org
Subject: Re: Enabling auto RS485 half-duplex control
Date: Thu, 18 Dec 2008 15:51:36 +0000 (UTC)	[thread overview]
Message-ID: <gidri8$7i6$1@ger.gmane.org> (raw)
In-Reply-To: 20081218033200.GB9871@mit.edu

On 2008-12-18, Theodore Tso <tytso@mit.edu> wrote:
> On Wed, Dec 17, 2008 at 10:24:13PM +0100, Matthias Fuchs wrote:
>> Hi,
>> 
>> some Exar UARTs like the XR16C2850 support a feature
>> called auto RS485 half-duplex control. In this mode the
>> RTS line has a special role when using the UART for 
>> RS485 communication.
>
> So I haven't maintained the serial driver for a long time, but
> when I did, I refused to try to implement hardware half-duplex
> control because there was absolutely no standards in this
> space. Which RS-232 lines are involved wasn't standardized,

Yes there are.  The standard is that RTS is asserted when one
whishes to transmit (and de-asserted when one has finished
transmitting). Optionally, one waits for CTS to be asserted
before transmitting.  Isn't that the definition of RTS and CTS
that's in the standard?

> and there was often very strange timing restrictions as well.
> Some devices required there to be a minimum delay of XX
> milliseconds between when RTS is raised and when DTR is
> raised.  Other devices have a maximum time between when one
> side raises RTS and the others side raises DTR.

I've been doing half-duplex stuff for 30 years, and I've never
seen DTR used in half-duplex flow control.

> So the challenge is designing an interface for half-duplex
> which is sufficiently general that it will actually work for
> all/most of the half-dozen people in the world who still care
> about half-ruplex RS-232 communications.  :-)

-- 
Grant Edwards                   grante             Yow! I'm in direct contact
                                  at               with many advanced fun
                               visi.com            CONCEPTS.


  parent reply	other threads:[~2008-12-18 15:51 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-17 21:24 Enabling auto RS485 half-duplex control Matthias Fuchs
2008-12-18  3:32 ` Theodore Tso
2008-12-18  5:59   ` Matthias Fuchs
2008-12-18 15:51   ` Grant Edwards [this message]
2008-12-19  4:10     ` Theodore Tso
2008-12-18  9:35 ` Wolfram Sang
2008-12-18 23:42   ` Matthias Fuchs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='gidri8$7i6$1@ger.gmane.org' \
    --to=grante@visi.com \
    --cc=linux-serial@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.