FreeBSD Bugzilla – Attachment 145389 Details for
Bug 192345
[u3g] [cdce] patch for huawei 4G/LTE modems: E3272, E3372
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Same patch but reduced to including only E3272 related changes; the rest was committed.
patch (text/plain), 4.53 KB, created by
Nick Hibma
on 2014-08-05 10:20:01 UTC
(
hide
)
Description:
Same patch but reduced to including only E3272 related changes; the rest was committed.
Filename:
MIME Type:
Creator:
Nick Hibma
Created:
2014-08-05 10:20:01 UTC
Size:
4.53 KB
patch
obsolete
>Index: /usr/src/sys/dev/usb/net/if_cdce.c >=================================================================== >--- /usr/src/sys/dev/usb/net/if_cdce.c (revision 269431) >+++ /usr/src/sys/dev/usb/net/if_cdce.c (working copy) >@@ -277,6 +277,15 @@ > {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLA300, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, > {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC700, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, > {USB_VPI(USB_VENDOR_SHARP, USB_PRODUCT_SHARP_SLC750, CDCE_FLAG_ZAURUS | CDCE_FLAG_NO_UNION)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x16), >+ USB_DRIVER_INFO(0)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x46), >+ USB_DRIVER_INFO(0)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x76), >+ USB_DRIVER_INFO(0)}, > }; > > static const STRUCT_USB_DUAL_ID cdce_dual_devs[] = { >Index: /usr/src/sys/dev/usb/serial/u3g.c >=================================================================== >--- /usr/src/sys/dev/usb/serial/u3g.c (revision 269431) >+++ /usr/src/sys/dev/usb/serial/u3g.c (working copy) >@@ -327,6 +319,8 @@ > U3G_DEV(HUAWEI, K4505, U3GINIT_HUAWEI), > U3G_DEV(HUAWEI, K4505_INIT, U3GINIT_HUAWEISCSI), > U3G_DEV(HUAWEI, ETS2055, U3GINIT_HUAWEI), >+ U3G_DEV(HUAWEI, E3272_INIT, U3GINIT_HUAWEISCSI), >+ U3G_DEV(HUAWEI, E3272, 0), > U3G_DEV(KYOCERA2, CDMA_MSM_K, 0), > U3G_DEV(KYOCERA2, KPC680, 0), > U3G_DEV(LONGCHEER, WM66, U3GINIT_HUAWEI), >@@ -607,6 +602,16 @@ > return (0); > } > >+/* Huawei specific: see if_cdce.c for more ids. */ >+#define U3G_HUAWEI_IS_CDC(info, iface_descr) \ >+ ((info)->idVendor == USB_VENDOR_HUAWEI && \ >+ (iface_descr)->bInterfaceClass == UICLASS_VENDOR && \ >+ (iface_descr)->bInterfaceSubClass == 0x02 && \ >+ ((iface_descr)->bInterfaceProtocol == 0x16 || \ >+ (iface_descr)->bInterfaceProtocol == 0x46 || \ >+ (iface_descr)->bInterfaceProtocol == 0x76)) >+ >+ > static void > u3g_sael_m460_init(struct usb_device *udev) > { >@@ -814,6 +819,10 @@ > if (uaa->info.bInterfaceClass != UICLASS_VENDOR) { > return (ENXIO); > } >+ /* Huawei specific: skip cdce devices. */ >+ if (U3G_HUAWEI_IS_CDC(&uaa->info, &uaa->info)) { >+ return (ENXIO); >+ } > return (usbd_lookup_id_by_uaa(u3g_devs, sizeof(u3g_devs), uaa)); > } > >@@ -857,6 +866,9 @@ > id = usbd_get_interface_descriptor(iface); > if (id == NULL || id->bInterfaceClass != UICLASS_VENDOR) > continue; >+ /* Huawei specific: skip cdce devices. */ >+ if (U3G_HUAWEI_IS_CDC(&uaa->info, id)) >+ continue; > usbd_set_parent_iface(uaa->device, i, uaa->info.bIfaceIndex); > iface_valid |= (1<<i); > } >Index: /usr/src/sys/dev/usb/serial/umodem.c >=================================================================== >--- /usr/src/sys/dev/usb/serial/umodem.c (revision 269431) >+++ /usr/src/sys/dev/usb/serial/umodem.c (working copy) >@@ -122,6 +122,18 @@ > USB_IFACE_SUBCLASS(UISUBCLASS_ABSTRACT_CONTROL_MODEL), > USB_IFACE_PROTOCOL(UIPROTO_CDC_AT)}, > /* Huawei Modem class match */ >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x01)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x02)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x10)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x12)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x61)}, >+ {USB_VENDOR(USB_VENDOR_HUAWEI), USB_IFACE_CLASS(UICLASS_VENDOR), >+ USB_IFACE_SUBCLASS(0x02), USB_IFACE_PROTOCOL(0x62)}, > {USB_IFACE_CLASS(UICLASS_CDC), > USB_IFACE_SUBCLASS(UISUBCLASS_ABSTRACT_CONTROL_MODEL), > USB_IFACE_PROTOCOL(0xFF)}, >Index: /usr/src/sys/dev/usb/usbdevs >=================================================================== >--- /usr/src/sys/dev/usb/usbdevs (revision 269431) >+++ /usr/src/sys/dev/usb/usbdevs (working copy) >@@ -2341,9 +2341,11 @@ > product HUAWEI E3131 0x1506 3G modem > product HUAWEI K3765_INIT 0x1520 K3765 Initial > product HUAWEI K4505_INIT 0x1521 K4505 Initial >+product HUAWEI E3272_INIT 0x155b LTE modem initial > product HUAWEI ETS2055 0x1803 CDMA modem > product HUAWEI E173 0x1c05 3G modem > product HUAWEI E173_INIT 0x1c0b 3G modem initial >+product HUAWEI E3272 0x1c1e LTE modem > > /* HUAWEI 3com products */ > product HUAWEI3COM WUB320G 0x0009 Aolynk WUB320g
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 192345
:
145259
|
145278
|
145289
|
145319
| 145389 |
188286
|
188288
|
188479
|
188484
|
188485