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

Commit 9f10adc5 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'usb-serial-3.19-rc1' of...

Merge tag 'usb-serial-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/johan/usb-serial

 into usb-next

Johan writes:

USB-serial updates for v3.19-rc1

These changes add a new "simple" driver for Google USB-serial
devices and add support for Huawei Gobi modems to qcserial.

Included are also some removals of unnecessary atomic allocations and
a few spelling fixes.

Signed-off-by: default avatarJohan Hovold <johan@kernel.org>
parents 6629467b e7181d00
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -145,7 +145,7 @@ Keyspan PDA Serial Adapter
  Single port DB-9 serial adapter, pushed as a PDA adapter for iMacs (mostly
  Single port DB-9 serial adapter, pushed as a PDA adapter for iMacs (mostly
  sold in Macintosh catalogs, comes in a translucent white/green dongle).
  sold in Macintosh catalogs, comes in a translucent white/green dongle).
  Fairly simple device. Firmware is homebrew.
  Fairly simple device. Firmware is homebrew.
  This driver also works for the Xircom/Entrgra single port serial adapter.
  This driver also works for the Xircom/Entrega single port serial adapter.


  Current status:
  Current status:
   Things that work:
   Things that work:
+3 −2
Original line number Original line Diff line number Diff line
@@ -60,6 +60,7 @@ config USB_SERIAL_SIMPLE
		- Suunto ANT+ USB device.
		- Suunto ANT+ USB device.
		- Medtronic CareLink USB device
		- Medtronic CareLink USB device
		- Fundamental Software dongle.
		- Fundamental Software dongle.
		- Google USB serial devices
		- HP4x calculators
		- HP4x calculators
		- a number of Motorola phones
		- a number of Motorola phones
		- Novatel Wireless GPS receivers
		- Novatel Wireless GPS receivers
@@ -606,10 +607,10 @@ config USB_SERIAL_CYBERJACK
	  If unsure, say N.
	  If unsure, say N.


config USB_SERIAL_XIRCOM
config USB_SERIAL_XIRCOM
	tristate "USB Xircom / Entregra Single Port Serial Driver"
	tristate "USB Xircom / Entrega Single Port Serial Driver"
	select USB_EZUSB_FX2
	select USB_EZUSB_FX2
	help
	help
	  Say Y here if you want to use a Xircom or Entregra single port USB to
	  Say Y here if you want to use a Xircom or Entrega single port USB to
	  serial converter device.  This driver makes use of firmware
	  serial converter device.  This driver makes use of firmware
	  developed from scratch by Brian Warner.
	  developed from scratch by Brian Warner.


+8 −8
Original line number Original line Diff line number Diff line
/*
/*
 * USB Keyspan PDA / Xircom / Entregra Converter driver
 * USB Keyspan PDA / Xircom / Entrega Converter driver
 *
 *
 * Copyright (C) 1999 - 2001 Greg Kroah-Hartman	<greg@kroah.com>
 * Copyright (C) 1999 - 2001 Greg Kroah-Hartman	<greg@kroah.com>
 * Copyright (C) 1999, 2000 Brian Warner	<warner@lothar.com>
 * Copyright (C) 1999, 2000 Brian Warner	<warner@lothar.com>
@@ -58,11 +58,11 @@ struct keyspan_pda_private {
#define KEYSPAN_PDA_FAKE_ID		0x0103
#define KEYSPAN_PDA_FAKE_ID		0x0103
#define KEYSPAN_PDA_ID			0x0104 /* no clue */
#define KEYSPAN_PDA_ID			0x0104 /* no clue */


/* For Xircom PGSDB9 and older Entregra version of the same device */
/* For Xircom PGSDB9 and older Entrega version of the same device */
#define XIRCOM_VENDOR_ID		0x085a
#define XIRCOM_VENDOR_ID		0x085a
#define XIRCOM_FAKE_ID			0x8027
#define XIRCOM_FAKE_ID			0x8027
#define ENTREGRA_VENDOR_ID		0x1645
#define ENTREGA_VENDOR_ID		0x1645
#define ENTREGRA_FAKE_ID		0x8093
#define ENTREGA_FAKE_ID			0x8093


