Re: [OpenWrt-Devel] [PATCH] kernel/generic: 3.18, 4.y: Add support for Quectel EC20 Mini PCIe module
Thanks, i dropped the 4.0 part as we dont have that in trunk anymore John On 11/11/2015 14:18, Petr Štetiar wrote: > * both patches (qcserial/qmi_wwan) were submitted upstream[1,2] > * build tested on 3.18 and 4.1 > * run tested on imx6 platform with 4.1 > > 1. http://article.gmane.org/gmane.linux.usb.general/132998 > 2. http://article.gmane.org/gmane.linux.usb.general/133113 > > Signed-off-by: Petr Štetiar > --- > ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 > > ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + > ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 > > ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + > ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 > > ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + > ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 > > ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + > 8 files changed, 880 insertions(+) > create mode 100644 > target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > create mode 100644 > target/linux/generic/patches-3.18/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch > create mode 100644 > target/linux/generic/patches-4.0/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > create mode 100644 > target/linux/generic/patches-4.0/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch > create mode 100644 > target/linux/generic/patches-4.1/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > create mode 100644 > target/linux/generic/patches-4.1/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch > create mode 100644 > target/linux/generic/patches-4.3/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > create mode 100644 > target/linux/generic/patches-4.3/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch > > diff --git > a/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > > b/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > new file mode 100644 > index 000..f56941c > --- /dev/null > +++ > b/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch > @@ -0,0 +1,119 @@ > +From 128524b9db3e4f4245226852bee771bd03db75be Mon Sep 17 00:00:00 2001 > +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= > +Date: Tue, 3 Nov 2015 11:01:42 +0100 > +Subject: [PATCH 1/2] USB: qcserial: Add support for Quectel EC20 Mini PCIe > + module > +MIME-Version: 1.0 > +Content-Type: text/plain; charset=UTF-8 > +Content-Transfer-Encoding: 8bit > + > +It seems like this device has same vendor and product IDs as G2K > +devices, but it has different number of interfaces(4 vs 5) and also > +different interface layout which makes it currently unusable: > + > + usbcore: registered new interface driver qcserial > + usbserial: USB Serial support registered for Qualcomm USB modem > + usb 2-1.2: unknown number of interfaces: 5 > + > +lsusb output: > + > + Bus 002 Device 003: ID 05c6:9215 Qualcomm, Inc. Acer Gobi 2000 Wireless > + Device Descriptor: > + bLength18 > + bDescriptorType 1 > + bcdUSB 2.00 > + bDeviceClass0 (Defined at Interface level) > + bDeviceSubClass 0 > + bDeviceProtocol 0 > + bMaxPacketSize064 > + idVendor 0x05c6 Qualcomm, Inc. > + idProduct 0x9215 Acer Gobi 2000 Wireless Modem > + bcdDevice2.32 > + iManufacturer 1 Quectel > + iProduct2 Quectel LTE Module > + iSerial 0 > + bNumConfigurations 1 > + Configuration Descriptor: > + bLength 9 > + bDescriptorType 2 > + wTotalLength 209 > + bNumInterfaces 5 > + bConfigurationValue 1 > + iConfiguration 0 > + bmAttributes 0xa0 > + (Bus Powered) > + Remote Wakeup > + MaxPower 500mA > + > +Signed-off-by: Petr Štetiar > +--- > + drivers/usb/serial/qcserial.c | 39 +++ > + 1 file changed, 39 insertions(+) > + > +diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c > +index ebcec8c..d462132 100644 > +--- a/drivers/usb/serial/qcserial.c > b/drivers/usb/serial/qcserial.c > +@@ -22,6 +22,8 @@ > + #define DRIVER_AUTHOR "Qualcomm Inc" > + #define DRIVER_DESC "Qualcomm USB Serial driver" > + > ++#define QUECTEL_EC20_IDPRODUCT 0x9215 > ++ > + /* standard device layouts supported by this driver */ > + enum qcserial_layouts { > + QC
[OpenWrt-Devel] [PATCH] kernel/generic: 3.18, 4.y: Add support for Quectel EC20 Mini PCIe module
* both patches (qcserial/qmi_wwan) were submitted upstream[1,2] * build tested on 3.18 and 4.1 * run tested on imx6 platform with 4.1 1. http://article.gmane.org/gmane.linux.usb.general/132998 2. http://article.gmane.org/gmane.linux.usb.general/133113 Signed-off-by: Petr Štetiar --- ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + ...l-Add-support-for-Quectel-EC20-Mini-PCIe-.patch | 119 ...n-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch | 101 + 8 files changed, 880 insertions(+) create mode 100644 target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch create mode 100644 target/linux/generic/patches-3.18/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch create mode 100644 target/linux/generic/patches-4.0/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch create mode 100644 target/linux/generic/patches-4.0/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch create mode 100644 target/linux/generic/patches-4.1/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch create mode 100644 target/linux/generic/patches-4.1/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch create mode 100644 target/linux/generic/patches-4.3/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch create mode 100644 target/linux/generic/patches-4.3/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch diff --git a/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch b/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch new file mode 100644 index 000..f56941c --- /dev/null +++ b/target/linux/generic/patches-3.18/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch @@ -0,0 +1,119 @@ +From 128524b9db3e4f4245226852bee771bd03db75be Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Petr=20=C5=A0tetiar?= +Date: Tue, 3 Nov 2015 11:01:42 +0100 +Subject: [PATCH 1/2] USB: qcserial: Add support for Quectel EC20 Mini PCIe + module +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +It seems like this device has same vendor and product IDs as G2K +devices, but it has different number of interfaces(4 vs 5) and also +different interface layout which makes it currently unusable: + + usbcore: registered new interface driver qcserial + usbserial: USB Serial support registered for Qualcomm USB modem + usb 2-1.2: unknown number of interfaces: 5 + +lsusb output: + + Bus 002 Device 003: ID 05c6:9215 Qualcomm, Inc. Acer Gobi 2000 Wireless + Device Descriptor: + bLength18 + bDescriptorType 1 + bcdUSB 2.00 + bDeviceClass0 (Defined at Interface level) + bDeviceSubClass 0 + bDeviceProtocol 0 + bMaxPacketSize064 + idVendor 0x05c6 Qualcomm, Inc. + idProduct 0x9215 Acer Gobi 2000 Wireless Modem + bcdDevice2.32 + iManufacturer 1 Quectel + iProduct2 Quectel LTE Module + iSerial 0 + bNumConfigurations 1 + Configuration Descriptor: + bLength 9 + bDescriptorType 2 + wTotalLength 209 + bNumInterfaces 5 + bConfigurationValue 1 + iConfiguration 0 + bmAttributes 0xa0 + (Bus Powered) + Remote Wakeup + MaxPower 500mA + +Signed-off-by: Petr Štetiar +--- + drivers/usb/serial/qcserial.c | 39 +++ + 1 file changed, 39 insertions(+) + +diff --git a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c +index ebcec8c..d462132 100644 +--- a/drivers/usb/serial/qcserial.c b/drivers/usb/serial/qcserial.c +@@ -22,6 +22,8 @@ + #define DRIVER_AUTHOR "Qualcomm Inc" + #define DRIVER_DESC "Qualcomm USB Serial driver" + ++#define QUECTEL_EC20_IDPRODUCT 0x9215 ++ + /* standard device layouts supported by this driver */ + enum qcserial_layouts { + QCSERIAL_G2K = 0, /* Gobi 2000 */ +@@ -167,6 +169,38 @@ static const struct usb_device_id id_table[] = { + }; + MODULE_DEVICE_TABLE(usb, id_table); + ++static int handle_quectel_ec20(struct device *dev, int ifnum) ++{ ++ int altsetting = 0; ++ ++ /* ++ * Quectel EC20 Mini P