|
@@ -2743,6 +2743,8 @@ EXPORT_SYMBOL(uart_match_port);
|
|
|
* uart_handle_dcd_change - handle a change of carrier detect state
|
|
|
* @uport: uart_port structure for the open port
|
|
|
* @status: new carrier detect status, nonzero if active
|
|
|
+ *
|
|
|
+ * Caller must hold uport->lock
|
|
|
*/
|
|
|
void uart_handle_dcd_change(struct uart_port *uport, unsigned int status)
|
|
|
{
|
|
@@ -2750,6 +2752,8 @@ void uart_handle_dcd_change(struct uart_port *uport, unsigned int status)
|
|
|
struct tty_struct *tty = port->tty;
|
|
|
struct tty_ldisc *ld;
|
|
|
|
|
|
+ lockdep_assert_held_once(&uport->lock);
|
|
|
+
|
|
|
if (tty) {
|
|
|
ld = tty_ldisc_ref(tty);
|
|
|
if (ld) {
|
|
@@ -2774,12 +2778,16 @@ EXPORT_SYMBOL_GPL(uart_handle_dcd_change);
|
|
|
* uart_handle_cts_change - handle a change of clear-to-send state
|
|
|
* @uport: uart_port structure for the open port
|
|
|
* @status: new clear to send status, nonzero if active
|
|
|
+ *
|
|
|
+ * Caller must hold uport->lock
|
|
|
*/
|
|
|
void uart_handle_cts_change(struct uart_port *uport, unsigned int status)
|
|
|
{
|
|
|
struct tty_port *port = &uport->state->port;
|
|
|
struct tty_struct *tty = port->tty;
|
|
|
|
|
|
+ lockdep_assert_held_once(&uport->lock);
|
|
|
+
|
|
|
uport->icount.cts++;
|
|
|
|
|
|
if (tty_port_cts_enabled(port)) {
|