<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/tty/serial/8250, branch linux-4.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.17.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.17.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-08-22T05:44:55Z</updated>
<entry>
<title>serial: 8250_dw: Add ACPI support for uart on Broadcom SoC</title>
<updated>2018-08-22T05:44:55Z</updated>
<author>
<name>Srinath Mannam</name>
</author>
<published>2018-07-28T15:25:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0e3207bd59ffeb895ca11d6043dc446fda922776'/>
<id>urn:sha1:0e3207bd59ffeb895ca11d6043dc446fda922776</id>
<content type='text'>
commit 784c29eda5b4e28c3a56aa90b3815f9a1b0cfdc1 upstream.

Add ACPI identifier HID for UART DW 8250 on Broadcom SoCs
to match the HID passed through ACPI tables to enable
UART controller.

Signed-off-by: Srinath Mannam &lt;srinath.mannam@broadcom.com&gt;
Reviewed-by: Vladimir Olovyannikov &lt;vladimir.olovyannikov@broadcom.com&gt;
Tested-by: Vladimir Olovyannikov &lt;vladimir.olovyannikov@broadcom.com&gt;
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: 8250_dw: always set baud rate in dw8250_set_termios</title>
<updated>2018-08-22T05:44:54Z</updated>
<author>
<name>Chen Hu</name>
</author>
<published>2018-07-27T10:32:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2605a4d5fae114d315a5f075e7ce5b6e65807f71'/>
<id>urn:sha1:2605a4d5fae114d315a5f075e7ce5b6e65807f71</id>
<content type='text'>
commit dfcab6ba573445c703235ab6c83758eec12d7f28 upstream.

dw8250_set_termios() doesn't set baud rate if the arg "old ktermios" is
NULL. This happens during resume.
Call Trace:
...
[   54.928108] dw8250_set_termios+0x162/0x170
[   54.928114] serial8250_set_termios+0x17/0x20
[   54.928117] uart_change_speed+0x64/0x160
[   54.928119] uart_resume_port
...

So the baud rate is not restored after S3 and breaks the apps who use
UART, for example, console and bluetooth etc.

We address this issue by setting the baud rate irrespective of arg
"old", just like the drivers for other 8250 IPs. This is tested with
Intel Broxton platform.

Signed-off-by: Chen Hu &lt;hu1.chen@intel.com&gt;
Fixes: 4e26b134bd17 ("serial: 8250_dw: clock rate handling for all ACPI platforms")
Cc: Heikki Krogerus &lt;heikki.krogerus@linux.intel.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: 8250_exar: Read INT0 from slave device, too</title>
<updated>2018-08-22T05:44:54Z</updated>
<author>
<name>Aaron Sierra</name>
</author>
<published>2018-07-24T19:23:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=92c770e452c481cd1bc81bdb093733d1007602fb'/>
<id>urn:sha1:92c770e452c481cd1bc81bdb093733d1007602fb</id>
<content type='text'>
commit 60ab0fafc4b652fcaf7cbc3bb8555a0cf1149c28 upstream.

The sleep wake-up refactoring that I introduced in

  commit c7e1b4059075 ("tty: serial: exar: Relocate sleep wake-up handling")

did not account for devices with a slave device on the expansion port.
This patch pokes the INT0 register in the slave device, if present, in
order to ensure that MSI interrupts don't get permanently "stuck"
because of a sleep wake-up interrupt as described here:

  commit 2c0ac5b48a35 ("serial: exar: Fix stuck MSIs")

This also converts an ioread8() to readb() in order to provide visual
consistency with the MMIO-only accessors used elsewhere in the driver.

Reported-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Aaron Sierra &lt;asierra@xes-inc.com&gt;
Fixes: c7e1b4059075 ("tty: serial: exar: Relocate sleep wake-up handling")
Reviewed-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>tty: serial: 8250: Revert NXP SC16C2552 workaround</title>
<updated>2018-08-22T05:44:54Z</updated>
<author>
<name>Mark</name>
</author>
<published>2018-08-12T15:47:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8c1947e62c86f692bfee6c32eb0821f18d2481f4'/>
<id>urn:sha1:8c1947e62c86f692bfee6c32eb0821f18d2481f4</id>
<content type='text'>
commit 47ac76662ca9c5852fd353093f19de3ae85f2e66 upstream.

Revert commit ecb988a3b7985913d1f0112f66667cdd15e40711: tty: serial:
8250: 8250_core: NXP SC16C2552 workaround

The above commit causes userland application to no longer write
correctly its first write to a dumb terminal connected to /dev/ttyS0.
This commit seems to be the culprit. It's as though the TX FIFO is being
reset during that write. What should be displayed is:

PSW 80000000 INST 00000000                           HALT
//

What is displayed is some variation of:

T 00000000           HAL//

Reverting this commit via this patch fixes my problem.

Signed-off-by: Mark Hounschell &lt;dmarkh@cfl.rr.com&gt;
Fixes: ecb988a3b798 ("tty: serial: 8250: 8250_core: NXP SC16C2552 workaround")
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: 8250_pci: Remove stalled entries in blacklist</title>
<updated>2018-07-08T13:32:18Z</updated>
<author>
<name>Andy Shevchenko</name>
</author>
<published>2018-06-06T18:00:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5fb029f9a80cdcac1ba20d194e7ad5678272b347'/>
<id>urn:sha1:5fb029f9a80cdcac1ba20d194e7ad5678272b347</id>
<content type='text'>
commit 20dcff436e9fcd2e106b0ccc48a52206bc176d70 upstream.

After the commit

  7d8905d06405 ("serial: 8250_pci: Enable device after we check black list")

pure serial multi-port cards, such as CH355, got blacklisted and thus
not being enumerated anymore. Previously, it seems, blacklisting them
was on purpose to shut up pciserial_init_one() about record duplication.

