Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

Merge master.kernel.org:/home/rmk/linux-2.6-serial

parents 7f36b1e9 913ade51
Loading
Loading
Loading
Loading
+57 −9
Original line number Diff line number Diff line
@@ -116,12 +116,15 @@ hardware.
	line becoming inactive or the tty layer indicating we want
	to stop transmission due to an XOFF character.

	The driver should stop transmitting characters as soon as
	possible.

	Locking: port->lock taken.
	Interrupts: locally disabled.
	This call must not sleep

  start_tx(port)
	start transmitting characters.
	Start transmitting characters.

	Locking: port->lock taken.
	Interrupts: locally disabled.
@@ -281,26 +284,31 @@ hardware.
Other functions
---------------

uart_update_timeout(port,cflag,quot)
uart_update_timeout(port,cflag,baud)
	Update the FIFO drain timeout, port->timeout, according to the
	number of bits, parity, stop bits and quotient.
	number of bits, parity, stop bits and baud rate.

	Locking: caller is expected to take port->lock
	Interrupts: n/a

uart_get_baud_rate(port,termios)
uart_get_baud_rate(port,termios,old,min,max)
	Return the numeric baud rate for the specified termios, taking
	account of the special 38400 baud "kludge".  The B0 baud rate
	is mapped to 9600 baud.

	If the baud rate is not within min..max, then if old is non-NULL,
	the original baud rate will be tried.  If that exceeds the
	min..max constraint, 9600 baud will be returned.  termios will
	be updated to the baud rate in use.

	Note: min..max must always allow 9600 baud to be selected.

	Locking: caller dependent.
	Interrupts: n/a

uart_get_divisor(port,termios,oldtermios)
	Return the divsor (baud_base / baud) for the selected baud rate
	specified by termios.  If the baud rate is out of range, try
	the original baud rate specified by oldtermios (if non-NULL).
	If that fails, try 9600 baud.
uart_get_divisor(port,baud)
	Return the divsor (baud_base / baud) for the specified baud
	rate, appropriately rounded.

	If 38400 baud and custom divisor is selected, return the
	custom divisor instead.
@@ -308,6 +316,46 @@ uart_get_divisor(port,termios,oldtermios)
	Locking: caller dependent.
	Interrupts: n/a

uart_match_port(port1,port2)
	This utility function can be used to determine whether two
	uart_port structures describe the same port.

	Locking: n/a
	Interrupts: n/a

uart_write_wakeup(port)
	A driver is expected to call this function when the number of
	characters in the transmit buffer have dropped below a threshold.

	Locking: port->lock should be held.
	Interrupts: n/a

uart_register_driver(drv)
	Register a uart driver with the core driver.  We in turn register
	with the tty layer, and initialise the core driver per-port state.

	drv->port should be NULL, and the per-port structures should be
	registered using uart_add_one_port after this call has succeeded.

	Locking: none
	Interrupts: enabled

uart_unregister_driver()
	Remove all references to a driver from the core driver.  The low
	level driver must have removed all its ports via the
	uart_remove_one_port() if it registered them with uart_add_one_port().

	Locking: none
	Interrupts: enabled

uart_suspend_port()

uart_resume_port()

uart_add_one_port()

uart_remove_one_port()

Other notes
-----------

+3 −1
Original line number Diff line number Diff line
@@ -1967,7 +1967,9 @@ uart_report_port(struct uart_driver *drv, struct uart_port *port)
		break;
	}

	printk(KERN_INFO "%s%d at %s (irq = %d) is a %s\n",
	printk(KERN_INFO "%s%s%s%d at %s (irq = %d) is a %s\n",
	       port->dev ? port->dev->bus_id : "",
	       port->dev ? ": " : "",
	       drv->dev_name, port->line, address, port->irq, uart_type(port));
}

+4 −3
Original line number Diff line number Diff line
@@ -39,8 +39,7 @@
#define PORT_RSA	13
#define PORT_NS16550A	14
#define PORT_XSCALE	15
#define PORT_IP3106	16
#define PORT_MAX_8250	16	/* max port ID */
#define PORT_MAX_8250	15	/* max port ID */

/*
 * ARM specific type numbers.  These are not currently guaranteed
@@ -118,7 +117,9 @@
#define PORT_M32R_SIO	68

/*Digi jsm */
#define PORT_JSM        65
#define PORT_JSM        69

#define PORT_IP3106	70

#ifdef __KERNEL__