From: Grant Edwards <grant.b.edwards@gmail.com>
To: linux-serial@vger.kernel.org
Subject: Re: New serial card development
Date: Tue, 23 Oct 2012 18:06:57 +0000 (UTC) [thread overview]
Message-ID: <k66mc1$cml$1@ger.gmane.org> (raw)
In-Reply-To: CAJp1Oe6ekkaZ29iwJ91VXwM_CSL6Z0_KEaqVQTa1XMzTB5niEQ@mail.gmail.com
On 2012-10-23, Matt Schulte <matts@commtech-fastcom.com> wrote:
> On Fri, Oct 19, 2012 at 4:21 PM, Theodore Ts'o <tytso@mit.edu> wrote:
>> On Wed, Oct 17, 2012 at 03:24:06PM -0500, Matt Schulte wrote:
>>>
>>> What I would need to have happen is for a flag to be set that says
>>> "enable 9-bit mode transmit" or something. When set, the first byte
>>> of data of a given write will go out with mark parity, then the rest
>>> of the bytes will have space parity. The one byte with mark is the
>>> address byte.
>
>> Why not just have a userspace library routine which simply uses
>> tcgetattr/tcsetattr to toggle a bit (probably a new bit in c_cflag) in
>> struct termios, issue the single byte write, and then toggle the bit
>> back?
Can it be guaranteed that it's going to be fast enough at high
baud-rates to prevent any gap between the first byte and subsequent
bytes?
>> In Linux, system calls are fast, so using some extra ioctl's to toggle
>> the termios structure is probably the way to go. It's also much more
>> general since it doesn't presume a very specific protocol (i.e., your
>> magic multi-drop protocol).
>
> Also this isn't a magic protocol, it is a very old protocol that is
> apparently still in use today because I have several customers still
> asking for it.
It's been pretty much a standard in the microctroller world for a
_long_ time. I remember 9-bit HW support with special interrupt on
the "address" byte from almost 30 years ago: when I first worked with
the Intel 8051 in 1983, it had 9-bit support in it's UART (and we used
it).
I now work for a company that has manufactured PC serial boards for
25+ years, and we still get regular requests for that feature (and our
boards do support it -- though our Linux driver does not).
--
Grant Edwards grant.b.edwards Yow! I guess you guys got
at BIG MUSCLES from doing too
gmail.com much STUDYING!
next prev parent reply other threads:[~2012-10-23 18:07 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-09 18:43 New serial card development Matt Schulte
2012-10-14 9:37 ` Theodore Ts'o
2012-10-15 19:08 ` Matt Schulte
2012-10-15 23:26 ` Alan Cox
2012-10-16 2:32 ` Theodore Ts'o
2012-10-17 20:24 ` Matt Schulte
2012-10-19 21:21 ` Theodore Ts'o
2012-10-23 16:27 ` Matt Schulte
2012-10-23 16:31 ` Matt Schulte
2012-10-23 18:38 ` Greg KH
2012-10-29 20:04 ` Matt Schulte
2012-10-31 21:55 ` Matt Schulte
2012-11-01 22:03 ` Matt Schulte
2012-11-01 22:26 ` Alan Cox
2012-11-02 18:47 ` Matt Schulte
2012-11-02 20:21 ` Alan Cox
2012-10-23 18:06 ` Grant Edwards [this message]
2012-10-23 18:26 ` Alan Cox
2012-10-23 18:45 ` Grant Edwards
2012-10-23 19:16 ` Greg KH
2012-10-23 19:42 ` Grant Edwards
2012-10-23 20:10 ` Greg KH
2012-10-23 19:24 ` Alan Cox
2012-10-23 19:48 ` Grant Edwards
2012-10-23 20:31 ` Theodore Ts'o
2012-10-23 20:41 ` Grant Edwards
[not found] ` <CAJp1Oe6k7NWqdbYkJnd787JiT55-wSbG+tX1tP7Cy-oPShdVaA@mail.gmail.com>
2012-10-17 20:23 ` Matt Schulte
2012-10-17 21:53 ` Alan Cox
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='k66mc1$cml$1@ger.gmane.org' \
--to=grant.b.edwards@gmail.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.