<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/tty/serial/xilinx_uartps.c, branch linux-4.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-4.1.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2015-04-28T12:26:21Z</updated>
<entry>
<title>serial: xilinx: Use platform_get_irq to get irq description structure</title>
<updated>2015-04-28T12:26:21Z</updated>
<author>
<name>Michal Simek</name>
<email>michal.simek@xilinx.com</email>
</author>
<published>2015-04-13T14:34:21Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=5c90c07b98c02198d9777a7c4f3047b0a94bf7ed'/>
<id>urn:sha1:5c90c07b98c02198d9777a7c4f3047b0a94bf7ed</id>
<content type='text'>
For systems with CONFIG_SERIAL_OF_PLATFORM=y and device_type =
"serial"; property in DT of_serial.c driver maps and unmaps IRQ (because
driver probe fails). Then a driver is called but irq mapping is not
created that's why driver is failing again in again on request_irq().
Based on this use platform_get_irq() instead of platform_get_resource()
which is doing irq_desc allocation and driver itself can request IRQ.

Fix both xilinx serial drivers in the tree.

Signed-off-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
CC: &lt;stable@vger.kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: xuartps: Fix check in console_setup().</title>
<updated>2015-03-26T21:55:18Z</updated>
<author>
<name>Thomas Betker</name>
<email>thomas.betker@rohde-schwarz.com</email>
</author>
<published>2015-03-11T21:39:28Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=136debf707d2b3cd8e74d0fff8e29d11a78bf5c2'/>
<id>urn:sha1:136debf707d2b3cd8e74d0fff8e29d11a78bf5c2</id>
<content type='text'>
cdns_uart_console_setup() checks port-&gt;mapbase != 0, but the port may
not be initialized yet even if this condition is met [e.g., ioremap()
may have failed]. Check port-&gt;membase != NULL instead, similar to
cdns_early_console_setup().

Signed-off-by: Thomas Betker &lt;thomas.betker@rohde-schwarz.com&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: xuartps: Get rid of register access macros.</title>
<updated>2015-03-26T21:54:07Z</updated>
<author>
<name>Thomas Betker</name>
<email>thomas.betker@rohde-schwarz.com</email>
</author>
<published>2015-03-12T21:11:59Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=19f22efdb653642814e6c8710fca974c1dbe7cfa'/>
<id>urn:sha1:19f22efdb653642814e6c8710fca974c1dbe7cfa</id>
<content type='text'>
Get rid of cdns_uart_readl() and cdns_uart_writel() and just call
readl() and writel() directly.

