Merge HEAD from master.kernel.org:/home/rmk/linux-2.6-serial
This commit is contained in:
@@ -176,10 +176,6 @@ struct serial_icounter_struct {
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/compiler.h>
|
||||
|
||||
/* Export to allow PCMCIA to use this - Dave Hinds */
|
||||
extern int __deprecated register_serial(struct serial_struct *req);
|
||||
extern void __deprecated unregister_serial(int line);
|
||||
|
||||
/* Allow architectures to override entries in serial8250_ports[] at run time: */
|
||||
struct uart_port; /* forward declaration */
|
||||
extern int early_serial_setup(struct uart_port *port);
|
||||
|
@@ -14,6 +14,9 @@
|
||||
#include <linux/serial_core.h>
|
||||
#include <linux/device.h>
|
||||
|
||||
/*
|
||||
* This is the platform device platform_data structure
|
||||
*/
|
||||
struct plat_serial8250_port {
|
||||
unsigned long iobase; /* io base address */
|
||||
void __iomem *membase; /* ioremap cookie or NULL */
|
||||
@@ -26,4 +29,17 @@ struct plat_serial8250_port {
|
||||
unsigned int flags; /* UPF_* flags */
|
||||
};
|
||||
|
||||
/*
|
||||
* This should be used by drivers which want to register
|
||||
* their own 8250 ports without registering their own
|
||||
* platform device. Using these will make your driver
|
||||
* dependent on the 8250 driver.
|
||||
*/
|
||||
struct uart_port;
|
||||
|
||||
int serial8250_register_port(struct uart_port *);
|
||||
void serial8250_unregister_port(int line);
|
||||
void serial8250_suspend_port(int line);
|
||||
void serial8250_resume_port(int line);
|
||||
|
||||
#endif
|
||||
|
@@ -142,8 +142,8 @@ struct uart_ops {
|
||||
unsigned int (*tx_empty)(struct uart_port *);
|
||||
void (*set_mctrl)(struct uart_port *, unsigned int mctrl);
|
||||
unsigned int (*get_mctrl)(struct uart_port *);
|
||||
void (*stop_tx)(struct uart_port *, unsigned int tty_stop);
|
||||
void (*start_tx)(struct uart_port *, unsigned int tty_start);
|
||||
void (*stop_tx)(struct uart_port *);
|
||||
void (*start_tx)(struct uart_port *);
|
||||
void (*send_xchar)(struct uart_port *, char ch);
|
||||
void (*stop_rx)(struct uart_port *);
|
||||
void (*enable_ms)(struct uart_port *);
|
||||
@@ -360,8 +360,6 @@ struct tty_driver *uart_console_device(struct console *co, int *index);
|
||||
*/
|
||||
int uart_register_driver(struct uart_driver *uart);
|
||||
void uart_unregister_driver(struct uart_driver *uart);
|
||||
void __deprecated uart_unregister_port(struct uart_driver *reg, int line);
|
||||
int __deprecated uart_register_port(struct uart_driver *reg, struct uart_port *port);
|
||||
int uart_add_one_port(struct uart_driver *reg, struct uart_port *port);
|
||||
int uart_remove_one_port(struct uart_driver *reg, struct uart_port *port);
|
||||
int uart_match_port(struct uart_port *port1, struct uart_port *port2);
|
||||
@@ -468,13 +466,13 @@ uart_handle_cts_change(struct uart_port *port, unsigned int status)
|
||||
if (tty->hw_stopped) {
|
||||
if (status) {
|
||||
tty->hw_stopped = 0;
|
||||
port->ops->start_tx(port, 0);
|
||||
port->ops->start_tx(port);
|
||||
uart_write_wakeup(port);
|
||||
}
|
||||
} else {
|
||||
if (!status) {
|
||||
tty->hw_stopped = 1;
|
||||
port->ops->stop_tx(port, 0);
|
||||
port->ops->stop_tx(port);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user