Commit c6bd5bcc authored by Linus Torvalds's avatar Linus Torvalds
Browse files


Pull TTY/Serial merge from Greg Kroah-Hartman:
 "Here's the big tty/serial tree set of changes for 3.8-rc1.

  Contained in here is a bunch more reworks of the tty port layer from
  Jiri and bugfixes from Alan, along with a number of other tty and
  serial driver updates by the various driver authors.

  Also, Jiri has been coerced^Wconvinced to be the co-maintainer of the
  TTY layer, which is much appreciated by me.

  All of these have been in the linux-next tree for a while.

  Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org&gt;">

Fixed up some trivial conflicts in the staging tree, due to the fwserial
driver having come in both ways (but fixed up a bit in the serial tree),
and the ioctl handling in the dgrp driver having been done slightly
differently (staging tree got that one right, and removed both
TIOCGSOFTCAR and TIOCSSOFTCAR).

* tag 'tty-3.8-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (146 commits)
  staging: sb105x: fix potential NULL pointer dereference in mp_chars_in_buffer()
  staging/fwserial: Remove superfluous free
  staging/fwserial: Use WARN_ONCE when port table is corrupted
  staging/fwserial: Destruct embedded tty_port on teardown
  staging/fwserial: Fix build breakage when !CONFIG_BUG
  staging: fwserial: Add TTY-over-Firewire serial driver
  drivers/tty/serial/serial_core.c: clean up HIGH_BITS_OFFSET usage
  staging: dgrp: dgrp_tty.c: Audit the return values of get/put_user()
  staging: dgrp: dgrp_tty.c: Remove the TIOCSSOFTCAR ioctl handler from dgrp driver
  serial: ifx6x60: Add modem power off function in the platform reboot process
  serial: mxs-auart: unmap the scatter list before we copy the data
  serial: mxs-auart: disable the Receive Timeout Interrupt when DMA is enabled
  serial: max310x: Setup missing "can_sleep" field for GPIO
  tty/serial: fix ifx6x60.c declaration warning
  serial: samsung: add devicetree properties for non-Exynos SoCs
  serial: samsung: fix potential soft lockup during uart write
  tty: vt: Remove redundant null check before kfree.
  tty/8250 Add check for pci_ioremap_bar failure
  tty/8250 Add support for Commtech's Fastcom Async-335 and Fastcom Async-PCIe cards
  tty/8250 Add XR17D15x devices to the exar_handle_irq override
  ...
parents 8966961b b0ab0236
Loading
Loading
Loading
Loading
+112 −0
Original line number Diff line number Diff line
@@ -26,3 +26,115 @@ Description:
		 UART port in serial_core, that is bound to TTY like ttyS0.
		 uartclk = 16 * baud_base

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/type
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Shows the current tty type for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/line
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Shows the current tty line number for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/port
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Shows the current tty port I/O address for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/irq
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Shows the current primary interrupt for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/flags
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the tty port status flags for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/xmit_fifo_size
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the transmit FIFO size for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/close_delay
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the closing delay time for this port in ms.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/closing_wait
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the close wait time for this port in ms.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/custom_divisor
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the custom divisor if any that is set on this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/io_type
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the I/O type that is to be used with the iomem base
		 address.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/iomem_base
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 The I/O memory base for this port.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.

What:		/sys/class/tty/ttyS0/iomem_reg_shift
Date:		October 2012
Contact:	Alan Cox <alan@linux.intel.com>
Description:
		 Show the register shift indicating the spacing to be used
		 for accesses on this iomem address.

		 These sysfs values expose the TIOCGSERIAL interface via
		 sysfs rather than via ioctls.
+8 −0
Original line number Diff line number Diff line
@@ -6,11 +6,19 @@ Required properties:
- reg : Address and length of the register set for the device
- interrupts : Should contain the auart interrupt numbers

Optional properties:
- fsl,auart-dma-channel : The DMA channels, the first is for RX, the other
		is for TX. If you add this property, it also means that you
		will enable the DMA support for the auart.
		Note: due to the hardware bug in imx23(see errata : 2836),
		only the imx28 can enable the DMA support for the auart.

Example:
auart0: serial@8006a000 {
	compatible = "fsl,imx28-auart", "fsl,imx23-auart";
	reg = <0x8006a000 0x2000>;
	interrupts = <112 70 71>;
	fsl,auart-dma-channel = <8 9>;
};

Note: Each auart port should have an alias correctly numbered in "aliases"
+4 −1
Original line number Diff line number Diff line
@@ -14,7 +14,10 @@ Required properties:
	- "serial" if the port type is unknown.
- reg : offset and length of the register set for the device.
- interrupts : should contain uart interrupt.
- clock-frequency : the input clock frequency for the UART.
- clock-frequency : the input clock frequency for the UART
	 or
  clocks phandle to refer to the clk used as per Documentation/devicetree
  /bindings/clock/clock-bindings.txt

Optional properties:
- current-speed : the current active speed of the UART.
+1 −0
Original line number Diff line number Diff line
@@ -7430,6 +7430,7 @@ K: ^Subject:.*(?i)trivial

TTY LAYER
M:	Greg Kroah-Hartman <gregkh@linuxfoundation.org>
M:	Jiri Slaby <jslaby@suse.cz>
S:	Supported
T:	git git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty.git
F:	drivers/tty/
+3 −0
Original line number Diff line number Diff line
@@ -95,6 +95,9 @@
#define TIOCGDEV	_IOR('T',0x32, unsigned int) /* Get primary device node of /dev/console */
#define TIOCSIG		_IOW('T',0x36, int)  /* Generate signal on Pty slave */
#define TIOCVHANGUP	0x5437
#define TIOCGPKT	_IOR('T', 0x38, int) /* Get packet mode state */
#define TIOCGPTLCK	_IOR('T', 0x39, int) /* Get Pty lock state */
#define TIOCGEXCL	_IOR('T', 0x40, int) /* Get exclusive mode state */

#define TIOCSERCONFIG	0x5453
#define TIOCSERGWILD	0x5454
Loading