Most of the patch was created by search-and-replace (I had to convert a
few lines manually, and break some lines longer than 80 columns):
* s/cdns_uart_readl(/readl(port-&gt;membase + /g
* s/cdns_uart_writel(\([^,]*\),/writel(\1, port-&gt;membase +/g

Signed-off-by: Thomas Betker &lt;thomas.betker@rohde-schwarz.com&gt;
Acked-by: Sören Brinkmann &lt;soren.brinkmann@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: xuartps: Fix iobase use.</title>
<updated>2015-03-26T21:52:30Z</updated>
<author>
<name>Thomas Betker</name>
<email>thomas.betker@rohde-schwarz.com</email>
</author>
<published>2015-03-11T21:39:27Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0c39a467e7ba68a0d94439c1ebe260dc5b26302b'/>
<id>urn:sha1:0c39a467e7ba68a0d94439c1ebe260dc5b26302b</id>
<content type='text'>
cdns_uart_get_port() sets port-&gt;iobase = 1 to "mark port in use", but
this "in use" condition is not checked anywhere else in the code. So
remove the line, keeping port-&gt;iobase = 0 (which also makes more sense).

Signed-off-by: Thomas Betker &lt;thomas.betker@rohde-schwarz.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: xuartps: Fix cdns_uart_port[] definition.</title>
<updated>2015-03-26T21:52:29Z</updated>
<author>
<name>Thomas Betker</name>
<email>thomas.betker@rohde-schwarz.com</email>
</author>
<published>2015-03-11T21:39:26Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6db6df0e4a1b913810fc9063bbb332476ce316b7'/>
<id>urn:sha1:6db6df0e4a1b913810fc9063bbb332476ce316b7</id>
<content type='text'>
The code assumes that the array cdns_uart_port[] has dimension
CDNS_UART_NR_PORTS, so let us define it this way.

Signed-off-by: Thomas Betker &lt;thomas.betker@rohde-schwarz.com&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>serial: xuartps: Fix register space size.</title>
<updated>2015-03-26T21:52:29Z</updated>
<author>
<name>Thomas Betker</name>
<email>thomas.betker@rohde-schwarz.com</email>
</author>
<published>2015-03-11T21:39:25Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9646e4fee42d080ad484eef005691a17ed9cb8e7'/>
<id>urn:sha1:9646e4fee42d080ad484eef005691a17ed9cb8e7</id>
<content type='text'>
The register space size is 0x1000, and this value [not 0xfff] should be
provided to request_mem_region(), ioremap(), etc.

Signed-off-by: Thomas Betker &lt;thomas.betker@rohde-schwarz.com&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: constify of_device_id array</title>
<updated>2015-03-26T21:49:10Z</updated>
<author>
<name>Fabian Frederick</name>
<email>fabf@skynet.be</email>
</author>
<published>2015-03-16T19:17:11Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ed0bb2323c9321b91dfa0ea8317fdc4d9592dce4'/>
<id>urn:sha1:ed0bb2323c9321b91dfa0ea8317fdc4d9592dce4</id>
<content type='text'>
of_device_id is always used as const.
(See driver.of_match_table and open firmware functions)

Signed-off-by: Fabian Frederick &lt;fabf@skynet.be&gt;
Acked-by: Peter Korsgaard &lt;peter@korsgaard.com&gt;
Acked-by: Timur Tabi &lt;timur@tabi.org&gt;
Acked-by: Patrice Chotard &lt;patrice.chotard@st.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: serial: xilinx_uartps: Use Macro for ttyPS0</title>
<updated>2015-03-07T02:28:57Z</updated>
<author>
<name>Peter Crosthwaite</name>
<email>peter.crosthwaite@xilinx.com</email>
</author>
<published>2015-02-24T23:13:57Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=f6415491c5f33df1adb5983070618f30370bd346'/>
<id>urn:sha1:f6415491c5f33df1adb5983070618f30370bd346</id>
<content type='text'>
All instances of "ttyPS" use this macro except for this one. Convert
it.

Signed-off-by: Peter Crosthwaite &lt;peter.crosthwaite@xilinx.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: xuartps: Fix RX hang, and TX corruption in termios call</title>
<updated>2015-02-02T18:11:25Z</updated>
<author>
<name>Nathan Rossi</name>
<email>nathan.rossi@xilinx.com</email>
</author>
<published>2015-01-16T12:49:25Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6ecde472b0d943251f8f348155495391720b61b0'/>
<id>urn:sha1:6ecde472b0d943251f8f348155495391720b61b0</id>
<content type='text'>
The implementation of flushing the RX FIFO breaks in a number of cases,
it is impossible to ensure an complete flush of the RX FIFO due to the
hardware not allowing the use of the FIFOs when the receiver is disabled
(Reading from the FIFO register does not remove it from the FIFO when
the RX_EN=0 or RX_DIS=1). Additionally during an initial set_termios
call where RX_DIS=1 causes a hang waiting forever for the RX FIFO to
empty. On top of this the FIFO will be cleared by the use of the RXRST
bits on the Control Register, making the RX flush pointless (as it does
not preserve the data read anyway).

Due to the TXRST the TX FIFO and transmitter can be interrupted during
frame trasmission, causing corruption and additionally data lost in the
FIFO. Most other serial drivers do not flush or clear the FIFOs during
a termios configuration change and as such do not have issues with
corruption. For this UART controller is it required that the TXRST/RXRST
bit be flagged during the change, this means that the data in the FIFO
will be dropped when changing configuration. In order to prevent data
loss and corruption of the transmitted data, wait until the TX FIFO is
empty before changing the configuration. The performance of this may
cause the set_termios call to take a longer amount of time especially
on lower baud rates, however it is comparable to the same performance
hit that a console_write call costs.

Signed-off-by: Nathan Rossi &lt;nathan.rossi@xilinx.com&gt;
Acked-by: Anirudha Sarangi &lt;anirudh@xilinx.com&gt;
Acked-by: Harini Katakam &lt;harinik@xilinx.com&gt;
Signed-off-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>tty: xuartps: Add support for setting modem control signals</title>
<updated>2014-11-06T22:57:27Z</updated>
<author>
<name>Lars-Peter Clausen</name>
<email>lars@metafoo.de</email>
</author>
<published>2014-11-05T12:35:16Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=19038ad9f08c96dcff870b18af8fd5ae5141dec1'/>
<id>urn:sha1:19038ad9f08c96dcff870b18af8fd5ae5141dec1</id>
<content type='text'>
Add support for setting the state of the DTR and RTS signals.

Acked-by: Soren Brinkmann &lt;soren.brinkmann@xilinx.com&gt;
Signed-off-by: Lars-Peter Clausen &lt;lars@metafoo.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
