linux/Documentation/serial
Peter Hurley 7c8ab967e3 serial: Fix locking for uart driver set_termios() method
The low-level uart driver may modify termios settings to override
settings that are not compatible with the uart, such as CRTSCTS.
Thus, callers of the low-level uart driver's set_termios() method must
hold termios_rwsem write lock to prevent concurrent access to termios,
in case such override occurs.

The termios_rwsem lock requirement does not extend to console setup
(ie., uart_set_options), as console setup cannot race with tty
operations. Nor does this lock requirement extend to functions which
cannot be concurrent with tty ioctls (ie., uart_port_startup() and
uart_resume_port()).

Further, always claim the port mutex to protect hardware
re-reprogramming in the set_termios() uart driver method. Note this
is unnecessary for console initialization in uart_set_options()
which cannot be concurrent with other uart operations.

Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-11-05 18:53:54 -08:00
..
00-INDEX Documentation/serial: Delete obsolete driver documentation 2014-04-16 14:20:34 -07:00
driver serial: Fix locking for uart driver set_termios() method 2014-11-05 18:53:54 -08:00
moxa-smartio Fix common misspellings 2011-03-31 11:26:23 -03:00
n_gsm.txt Fix common misspellings 2011-03-31 11:26:23 -03:00
README.cycladesZ Create/use more directory structure in the Documentation/ tree. 2008-11-14 17:28:53 +00:00
rocket.txt Documentation: remove references to /etc/modprobe.conf 2012-03-30 16:03:15 -07:00
serial-rs485.txt Documentation: serial: fix header path 2014-09-08 16:10:01 -07:00
tty.txt tty: doc: Fix grammar in serial/tty 2014-09-04 10:05:04 +02:00

The Cyclades-Z must have firmware loaded onto the card before it will
operate.  This operation should be performed during system startup,

The firmware, loader program and the latest device driver code are
available from Cyclades at
    ftp://ftp.cyclades.com/pub/cyclades/cyclades-z/linux/