static const struct usb_device_id id_table_combined[] = {
static const struct usb_device_id id_table_combined[] = {
#ifdef KEYSPAN
#ifdef KEYSPAN
@@ -70,7 +70,7 @@ static const struct usb_device_id id_table_combined[] = {
#endif
#endif
#ifdef XIRCOM
#ifdef XIRCOM
	{ USB_DEVICE(XIRCOM_VENDOR_ID, XIRCOM_FAKE_ID) },
	{ USB_DEVICE(XIRCOM_VENDOR_ID, XIRCOM_FAKE_ID) },
	{ USB_DEVICE(ENTREGRA_VENDOR_ID, ENTREGRA_FAKE_ID) },
	{ USB_DEVICE(ENTREGA_VENDOR_ID, ENTREGA_FAKE_ID) },
#endif
#endif
	{ USB_DEVICE(KEYSPAN_VENDOR_ID, KEYSPAN_PDA_ID) },
	{ USB_DEVICE(KEYSPAN_VENDOR_ID, KEYSPAN_PDA_ID) },
	{ }						/* Terminating entry */
	{ }						/* Terminating entry */
@@ -93,7 +93,7 @@ static const struct usb_device_id id_table_fake[] = {
#ifdef XIRCOM
#ifdef XIRCOM
static const struct usb_device_id id_table_fake_xircom[] = {
static const struct usb_device_id id_table_fake_xircom[] = {
	{ USB_DEVICE(XIRCOM_VENDOR_ID, XIRCOM_FAKE_ID) },
	{ USB_DEVICE(XIRCOM_VENDOR_ID, XIRCOM_FAKE_ID) },
	{ USB_DEVICE(ENTREGRA_VENDOR_ID, ENTREGRA_FAKE_ID) },
	{ USB_DEVICE(ENTREGA_VENDOR_ID, ENTREGA_FAKE_ID) },
	{ }
	{ }
};
};
#endif
#endif
@@ -667,7 +667,7 @@ static int keyspan_pda_fake_startup(struct usb_serial *serial)
#endif
#endif
#ifdef XIRCOM
#ifdef XIRCOM
	else if ((le16_to_cpu(serial->dev->descriptor.idVendor) == XIRCOM_VENDOR_ID) ||
	else if ((le16_to_cpu(serial->dev->descriptor.idVendor) == XIRCOM_VENDOR_ID) ||
		 (le16_to_cpu(serial->dev->descriptor.idVendor) == ENTREGRA_VENDOR_ID))
		 (le16_to_cpu(serial->dev->descriptor.idVendor) == ENTREGA_VENDOR_ID))
		fw_name = "keyspan_pda/xircom_pgs.fw";
		fw_name = "keyspan_pda/xircom_pgs.fw";
#endif
#endif
	else {
	else {
@@ -744,7 +744,7 @@ static struct usb_serial_driver xircom_pgs_fake_device = {
		.owner =	THIS_MODULE,
		.owner =	THIS_MODULE,
		.name =		"xircom_no_firm",
		.name =		"xircom_no_firm",
	},
	},
	.description =		"Xircom / Entregra PGS - (prerenumeration)",
	.description =		"Xircom / Entrega PGS - (prerenumeration)",
	.id_table =		id_table_fake_xircom,
	.id_table =		id_table_fake_xircom,
	.num_ports =		1,
	.num_ports =		1,
	.attach =		keyspan_pda_fake_startup,
	.attach =		keyspan_pda_fake_startup,
+1 −1
Original line number Original line Diff line number Diff line
@@ -244,7 +244,7 @@ static int kobil_open(struct tty_struct *tty, struct usb_serial_port *port)
	    priv->device_type == KOBIL_ADAPTER_B_PRODUCT_ID ||
	    priv->device_type == KOBIL_ADAPTER_B_PRODUCT_ID ||
	    priv->device_type == KOBIL_KAAN_SIM_PRODUCT_ID) {
	    priv->device_type == KOBIL_KAAN_SIM_PRODUCT_ID) {
		/* start reading (Adapter B 'cause PNP string) */
		/* start reading (Adapter B 'cause PNP string) */
		result = usb_submit_urb(port->interrupt_in_urb, GFP_ATOMIC);
		result = usb_submit_urb(port->interrupt_in_urb, GFP_KERNEL);
		dev_dbg(dev, "%s - Send read URB returns: %i\n", __func__, result);
		dev_dbg(dev, "%s - Send read URB returns: %i\n", __func__, result);
	}
	}


+2 −2
Original line number Original line Diff line number Diff line
@@ -1657,7 +1657,7 @@ static void change_port_settings(struct tty_struct *tty,
	write_mos_reg(serial, port_number, IER, 0x0c);
	write_mos_reg(serial, port_number, IER, 0x0c);


	if (port->read_urb->status != -EINPROGRESS) {
	if (port->read_urb->status != -EINPROGRESS) {
		status = usb_submit_urb(port->read_urb, GFP_ATOMIC);
		status = usb_submit_urb(port->read_urb, GFP_KERNEL);
		if (status)
		if (status)
			dev_dbg(&port->dev, "usb_submit_urb(read bulk) failed, status = %d\n", status);
			dev_dbg(&port->dev, "usb_submit_urb(read bulk) failed, status = %d\n", status);
	}
	}
@@ -1702,7 +1702,7 @@ static void mos7720_set_termios(struct tty_struct *tty,
	change_port_settings(tty, mos7720_port, old_termios);
	change_port_settings(tty, mos7720_port, old_termios);


	if (port->read_urb->status != -EINPROGRESS) {
	if (port->read_urb->status != -EINPROGRESS) {
		status = usb_submit_urb(port->read_urb, GFP_ATOMIC);
		status = usb_submit_urb(port->read_urb, GFP_KERNEL);
		if (status)
		if (status)
			dev_dbg(&port->dev, "usb_submit_urb(read bulk) failed, status = %d\n", status);
			dev_dbg(&port->dev, "usb_submit_urb(read bulk) failed, status = %d\n", status);
	}
	}
Loading