<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/uart/uart_dev_ns8250.c, branch upstream/11.1.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>MFC r317659, r317752:</title>
<updated>2017-05-16T00:21:03+00:00</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2017-05-16T00:21:03+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=32b80f1a3c7908b0046ec722e75369a56ada3413'/>
<id>32b80f1a3c7908b0046ec722e75369a56ada3413</id>
<content type='text'>
Make some UART consoles to not spin wait for data to be sent.

At least with Tx FIFO enabled it shows me ~10% reduction of verbose boot
time with serial console at 115200 baud.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make some UART consoles to not spin wait for data to be sent.

At least with Tx FIFO enabled it shows me ~10% reduction of verbose boot
time with serial console at 115200 baud.
</pre>
</div>
</content>
</entry>
<entry>
<title>sys/dev: minor spelling fixes.</title>
<updated>2016-05-03T03:41:25+00:00</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2016-05-03T03:41:25+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=453130d9bfc1c6d68b366dfcb041689d69f81295'/>
<id>453130d9bfc1c6d68b366dfcb041689d69f81295</id>
<content type='text'>
Most affect comments, very few have user-visible effects.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most affect comments, very few have user-visible effects.
</pre>
</div>
</content>
</entry>
<entry>
<title>Move support for Synopsys Designware APB UART out of ns8250 and into a</title>
<updated>2016-04-01T20:26:45+00:00</updated>
<author>
<name>Jared McNeill</name>
<email>jmcneill@FreeBSD.org</email>
</author>
<published>2016-04-01T20:26:45+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b738dafd90d397e01f55859444293fbb3115f684'/>
<id>b738dafd90d397e01f55859444293fbb3115f684</id>
<content type='text'>
separate driver. Add support for activating clock and hwreset resources
for these devices when the EXT_RESOURCES option is present.

Reviewed by:		andrew, mmel, Emmanuel Vadot &lt;manu@bidouilliste.com&gt;
Approved by:		adrian (mentor)
Differential Revision:	https://reviews.freebsd.org/D5749
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
separate driver. Add support for activating clock and hwreset resources
for these devices when the EXT_RESOURCES option is present.

Reviewed by:		andrew, mmel, Emmanuel Vadot &lt;manu@bidouilliste.com&gt;
Approved by:		adrian (mentor)
Differential Revision:	https://reviews.freebsd.org/D5749
</pre>
</div>
</content>
</entry>
<entry>
<title>Add ns16550a compatible string in UART 8250 driver</title>
<updated>2016-02-26T08:43:36+00:00</updated>
<author>
<name>Wojciech Macek</name>
<email>wma@FreeBSD.org</email>
</author>
<published>2016-02-26T08:43:36+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3b654e081a678056db2f9858034612e6d78abee7'/>
<id>3b654e081a678056db2f9858034612e6d78abee7</id>
<content type='text'>
Obtained from:         Semihalf
Submitted by:          Michal Stanek &lt;mst@semihalf.com&gt;
Sponsored by:          Annapurna Labs
Approved by:           cognet (mentor)
Reviewed by:           imp, wma
Differential revision: https://reviews.freebsd.org/D5404
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Obtained from:         Semihalf
Submitted by:          Michal Stanek &lt;mst@semihalf.com&gt;
Sponsored by:          Annapurna Labs
Approved by:           cognet (mentor)
Reviewed by:           imp, wma
Differential revision: https://reviews.freebsd.org/D5404
</pre>
</div>
</content>
</entry>
<entry>
<title>UART: Fix spurious interrupts generated by ns8250 and lpc drivers:</title>
<updated>2016-02-12T05:14:58+00:00</updated>
<author>
<name>Michal Meloun</name>
<email>mmel@FreeBSD.org</email>
</author>
<published>2016-02-12T05:14:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3c7b90774d09d8d7c367e4144f7d57b9bfb87498'/>
<id>3c7b90774d09d8d7c367e4144f7d57b9bfb87498</id>
<content type='text'>
 - don't enable transmitter empty interrupt before filling TX FIFO.
 - add missing uart_barrier() call in interrupt service routine
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - don't enable transmitter empty interrupt before filling TX FIFO.
 - add missing uart_barrier() call in interrupt service routine
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix busy-detect when using DesignWare UART</title>
<updated>2016-01-20T13:51:14+00:00</updated>
<author>
<name>Zbigniew Bodek</name>
<email>zbb@FreeBSD.org</email>
</author>
<published>2016-01-20T13:51:14+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=8abfc69d11a879fd9c5d53a7329215af7c6a3872'/>
<id>8abfc69d11a879fd9c5d53a7329215af7c6a3872</id>
<content type='text'>
uart_dev_ns8250 now relies on compatible property instead of additional
'busy-detect' cell. All drivers with compatible = "snps,dw-apb-uart" have
busy detection turned on. DTS files of devices affected by the change
were modified and 'busy-detect' property was removed.

Reviewed by:    andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Stormshield
Submitted by:   Bartosz Szczepanek &lt;bsz@semihalf.com&gt;
Differential revision:  https://reviews.freebsd.org/D4218
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
uart_dev_ns8250 now relies on compatible property instead of additional
'busy-detect' cell. All drivers with compatible = "snps,dw-apb-uart" have
busy detection turned on. DTS files of devices affected by the change
were modified and 'busy-detect' property was removed.

