From 2d5f90b0f66b465ff17b757a563bc8253ca6d51b Mon Sep 17 00:00:00 2001 From: Bryan Tran Date: Mon, 26 Jan 2015 14:55:05 -0600 Subject: linux-2.6.35:linux-2.6.35.14-option-telit-20150120.patch: Add Telit LTE patch udev-165: Add LTE radio rules --- .../linux-2.6.35.14-option-telit-20150120.patch | 43 ++++++++++++++++++++++ multitech/recipes/linux/linux_2.6.35.bbappend | 3 +- .../recipes/udev/udev-165/corecdp/corecdp.rules | 3 ++ multitech/recipes/udev/udev_165.bbappend | 2 +- 4 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 multitech/recipes/linux/linux-2.6.35/linux-2.6.35.14-option-telit-20150120.patch 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" -- cgit v1.2.3