Lines Matching refs:state
54 static void uart_change_speed(struct tty_struct *tty, struct uart_state *state,
57 static void uart_change_pm(struct uart_state *state,
73 struct uart_state *state = port->state; in uart_write_wakeup() local
78 BUG_ON(!state); in uart_write_wakeup()
79 tty_wakeup(state->port.tty); in uart_write_wakeup()
84 struct uart_state *state = tty->driver_data; in uart_stop() local
85 struct uart_port *port = state->uart_port; in uart_stop()
95 struct uart_state *state = tty->driver_data; in __uart_start() local
96 struct uart_port *port = state->uart_port; in __uart_start()
104 struct uart_state *state = tty->driver_data; in uart_start() local
105 struct uart_port *port = state->uart_port; in uart_start()
134 static int uart_port_startup(struct tty_struct *tty, struct uart_state *state, in uart_port_startup() argument
137 struct uart_port *uport = state->uart_port; in uart_port_startup()
147 uart_change_pm(state, UART_PM_STATE_ON); in uart_port_startup()
153 if (!state->xmit.buf) { in uart_port_startup()
159 state->xmit.buf = (unsigned char *) page; in uart_port_startup()
160 uart_circ_clear(&state->xmit); in uart_port_startup()
172 uart_change_speed(tty, state, NULL); in uart_port_startup()
195 static int uart_startup(struct tty_struct *tty, struct uart_state *state, in uart_startup() argument
198 struct tty_port *port = &state->port; in uart_startup()
210 retval = uart_port_startup(tty, state, init_hw); in uart_startup()
225 static void uart_shutdown(struct tty_struct *tty, struct uart_state *state) in uart_shutdown() argument
227 struct uart_port *uport = state->uart_port; in uart_shutdown()
228 struct tty_port *port = &state->port; in uart_shutdown()
259 if (state->xmit.buf) { in uart_shutdown()
260 free_page((unsigned long)state->xmit.buf); in uart_shutdown()
261 state->xmit.buf = NULL; in uart_shutdown()
443 static void uart_change_speed(struct tty_struct *tty, struct uart_state *state, in uart_change_speed() argument
446 struct uart_port *uport = state->uart_port; in uart_change_speed()
509 struct uart_state *state = tty->driver_data; in uart_put_char() local
511 return __uart_put_char(state->uart_port, &state->xmit, ch); in uart_put_char()
522 struct uart_state *state = tty->driver_data; in uart_write() local
532 if (!state) { in uart_write()
537 port = state->uart_port; in uart_write()
538 circ = &state->xmit; in uart_write()
565 struct uart_state *state = tty->driver_data; in uart_write_room() local
569 spin_lock_irqsave(&state->uart_port->lock, flags); in uart_write_room()
570 ret = uart_circ_chars_free(&state->xmit); in uart_write_room()
571 spin_unlock_irqrestore(&state->uart_port->lock, flags); in uart_write_room()
577 struct uart_state *state = tty->driver_data; in uart_chars_in_buffer() local
581 spin_lock_irqsave(&state->uart_port->lock, flags); in uart_chars_in_buffer()
582 ret = uart_circ_chars_pending(&state->xmit); in uart_chars_in_buffer()
583 spin_unlock_irqrestore(&state->uart_port->lock, flags); in uart_chars_in_buffer()
589 struct uart_state *state = tty->driver_data; in uart_flush_buffer() local
597 if (!state) { in uart_flush_buffer()
602 port = state->uart_port; in uart_flush_buffer()
606 uart_circ_clear(&state->xmit); in uart_flush_buffer()
619 struct uart_state *state = tty->driver_data; in uart_send_xchar() local
620 struct uart_port *port = state->uart_port; in uart_send_xchar()
636 struct uart_state *state = tty->driver_data; in uart_throttle() local
637 struct uart_port *port = state->uart_port; in uart_throttle()
659 struct uart_state *state = tty->driver_data; in uart_unthrottle() local
660 struct uart_port *port = state->uart_port; in uart_unthrottle()
683 struct uart_state *state = container_of(port, struct uart_state, port); in do_uart_get_info() local
684 struct uart_port *uport = state->uart_port; in do_uart_get_info()
730 struct uart_state *state, in uart_set_info() argument
733 struct uart_port *uport = state->uart_port; in uart_set_info()
813 uart_shutdown(tty, state); in uart_set_info()
913 uart_change_speed(tty, state, NULL); in uart_set_info()
916 retval = uart_startup(tty, state, 1); in uart_set_info()
921 static int uart_set_info_user(struct tty_struct *tty, struct uart_state *state, in uart_set_info_user() argument
925 struct tty_port *port = &state->port; in uart_set_info_user()
939 retval = uart_set_info(tty, port, state, &new_serial); in uart_set_info_user()
953 struct uart_state *state, unsigned int __user *value) in uart_get_lsr_info() argument
955 struct uart_port *uport = state->uart_port; in uart_get_lsr_info()
967 ((uart_circ_chars_pending(&state->xmit) > 0) && in uart_get_lsr_info()
976 struct uart_state *state = tty->driver_data; in uart_tiocmget() local
977 struct tty_port *port = &state->port; in uart_tiocmget()
978 struct uart_port *uport = state->uart_port; in uart_tiocmget()
996 struct uart_state *state = tty->driver_data; in uart_tiocmset() local
997 struct uart_port *uport = state->uart_port; in uart_tiocmset()
998 struct tty_port *port = &state->port; in uart_tiocmset()
1012 struct uart_state *state = tty->driver_data; in uart_break_ctl() local
1013 struct tty_port *port = &state->port; in uart_break_ctl()
1014 struct uart_port *uport = state->uart_port; in uart_break_ctl()
1025 static int uart_do_autoconfig(struct tty_struct *tty,struct uart_state *state) in uart_do_autoconfig() argument
1027 struct uart_port *uport = state->uart_port; in uart_do_autoconfig()
1028 struct tty_port *port = &state->port; in uart_do_autoconfig()
1044 uart_shutdown(tty, state); in uart_do_autoconfig()
1063 ret = uart_startup(tty, state, 1); in uart_do_autoconfig()
1088 uart_wait_modem_status(struct uart_state *state, unsigned long arg) in uart_wait_modem_status() argument
1090 struct uart_port *uport = state->uart_port; in uart_wait_modem_status()
1091 struct tty_port *port = &state->port; in uart_wait_modem_status()
1145 struct uart_state *state = tty->driver_data; in uart_get_icount() local
1147 struct uart_port *uport = state->uart_port; in uart_get_icount()
1216 struct uart_state *state = tty->driver_data; in uart_ioctl() local
1217 struct tty_port *port = &state->port; in uart_ioctl()
1232 ret = uart_set_info_user(tty, state, uarg); in uart_ioctl()
1238 ret = uart_do_autoconfig(tty, state); in uart_ioctl()
1261 ret = uart_wait_modem_status(state, arg); in uart_ioctl()
1282 ret = uart_get_lsr_info(tty, state, uarg); in uart_ioctl()
1286 ret = uart_get_rs485_config(state->uart_port, uarg); in uart_ioctl()
1290 ret = uart_set_rs485_config(state->uart_port, uarg); in uart_ioctl()
1293 struct uart_port *uport = state->uart_port; in uart_ioctl()
1307 struct uart_state *state = tty->driver_data; in uart_set_ldisc() local
1308 struct uart_port *uport = state->uart_port; in uart_set_ldisc()
1311 mutex_lock(&state->port.mutex); in uart_set_ldisc()
1313 mutex_unlock(&state->port.mutex); in uart_set_ldisc()
1320 struct uart_state *state = tty->driver_data; in uart_set_termios() local
1321 struct uart_port *uport = state->uart_port; in uart_set_termios()
1351 mutex_lock(&state->port.mutex); in uart_set_termios()
1352 uart_change_speed(tty, state, old_termios); in uart_set_termios()
1353 mutex_unlock(&state->port.mutex); in uart_set_termios()
1377 struct uart_state *state = tty->driver_data; in uart_close() local
1381 if (!state) { in uart_close()
1384 state = drv->state + tty->index; in uart_close()
1385 port = &state->port; in uart_close()
1392 uport = state->uart_port; in uart_close()
1393 port = &state->port; in uart_close()
1417 uart_shutdown(tty, state); in uart_close()
1429 uart_change_pm(state, UART_PM_STATE_OFF); in uart_close()
1449 struct uart_state *state = tty->driver_data; in uart_wait_until_sent() local
1450 struct uart_port *port = state->uart_port; in uart_wait_until_sent()
1509 struct uart_state *state = tty->driver_data; in uart_hangup() local
1510 struct tty_port *port = &state->port; in uart_hangup()
1513 pr_debug("uart_hangup(%d)\n", state->uart_port->line); in uart_hangup()
1518 uart_shutdown(tty, state); in uart_hangup()
1524 if (!uart_console(state->uart_port)) in uart_hangup()
1525 uart_change_pm(state, UART_PM_STATE_OFF); in uart_hangup()
1534 struct uart_state *state = container_of(port, struct uart_state, port); in uart_port_shutdown() local
1535 struct uart_port *uport = state->uart_port; in uart_port_shutdown()
1559 struct uart_state *state = container_of(port, struct uart_state, port); in uart_carrier_raised() local
1560 struct uart_port *uport = state->uart_port; in uart_carrier_raised()
1573 struct uart_state *state = container_of(port, struct uart_state, port); in uart_dtr_rts() local
1574 struct uart_port *uport = state->uart_port; in uart_dtr_rts()
1596 struct uart_state *state = drv->state + line; in uart_open() local
1597 struct tty_port *port = &state->port; in uart_open()
1617 if (!state->uart_port || state->uart_port->flags & UPF_DEAD) { in uart_open()
1622 tty->driver_data = state; in uart_open()
1623 state->uart_port->state = state; in uart_open()
1624 state->port.low_latency = in uart_open()
1625 (state->uart_port->flags & UPF_LOW_LATENCY) ? 1 : 0; in uart_open()
1631 retval = uart_startup(tty, state, 0); in uart_open()
1664 struct uart_state *state = drv->state + i; in uart_line_info() local
1665 struct tty_port *port = &state->port; in uart_line_info()
1667 struct uart_port *uport = state->uart_port; in uart_line_info()
1690 pm_state = state->pm_state; in uart_line_info()
1692 uart_change_pm(state, UART_PM_STATE_ON); in uart_line_info()
1697 uart_change_pm(state, pm_state); in uart_line_info()
2000 static void uart_change_pm(struct uart_state *state, in uart_change_pm() argument
2003 struct uart_port *port = state->uart_port; in uart_change_pm()
2005 if (state->pm_state != pm_state) { in uart_change_pm()
2007 port->ops->pm(port, pm_state, state->pm_state); in uart_change_pm()
2008 state->pm_state = pm_state; in uart_change_pm()
2029 struct uart_state *state = drv->state + uport->line; in uart_suspend_port() local
2030 struct tty_port *port = &state->port; in uart_suspend_port()
2084 uart_change_pm(state, UART_PM_STATE_OFF); in uart_suspend_port()
2093 struct uart_state *state = drv->state + uport->line; in uart_resume_port() local
2094 struct tty_port *port = &state->port; in uart_resume_port()
2131 uart_change_pm(state, UART_PM_STATE_ON); in uart_resume_port()
2141 uart_change_pm(state, UART_PM_STATE_ON); in uart_resume_port()
2151 uart_change_speed(tty, state, NULL); in uart_resume_port()
2163 uart_shutdown(tty, state); in uart_resume_port()
2210 uart_configure_port(struct uart_driver *drv, struct uart_state *state, in uart_configure_port() argument
2242 uart_change_pm(state, UART_PM_STATE_ON); in uart_configure_port()
2266 uart_change_pm(state, UART_PM_STATE_OFF); in uart_configure_port()
2275 struct uart_state *state = drv->state + line; in uart_poll_init() local
2283 if (!state || !state->uart_port) in uart_poll_init()
2286 port = state->uart_port; in uart_poll_init()
2291 struct tty_port *tport = &state->port; in uart_poll_init()
2317 struct uart_state *state = drv->state + line; in uart_poll_get_char() local
2320 if (!state || !state->uart_port) in uart_poll_get_char()
2323 port = state->uart_port; in uart_poll_get_char()
2330 struct uart_state *state = drv->state + line; in uart_poll_put_char() local
2333 if (!state || !state->uart_port) in uart_poll_put_char()
2336 port = state->uart_port; in uart_poll_put_char()
2400 BUG_ON(drv->state); in uart_register_driver()
2406 drv->state = kzalloc(sizeof(struct uart_state) * drv->nr, GFP_KERNEL); in uart_register_driver()
2407 if (!drv->state) in uart_register_driver()
2433 struct uart_state *state = drv->state + i; in uart_register_driver() local
2434 struct tty_port *port = &state->port; in uart_register_driver()
2445 tty_port_destroy(&drv->state[i].port); in uart_register_driver()
2448 kfree(drv->state); in uart_register_driver()
2470 tty_port_destroy(&drv->state[i].port); in uart_unregister_driver()
2471 kfree(drv->state); in uart_unregister_driver()
2472 drv->state = NULL; in uart_unregister_driver()
2665 struct uart_state *state; in uart_add_one_port() local
2676 state = drv->state + uport->line; in uart_add_one_port()
2677 port = &state->port; in uart_add_one_port()
2681 if (state->uart_port) { in uart_add_one_port()
2687 state->uart_port = uport; in uart_add_one_port()
2688 uport->state = state; in uart_add_one_port()
2690 state->pm_state = UART_PM_STATE_UNDEFINED; in uart_add_one_port()
2705 uart_configure_port(drv, state, uport); in uart_add_one_port()
2757 struct uart_state *state = drv->state + uport->line; in uart_remove_one_port() local
2758 struct tty_port *port = &state->port; in uart_remove_one_port()
2764 if (state->uart_port != uport) in uart_remove_one_port()
2766 state->uart_port, uport); in uart_remove_one_port()
2775 if (!state->uart_port) { in uart_remove_one_port()
2812 state->uart_port = NULL; in uart_remove_one_port()
2853 struct tty_port *port = &uport->state->port; in uart_handle_dcd_change()
2925 struct tty_port *tport = &port->state->port; in uart_insert_char()