So, remove the entries from blacklist in order to get cards enumerated.

Fixes: 7d8905d06405 ("serial: 8250_pci: Enable device after we check black list")
Reported-by: Matt Turner &lt;mattst88@gmail.com&gt;
Cc: Sergej Pupykin &lt;ml@sergej.pp.ru&gt;
Cc: Alexandr Petrenko &lt;petrenkoas83@gmail.com&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Reviewed-and-Tested-by: Matt Turner &lt;mattst88@gmail.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>serial: 8250: omap: Fix idling of clocks for unused uarts</title>
<updated>2018-06-16T07:18:22Z</updated>
<author>
<name>Tony Lindgren</name>
</author>
<published>2018-05-04T17:44:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=592141182e63a1bc901024404581d3d00d1f09bb'/>
<id>urn:sha1:592141182e63a1bc901024404581d3d00d1f09bb</id>
<content type='text'>
commit 13dc04d0e5fdc25c8f713ad23fdce51cf2bf96ba upstream.

I noticed that unused UARTs won't necessarily idle properly always
unless at least one byte tx transfer is done first.

After some debugging I narrowed down the problem to the scr register
dma configuration bits that need to be set before softreset for the
clocks to idle. Unless we do this, the module clkctrl idlest bits
may be set to 1 instead of 3 meaning the clock will never idle and
is blocking deeper idle states for the whole domain.

This might be related to the configuration done by the bootloader
or kexec booting where certain configurations cause the 8250 or
the clkctrl clock to jam in a way where setting of the scr bits
and reset is needed to clear it. I've tried diffing the 8250
registers for the various modes, but did not see anything specific.
So far I've only seen this on omap4 but I'm suspecting this might
also happen on the other clkctrl using SoCs considering they
already have a quirk enabled for UART_ERRATA_CLOCK_DISABLE.

Let's fix the issue by configuring scr before reset for basic dma
even if we don't use it. The scr register will be reset when we do
softreset few lines after, and we restore scr on resume. We should
do this for all the SoCs with UART_ERRATA_CLOCK_DISABLE quirk flag
set since the ones with UART_ERRATA_CLOCK_DISABLE are all based
using clkctrl similar to omap4.

Looks like both OMAP_UART_SCR_DMAMODE_1 | OMAP_UART_SCR_DMAMODE_CTL
bits are needed for the clkctrl to idle after a softreset.

And we need to add omap4 to also use the UART_ERRATA_CLOCK_DISABLE
for the related workaround to be enabled. This same compatible
value will also be used for omap5.

Fixes: cdb929e4452a ("serial: 8250_omap: workaround errata around idling UART after using DMA")
Cc: Keerthy &lt;j-keerthy@ti.com&gt;
Cc: Matthijs van Duin &lt;matthijsvanduin@gmail.com&gt;
Cc: Sekhar Nori &lt;nsekhar@ti.com&gt;
Cc: Tero Kristo &lt;t-kristo@ti.com&gt;
Signed-off-by: Tony Lindgren &lt;tony@atomide.com&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge 4.16-rc6 into tty-next</title>
<updated>2018-03-20T10:27:18Z</updated>
<author>
<name>Greg Kroah-Hartman</name>
</author>
<published>2018-03-20T10:27:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4958134df54c2c84e9c22ea042761d439164d26e'/>
<id>urn:sha1:4958134df54c2c84e9c22ea042761d439164d26e</id>
<content type='text'>
We want the serial/tty fixes in here as well.

Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>8250-men-mcb: add support for 16z025 and 16z057</title>
<updated>2018-03-15T17:12:55Z</updated>
<author>
<name>Michael Moese</name>
</author>
<published>2018-03-05T15:24:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e2fea54e4592b5dccd97fc338d12bba95a2d16f0'/>
<id>urn:sha1:e2fea54e4592b5dccd97fc338d12bba95a2d16f0</id>
<content type='text'>
Add support for two MEN UARTs (16z025 and 16z057) to the
8250_men_mcb driver.
The 16z025 consists of up to four ports, the 16z057 has
exactly four ports. Apart from that, all of them share the
Port settings.

Signed-off-by: Michael Moese &lt;mmoese@suse.de&gt;
Reported-by: Ben Turner &lt;ben.turner@21net.com&gt;
Tested-by: Ben Turner &lt;ben.turner@21net.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: 8250: Add Nuvoton NPCM UART</title>
<updated>2018-03-09T19:01:19Z</updated>
<author>
<name>Joel Stanley</name>
</author>
<published>2018-03-05T11:47:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f597fbce38d230af95384f4a04e0a13a1d0ad45d'/>
<id>urn:sha1:f597fbce38d230af95384f4a04e0a13a1d0ad45d</id>
<content type='text'>
The Nuvoton UART is almost compatible with the 8250 driver when probed
via the 8250_of driver, however it requires some extra configuration
at startup.

Reviewed-by: Rob Herring &lt;robh@kernel.org&gt;
Signed-off-by: Joel Stanley &lt;joel@jms.id.au&gt;
Cc: stable &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: 8250_dw: Switch to use acpi_dev_present()</title>
<updated>2018-03-09T18:24:38Z</updated>
<author>
<name>Andy Shevchenko</name>
</author>
<published>2018-03-01T11:41:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7d6e2143bed7dd61dac3a00321292b36d63c2a2f'/>
<id>urn:sha1:7d6e2143bed7dd61dac3a00321292b36d63c2a2f</id>
<content type='text'>
Special settings for APMC0D08 are applied when device is present
in the system. To check its presence we may use acpi_dev_present()
instead of current open coded variant.

Cc: Feng Kan &lt;fkan@apm.com&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
