<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/Documentation/serial/driver, branch v3.2</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2008-07-21T00:12:34Z</updated>
<entry>
<title>Subject: [PATCH 1/2] serial: Add flush_buffer() operation to uart_ops</title>
<updated>2008-07-21T00:12:34Z</updated>
<author>
<name>Haavard Skinnemoen</name>
<email>haavard.skinnemoen@atmel.com</email>
</author>
<published>2008-07-16T20:52:36Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=6bb0e3a59a089e23eecc0af3b6f6012b2a9affba'/>
<id>urn:sha1:6bb0e3a59a089e23eecc0af3b6f6012b2a9affba</id>
<content type='text'>
Serial drivers using DMA (like the atmel_serial driver) tend to get very
confused when the xmit buffer is flushed and nobody told them.  They
also tend to spew a lot of garbage since the DMA engine keeps running
after the buffer is flushed and possibly refilled with unrelated data.

This patch adds a new flush_buffer operation to the uart_ops struct,
along with a call to it from uart_flush_buffer() right after the xmit
buffer has been cleared. The driver can implement this in order to
syncronize its internal DMA state with the xmit buffer when the buffer
is flushed.

Signed-off-by: Haavard Skinnemoen &lt;haavard.skinnemoen@atmel.com&gt;
Acked-by: Alan Cox &lt;alan@redhat.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Update parity handling documentation</title>
<updated>2006-06-02T16:47:26Z</updated>
<author>
<name>Peter Korsgaard</name>
<email>jacmet@sunsite.dk</email>
</author>
<published>2006-06-02T16:47:26Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=89f3da3e06257abba3e70163c92969f3fcd1833d'/>
<id>urn:sha1:89f3da3e06257abba3e70163c92969f3fcd1833d</id>
<content type='text'>
Update documentation to match reality. INPCK controls whether input
parity checking is enabled.

Signed-off-by: Peter Korsgaard &lt;jacmet@sunsite.dk&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Update serial driver documentation</title>
<updated>2006-04-15T19:46:11Z</updated>
<author>
<name>Russell King</name>
<email>rmk@dyn-67.arm.linux.org.uk</email>
</author>
<published>2006-04-15T19:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=67ab7f596b6adbaef5abc539dbee822e298a36e1'/>
<id>urn:sha1:67ab7f596b6adbaef5abc539dbee822e298a36e1</id>
<content type='text'>
Improve serial driver documentation:
- Remove CVS id.
- Update pointer to reference driver documentation.
- Add comments about new uart_write_console function.
- Add TIOCM_LOOP modem control bit description.
- Add commentry about enable_ms method being called multiple times.
- Add commentry about startup/shutdown method calling.
- Mention that dereferencing port-&gt;info after shutdown is invalid.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Update serial_core documentation</title>
<updated>2005-10-31T11:53:19Z</updated>
<author>
<name>Russell King</name>
<email>rmk@dyn-67.arm.linux.org.uk</email>
</author>
<published>2005-10-31T11:53:19Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=6a8f8d72bd2fe9964ee10c0f58b14d6370e49769'/>
<id>urn:sha1:6a8f8d72bd2fe9964ee10c0f58b14d6370e49769</id>
<content type='text'>
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Clean up and fix tty transmission start/stoping</title>
<updated>2005-08-31T09:12:14Z</updated>
<author>
<name>Russell King</name>
<email>rmk@dyn-67.arm.linux.org.uk</email>
</author>
<published>2005-08-31T09:12:14Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b129a8ccd53f74c43e4c83c8e0031a4990040830'/>
<id>urn:sha1:b129a8ccd53f74c43e4c83c8e0031a4990040830</id>
<content type='text'>
The start_tx and stop_tx methods were passed a flag to indicate
whether the start/stop was from the tty start/stop callbacks, and
some drivers used this flag to decide whether to ask the UART to
immediately stop transmission (where the UART supports such a
feature.)

