forked from Minki/linux
TTY: serial, remove tasklet for tty_wakeup
tty_wakeup can be called from any context. So there is no need to have an extra tasklet for calling that. Hence save some space and remove the tasklet completely. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Cc: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
e150c4ccbe
commit
6a3e492b6d
@ -72,7 +72,7 @@ void uart_write_wakeup(struct uart_port *port)
|
||||
* closed. No cookie for you.
|
||||
*/
|
||||
BUG_ON(!state);
|
||||
tasklet_schedule(&state->tlet);
|
||||
tty_wakeup(state->port.tty);
|
||||
}
|
||||
|
||||
static void uart_stop(struct tty_struct *tty)
|
||||
@ -107,12 +107,6 @@ static void uart_start(struct tty_struct *tty)
|
||||
spin_unlock_irqrestore(&port->lock, flags);
|
||||
}
|
||||
|
||||
static void uart_tasklet_action(unsigned long data)
|
||||
{
|
||||
struct uart_state *state = (struct uart_state *)data;
|
||||
tty_wakeup(state->port.tty);
|
||||
}
|
||||
|
||||
static inline void
|
||||
uart_update_mctrl(struct uart_port *port, unsigned int set, unsigned int clear)
|
||||
{
|
||||
@ -249,11 +243,6 @@ static void uart_shutdown(struct tty_struct *tty, struct uart_state *state)
|
||||
synchronize_irq(uport->irq);
|
||||
}
|
||||
|
||||
/*
|
||||
* kill off our tasklet
|
||||
*/
|
||||
tasklet_kill(&state->tlet);
|
||||
|
||||
/*
|
||||
* Free the transmit buffer page.
|
||||
*/
|
||||
@ -2277,8 +2266,6 @@ int uart_register_driver(struct uart_driver *drv)
|
||||
port->ops = &uart_port_ops;
|
||||
port->close_delay = 500; /* .5 seconds */
|
||||
port->closing_wait = 30000; /* 30 seconds */
|
||||
tasklet_init(&state->tlet, uart_tasklet_action,
|
||||
(unsigned long)state);
|
||||
}
|
||||
|
||||
retval = tty_register_driver(normal);
|
||||
@ -2439,11 +2426,6 @@ int uart_remove_one_port(struct uart_driver *drv, struct uart_port *uport)
|
||||
*/
|
||||
uport->type = PORT_UNKNOWN;
|
||||
|
||||
/*
|
||||
* Kill the tasklet, and free resources.
|
||||
*/
|
||||
tasklet_kill(&state->tlet);
|
||||
|
||||
state->uart_port = NULL;
|
||||
mutex_unlock(&port_mutex);
|
||||
|
||||
|
@ -384,7 +384,6 @@ struct uart_state {
|
||||
int pm_state;
|
||||
struct circ_buf xmit;
|
||||
|
||||
struct tasklet_struct tlet;
|
||||
struct uart_port *uart_port;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user