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

Commit 7620c33a authored by Johan Hovold's avatar Johan Hovold Committed by Greg Kroah-Hartman
Browse files

USB: visor: always disable uart on close



Always try to disable the uart on close.

Since the switch to tty ports, close will be called as part of shutdown
before disconnect returns. Hence there is no need to check the
disconnected flag, and we can put devices in disabled states also on
driver unbind.

Signed-off-by: default avatarJohan Hovold <jhovold@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 81ae1b3c
Loading
Loading
Loading
Loading
+5 −11
Original line number Original line Diff line number Diff line
@@ -257,15 +257,12 @@ static void visor_close(struct usb_serial_port *port)
{
{
	unsigned char *transfer_buffer;
	unsigned char *transfer_buffer;


	/* shutdown our urbs */
	usb_serial_generic_close(port);
	usb_serial_generic_close(port);
	usb_kill_urb(port->interrupt_in_urb);
	usb_kill_urb(port->interrupt_in_urb);


	mutex_lock(&port->serial->disc_mutex);
	if (!port->serial->disconnected) {
		/* Try to send shutdown message, unless the device is gone */
	transfer_buffer = kmalloc(0x12, GFP_KERNEL);
	transfer_buffer = kmalloc(0x12, GFP_KERNEL);
		if (transfer_buffer) {
	if (!transfer_buffer)
		return;
	usb_control_msg(port->serial->dev,
	usb_control_msg(port->serial->dev,
					 usb_rcvctrlpipe(port->serial->dev, 0),
					 usb_rcvctrlpipe(port->serial->dev, 0),
					 VISOR_CLOSE_NOTIFICATION, 0xc2,
					 VISOR_CLOSE_NOTIFICATION, 0xc2,
@@ -273,9 +270,6 @@ static void visor_close(struct usb_serial_port *port)
					 transfer_buffer, 0x12, 300);
					 transfer_buffer, 0x12, 300);
	kfree(transfer_buffer);
	kfree(transfer_buffer);
}
}
	}
	mutex_unlock(&port->serial->disc_mutex);
}


static void visor_read_int_callback(struct urb *urb)
static void visor_read_int_callback(struct urb *urb)
{
{