There are other cases when we wish this to occur - when CTS is
lowered, or if we change from soft to hard flow control and CTS
is inactive.  In these cases, this flag was false, and we would
allow the transmitter to drain before stopping.

There is really only one case where we want to let the transmitter
drain before disabling, and that's when we run out of characters
to send.

Hence, re-jig the start_tx and stop_tx methods to eliminate this
flag, and introduce new functions for the special "disable and
allow transmitter to drain" case.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[PATCH] Serial: Adjust serial locking</title>
<updated>2005-06-29T08:42:38Z</updated>
<author>
<name>Russell King</name>
<email>rmk@dyn-67.arm.linux.org.uk</email>
</author>
<published>2005-06-29T08:42:38Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c5f4644e6c8ba21666128603e4e92544d3cd740d'/>
<id>urn:sha1:c5f4644e6c8ba21666128603e4e92544d3cd740d</id>
<content type='text'>
This patch changes the way serial ports are locked when getting modem
status.  This change is necessary because we will need to atomically
read the modem status and take action depending on the CTS status.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Clarify documentation for set_termios and pm methods.</title>
<updated>2005-01-15T11:51:45Z</updated>
<author>
<name>Russell King</name>
<email>rmk@flint.arm.linux.org.uk</email>
</author>
<published>2005-01-15T11:51:45Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b8ebb26656cbe2be00a318061a14c7b1c51172f6'/>
<id>urn:sha1:b8ebb26656cbe2be00a318061a14c7b1c51172f6</id>
<content type='text'>
Signed-off-by: Russell King &lt;rmk@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>[SERIAL] Change settermios to set_termios</title>
<updated>2003-01-06T22:31:17Z</updated>
<author>
<name>Russell King</name>
<email>rmk@flint.arm.linux.org.uk</email>
</author>
<published>2003-01-06T22:31:17Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=cc9b418f97d1b345373631b111444eb10d71e6bc'/>
<id>urn:sha1:cc9b418f97d1b345373631b111444eb10d71e6bc</id>
<content type='text'>
set_termios matches the style used for the other methods.  It should
have been this from the start.
</content>
</entry>
<entry>
<title>[SERIAL] Convert change_speed() to settermios()</title>
<updated>2003-01-03T15:42:09Z</updated>
<author>
<name>Russell King</name>
<email>rmk@flint.arm.linux.org.uk</email>
</author>
<published>2003-01-03T15:42:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=581b7bba5c65a395c9c4822f240c9f32366af11f'/>
<id>urn:sha1:581b7bba5c65a395c9c4822f240c9f32366af11f</id>
<content type='text'>
Several serial drivers want to obtain the numeric baud rate when
configuring their serial ports.  Currently, two methods are used
to "work around" this inadequacy in the change_speed API:

	baud = tty_get_baud_rate(port-&gt;info-&gt;tty);

	baud = BAUD_BASE / (16 * quot);

Passing the termios structure down means that we can use 
uart_get_baud_rate() instead.  We can also ensure that the various
termios flags for options we don't support are correctly set.

Lastly, this also provides 8250.c with a clean method for supporting
divisors that are greater than the baud_base.
</content>
</entry>
<entry>
<title>[SERIAL] Locking fixup (part 2)</title>
<updated>2002-07-27T12:35:16Z</updated>
<author>
<name>Russell King</name>
<email>rmk@flint.arm.linux.org.uk</email>
</author>
<published>2002-07-27T12:35:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=04c340161bad0a1f67ae0ccdaa0d09ad927b2aa8'/>
<id>urn:sha1:04c340161bad0a1f67ae0ccdaa0d09ad927b2aa8</id>
<content type='text'>
After the last few days of debugging, we've ended up with the caller
of the start_tx and stop_tx methods taking the per-port lock.  This
cset and the accompanying csets make the same change to some of the
other methods for consistency reasons.  Since these methods don't
contain a lot of code, it is better that they have consistent locking
rules.

This cset fixes up the enable_ms method.
</content>
</entry>
</feed>
