summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Tran <btran@multitech.com>2015-01-26 14:55:05 -0600
committerJesse Gilles <jgilles@multitech.com>2015-01-28 15:16:43 -0600
commit2d5f90b0f66b465ff17b757a563bc8253ca6d51b (patch)
treeb60afd7e2a7bf978279537ef09f7296c51718203
parent8ef145951b6b5404407f0c4964c2449e078e8215 (diff)
linux-2.6.35:linux-2.6.35.14-option-telit-20150120.patch: Add Telit LTE patch
udev-165: Add LTE radio rules
-rw-r--r--multitech/recipes/linux/linux-2.6.35/linux-2.6.35.14-option-telit-20150120.patch43
-rw-r--r--multitech/recipes/linux/linux_2.6.35.bbappend3
-rw-r--r--multitech/recipes/udev/udev-165/corecdp/corecdp.rules3
-rw-r--r--multitech/recipes/udev/udev_165.bbappend2
4 files changed, 49 insertions, 2 deletions
diff --git a/multitech/recipes/linux/linux-2.6.35/linux-2.6.35.14-option-telit-20150120.patch b/multitech/recipes/linux/linux-2.6.35/linux-2.6.35.14-option-telit-20150120.patch
new file mode 100644
index 0000000..7e73340
--- /dev/null
+++ b/multitech/recipes/linux/linux-2.6.35/linux-2.6.35.14-option-telit-20150120.patch
@@ -0,0 +1,43 @@
+Index: linux-2.6.35/drivers/usb/serial/option.c
+===================================================================
+--- linux-2.6.35.orig/drivers/usb/serial/option.c
++++ linux-2.6.35/drivers/usb/serial/option.c
+@@ -279,6 +279,13 @@ static void option_instat_callback(struc
+ #define TELIT_VENDOR_ID 0x1bc7
+ #define TELIT_PRODUCT_UC864E 0x1003
+ #define TELIT_PRODUCT_UC864G 0x1004
++#define TELIT_PRODUCT_CC864_DUAL 0x1005
++#define TELIT_PRODUCT_CC864_SINGLE 0x1006
++#define TELIT_PRODUCT_DE910_DUAL 0x1010
++#define TELIT_PRODUCT_CE910_DUAL 0x1011
++#define TELIT_PRODUCT_LE920 0x1201
++#define TELIT_PRODUCT_UE910_V2 0x1012
++
+ #define TELIT_PRODUCT_CC864_DUAL 0x1005
+ #define TELIT_PRODUCT_CC864_SINGLE 0x1006
+ #define TELIT_PRODUCT_DE910_DUAL 0x1010
+@@ -601,6 +608,9 @@ static const struct usb_device_id option
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CC864_DUAL) },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CC864_SINGLE) },
+ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_DE910_DUAL) },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_CE910_DUAL) },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_LE920) },
++ { USB_DEVICE(TELIT_VENDOR_ID, TELIT_PRODUCT_UE910_V2) },
+ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, ZTE_PRODUCT_MF622, 0xff, 0xff, 0xff) }, /* ZTE WCDMA products */
+ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0002, 0xff, 0xff, 0xff) },
+ { USB_DEVICE_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0x0003, 0xff, 0xff, 0xff) },
+@@ -1088,6 +1098,14 @@ static int option_probe(struct usb_seria
+ serial->interface->cur_altsetting->desc.bInterfaceNumber == 1)
+ return -ENODEV;
+
++ /* Don't bind interfaces 1,7 on Telit LE920 */
++ if (serial->dev->descriptor.idVendor == TELIT_VENDOR_ID &&
++ serial->dev->descriptor.idProduct == TELIT_PRODUCT_LE920 &&
++ (serial->interface->cur_altsetting->desc.bInterfaceNumber == 1 ||
++ serial->interface->cur_altsetting->desc.bInterfaceNumber == 7))
++ return -ENODEV;
++
++
+ data = serial->private = kzalloc(sizeof(struct usb_wwan_intf_private), GFP_KERNEL);
+
+ if (!data)
diff --git a/multitech/recipes/linux/linux_2.6.35.bbappend b/multitech/recipes/linux/linux_2.6.35.bbappend
index 7b19be3..16c4708 100644
--- a/multitech/recipes/linux/linux_2.6.35.bbappend
+++ b/multitech/recipes/linux/linux_2.6.35.bbappend
@@ -1,7 +1,7 @@
FILESEXTRA := "${THISDIR}"
FILESPATHBASE =. "${FILESEXTRA}:"
-PR .= ".corecdp14"
+PR .= ".corecdp15"
STABLEV = "14"
SRC_URI_mtcdp = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2;name=kernel \
@@ -15,6 +15,7 @@ SRC_URI_mtcdp = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2;n
file://linux-2.6.32.3-atmel_serial_disable_hwhs.patch \
file://linux-2.6.35.14-option-zte.patch \
file://linux-2.6.32.3-option-telit.patch \
+ file://linux-2.6.35.14-option-telit-20150120.patch \
"
SRC_URI_mt100eocg = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2;name=kernel \
diff --git a/multitech/recipes/udev/udev-165/corecdp/corecdp.rules b/multitech/recipes/udev/udev-165/corecdp/corecdp.rules
index e24c183..9d457ee 100644
--- a/multitech/recipes/udev/udev-165/corecdp/corecdp.rules
+++ b/multitech/recipes/udev/udev-165/corecdp/corecdp.rules
@@ -38,6 +38,9 @@ ATTRS{idVendor}=="1199", ATTRS{idProduct}=="0028", SYMLINK+="modem$env{ID_PORT}"
# H5: ttyACM0, ttyACM3
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="0021", ENV{ID_IFACE}=="00", SYMLINK+="modem_at0"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="0021", ENV{ID_IFACE}=="06", SYMLINK+="modem_at1"
+# LTE: ttyUSB5, ttyUSB6
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1201", ENV{ID_IFACE}=="04", SYMLINK+="modem_at0"
+ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1201", ENV{ID_IFACE}=="05", SYMLINK+="modem_at1"
# EV3: ttyUSB2, ttyUSB3
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{ID_IFACE}=="02", SYMLINK+="modem_at0"
ATTRS{idVendor}=="1bc7", ATTRS{idProduct}=="1010", ENV{ID_IFACE}=="03", SYMLINK+="modem_at1"
diff --git a/multitech/recipes/udev/udev_165.bbappend b/multitech/recipes/udev/udev_165.bbappend
index 2f42438..95ade18 100644
--- a/multitech/recipes/udev/udev_165.bbappend
+++ b/multitech/recipes/udev/udev_165.bbappend
@@ -1,7 +1,7 @@
FILESEXTRA := "${THISDIR}"
FILESPATHBASE =. "${FILESEXTRA}:"
-PR .= ".corecdp6"
+PR .= ".corecdp7"
# add custom rules for persistent modem device names
SRC_URI += "file://corecdp.rules"