Reviewed by:    andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Stormshield
Submitted by:   Bartosz Szczepanek &lt;bsz@semihalf.com&gt;
Differential revision:  https://reviews.freebsd.org/D4218
</pre>
</div>
</content>
</entry>
<entry>
<title>Add compatibility string for dw-apb-uart in ns8250 driver</title>
<updated>2016-01-20T13:47:44+00:00</updated>
<author>
<name>Zbigniew Bodek</name>
<email>zbb@FreeBSD.org</email>
</author>
<published>2016-01-20T13:47:44+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a6c981778cbaee11eb94d430ce99c6d1029f34ec'/>
<id>a6c981778cbaee11eb94d430ce99c6d1029f34ec</id>
<content type='text'>
This compatibility string is used in .dts file of Armada38x
and isrequired for driver attachment.

Reviewed by:    andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Stormshield
Submitted by:   Michal Stanek &lt;mst@semihalf.com&gt;
Differential revision:  https://reviews.freebsd.org/D4216
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This compatibility string is used in .dts file of Armada38x
and isrequired for driver attachment.

Reviewed by:    andrew, ian, imp
Obtained from:  Semihalf
Sponsored by:   Stormshield
Submitted by:   Michal Stanek &lt;mst@semihalf.com&gt;
Differential revision:  https://reviews.freebsd.org/D4216
</pre>
</div>
</content>
</entry>
<entry>
<title>Restore uart PPS signal capture polarity to its historical norm, and add an</title>
<updated>2016-01-12T18:42:00+00:00</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2016-01-12T18:42:00+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=fdfbb3f5b1b6199051e3421609c783b216cef6e5'/>
<id>fdfbb3f5b1b6199051e3421609c783b216cef6e5</id>
<content type='text'>
option to invert the polarity in software. Also add an option to capture
very narrow pulses by using the hardware's MSR delta-bit capability of
latching line state changes.

This effectively reverts the mistake I made in r286595 which was based on
empirical measurements made on hardware using TTL-level signaling, in which
the logic levels are inverted from RS-232. Thus, this re-syncs the polarity
with the requirements of RFC 2783, which is writen in terms of RS-232
signaling.

Narrow-pulse mode uses the ability of most ns8250 and similar chips to
provide a delta indication in the modem status register. The hardware is
able to notice and latch the change when the pulse width is shorter than
interrupt latency, which results in the signal no longer being asserted by
time the interrupt service code runs. When running in this mode we get
notified only that "a pulse happened" so the driver synthesizes both an
ASSERT and a CLEAR event (with the same timestamp for each). When the pulse
width is about equal to the interrupt latency the driver may intermittantly
see both edges of the pulse. To prevent generating spurious events, the
driver implements a half-second lockout period after generating an event
before it will generate another.

Differential Revision:	https://reviews.freebsd.org/D4477
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
option to invert the polarity in software. Also add an option to capture
very narrow pulses by using the hardware's MSR delta-bit capability of
latching line state changes.

This effectively reverts the mistake I made in r286595 which was based on
empirical measurements made on hardware using TTL-level signaling, in which
the logic levels are inverted from RS-232. Thus, this re-syncs the polarity
with the requirements of RFC 2783, which is writen in terms of RS-232
signaling.

Narrow-pulse mode uses the ability of most ns8250 and similar chips to
provide a delta indication in the modem status register. The hardware is
able to notice and latch the change when the pulse width is shorter than
interrupt latency, which results in the signal no longer being asserted by
time the interrupt service code runs. When running in this mode we get
notified only that "a pulse happened" so the driver synthesizes both an
ASSERT and a CLEAR event (with the same timestamp for each). When the pulse
width is about equal to the interrupt latency the driver may intermittantly
see both edges of the pulse. To prevent generating spurious events, the
driver implements a half-second lockout period after generating an event
before it will generate another.

Differential Revision:	https://reviews.freebsd.org/D4477
</pre>
</div>
</content>
</entry>
<entry>
<title>uart(4) - make the 8250 uart baudrate tolerance build time tweakable.</title>
<updated>2015-11-18T06:24:21+00:00</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2015-11-18T06:24:21+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e0fe7c958fb972df1553ac26c78e103cc414122a'/>
<id>e0fe7c958fb972df1553ac26c78e103cc414122a</id>
<content type='text'>
It turns out on a 16550 w/ a 25MHz SoC reference clock you get a little
over 3% error at 115200 baud, which causes this to fail.

Just .. cope. Things cope these days.

Default to 30 (3.0%) as before, but allow UART_DEV_TOLERANCE_PCT to be
set at build time to change that.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It turns out on a 16550 w/ a 25MHz SoC reference clock you get a little
over 3% error at 115200 baud, which causes this to fail.

Just .. cope. Things cope these days.

Default to 30 (3.0%) as before, but allow UART_DEV_TOLERANCE_PCT to be
set at build time to change that.
</pre>
</div>
</content>
</entry>
<entry>
<title>Actually check the DTS node value to enable the uart quirks.</title>
<updated>2015-05-30T16:30:51+00:00</updated>
<author>
<name>Luiz Otavio O Souza</name>
<email>loos@FreeBSD.org</email>
</author>
<published>2015-05-30T16:30:51+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=b1621f22b3de227d332ebd27d7905d2f6483fa0e'/>
<id>b1621f22b3de227d332ebd27d7905d2f6483fa0e</id>
<content type='text'>
Without this fix, you cannot disable the quirks by setting it to 0, just
the presence of the FDT node was enough to enable it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without this fix, you cannot disable the quirks by setting it to 0, just
the presence of the FDT node was enough to enable it.
</pre>
</div>
</content>
</entry>
</feed>
