From: Maarten Brock <m.brock@vanmierlo.com>
To: Lukas Wunner <lukas@wunner.de>
Cc: Heiko Stuebner <heiko@sntech.de>,
gregkh@linuxfoundation.org, jslaby@suse.com,
andriy.shevchenko@linux.intel.com, matwey.kornilov@gmail.com,
linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
christoph.muellner@theobroma-systems.com,
giulio.benetti@micronovasrl.com,
Heiko Stuebner <heiko.stuebner@theobroma-systems.com>,
linux-serial-owner@vger.kernel.org
Subject: Re: [PATCH v2 4/7] serial: 8250: Handle implementations not having TEMT interrupt using em485
Date: Tue, 05 May 2020 18:38:54 +0200 [thread overview]
Message-ID: <523d8e3fa0215f34532b7990a31b0c17@vanmierlo.com> (raw)
In-Reply-To: <20200502134927.6sb7f3na3ff3rpoa@wunner.de>
On 2020-05-02 15:49, Lukas Wunner wrote:
> On Thu, Mar 26, 2020 at 12:14:19AM +0100, Heiko Stuebner wrote:
>> Some 8250 ports have a TEMT interrupt but it's not a part of the 8250
>> standard, instead only available on some implementations.
>>
>> The current em485 implementation does not work on ports without it.
>> The only chance to make it work is to loop-read on LSR register.
>>
>> So add UART_CAP_TEMT to mark 8250 uarts having this interrupt,
>> update all current em485 users with that capability and make
>> the stop_tx function loop-read on uarts not having it.
>
> Just to get a better understanding: According to the
> Dw_apb_uart_db.pdf
> databook I've found, the UART does have a "THR empty" interrupt. So
> you
> get an interrupt once the Transmit Holding Register (and by consequence
> the FIFO) has been drained. Then what do you need a TEMT interrupt
> for?
> Why is the THR interrupt not sufficient?
When the Transmit Holding Register is empty, the Transmitter can still
be
transmitting. And the Driver Enable must be held active during
transmission.
I would even say it needs to held active during transmission of the stop
bit,
but I don't believe there is any uart that has an interrupt flag for
that.
And since the default state for RS485 is '1' anyway it's not that bad.
Maarten
next prev parent reply other threads:[~2020-05-05 16:39 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-25 23:14 [PATCH RFC v2 0/7] serial: 8250: Add rs485 emulation to 8250_dw Heiko Stuebner
2020-03-25 23:14 ` [PATCH DON'T APPLY v2 1/7] serial: Allow uart_get_rs485_mode() to return errno Heiko Stuebner
2020-03-25 23:14 ` [PATCH DON'T APPLY v2 2/7] dt-bindings: serial: Add binding for rs485 bus termination GPIO Heiko Stuebner
2020-03-25 23:14 ` [PATCH DON'T APPLY v2 3/7] serial: 8250: Support " Heiko Stuebner
2020-03-30 14:51 ` Andy Shevchenko
2020-03-25 23:14 ` [PATCH v2 4/7] serial: 8250: Handle implementations not having TEMT interrupt using em485 Heiko Stuebner
2020-03-25 23:47 ` Giulio Benetti
2020-03-26 0:05 ` Heiko Stübner
2020-03-26 2:02 ` Giulio Benetti
2020-05-17 15:04 ` Heiko Stübner
2020-05-17 17:28 ` Giulio Benetti
2020-03-30 14:52 ` Andy Shevchenko
2020-05-02 13:49 ` Lukas Wunner
2020-05-05 16:38 ` Maarten Brock [this message]
2020-05-17 22:01 ` Heiko Stübner
2020-03-25 23:14 ` [PATCH v2 5/7] dt-bindings: serial: Add binding for rs485 receiver enable GPIO Heiko Stuebner
2020-03-30 14:54 ` Andy Shevchenko
2020-05-02 13:51 ` Lukas Wunner
2020-03-25 23:14 ` [PATCH v2 6/7] serial: 8250: Support separate rs485 rx-enable GPIO Heiko Stuebner
2020-03-30 14:56 ` Andy Shevchenko
2020-05-16 20:14 ` Lukas Wunner
2020-03-25 23:14 ` [PATCH v2 7/7] serial: 8250_dw: add em485 support Heiko Stuebner
2020-05-06 15:25 ` Andy Shevchenko
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=523d8e3fa0215f34532b7990a31b0c17@vanmierlo.com \
--to=m.brock@vanmierlo.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=christoph.muellner@theobroma-systems.com \
--cc=giulio.benetti@micronovasrl.com \
--cc=gregkh@linuxfoundation.org \
--cc=heiko.stuebner@theobroma-systems.com \
--cc=heiko@sntech.de \
--cc=jslaby@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial-owner@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=matwey.kornilov@gmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®