Hi,

I tried again with mbim, because its a branded huawei mu736.
Same results as before:
ifconfig shows errors and I don't receive any bytes.

option 1-3:2.2: GSM modem (1-port) converter detected
usb 1-3: GSM modem (1-port) converter now attached to ttyUSB0
usbcore: registered new interface driver cdc_ncm
usbcore: registered new interface driver cdc_wdm
cdc_mbim 1-3:2.0: setting rx_max = 16384
cdc_mbim 1-3:2.0: setting tx_max = 16384
cdc_mbim 1-3:2.0: NDP will be placed at end of frame for this device.
cdc_mbim 1-3:2.0: cdc-wdm0: USB WDM device
cdc_mbim 1-3:2.0 wwan0: register 'cdc_mbim' at usb-0000:00:14.0-3, CDC MBIM, 8e:1b:bf:b0:35:62
usbcore: registered new interface driver cdc_mbim
8021q: adding VLAN 0 to HW filter on device wwan0

wwan0     Link encap:Ethernet  HWaddr 8E:1B:BF:B0:35:62
          inet addr:37.84.135.42  Bcast:37.84.135.43 Mask:255.255.255.252
          inet6 addr: fe80::8c1b:bfff:feb0:3562%lo/64 Scope:Link
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:41 dropped:0 overruns:0 frame:0
          TX packets:72 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:5622 (5.4 KiB)



Has someone any ideas?
should we go on with option, or mbim?
could it help to disable ipv6?



Here is a pdf doc from huawei:
http://consumer.huawei.com/en/solutions/m2m-solutions/products/support/application-guides/detail/mu736-en.htm?id=17942

These are my patches so far:
--- drivers/usb/serial/option.c~        2014-09-06 01:34:59.000000000 +0200
+++ drivers/usb/serial/option.c 2014-09-16 15:50:45.000000000 +0200
@@ -79,6 +79,8 @@
 #define OPTION_PRODUCT_ETNA_KOI_MODEM          0x7100
 #define OPTION_PRODUCT_GTM380_MODEM            0x7201

+#define HP_VENDOR_ID                            0x03F0
+
 #define HUAWEI_VENDOR_ID                       0x12D1
 #define HUAWEI_PRODUCT_E173                    0x140C
 #define HUAWEI_PRODUCT_E1750                   0x1406
@@ -980,6 +982,12 @@
{ USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x7C) },


+        { USB_VENDOR_AND_INTERFACE_INFO(HP_VENDOR_ID, 0xff, 0x02, 0x01) },
+        { USB_VENDOR_AND_INTERFACE_INFO(HP_VENDOR_ID, 0xff, 0x02, 0x02) },
+        { USB_VENDOR_AND_INTERFACE_INFO(HP_VENDOR_ID, 0xff, 0x02, 0x03) },
+        { USB_VENDOR_AND_INTERFACE_INFO(HP_VENDOR_ID, 0xff, 0x02, 0x04) },
+        { USB_VENDOR_AND_INTERFACE_INFO(HP_VENDOR_ID, 0xff, 0x02, 0x05) },
+
{ USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V640) }, { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V620) }, { USB_DEVICE(NOVATELWIRELESS_VENDOR_ID, NOVATELWIRELESS_PRODUCT_V740) },
--- drivers/usb/serial/usb_wwan.c.orig  2016-11-08 12:24:25.240201286 +0100
+++ drivers/usb/serial/usb_wwan.c       2016-11-08 12:29:53.320201286 +0100
@@ -21,6 +21,8 @@

 #define DRIVER_AUTHOR "Matthias Urlichs <sm...@smurf.noris.de>"
 #define DRIVER_DESC "USB Driver for GSM modems"
+#define HW_bcdUSB 0x0110
+#define HP_VENDOR_ID 0x03F0

 #include <linux/kernel.h>
 #include <linux/jiffies.h>
@@ -220,6 +222,7 @@
        int i;
        int left, todo;
        struct urb *this_urb = NULL;    /* spurious */
+       struct usb_host_endpoint *ep=NULL;
        int err;
        unsigned long flags;

@@ -256,6 +259,17 @@
                memcpy(this_urb->transfer_buffer, buf, todo);
                this_urb->transfer_buffer_length = todo;

+                if((HP_VENDOR_ID == port->serial->dev->descriptor.idVendor)
+                  && (HW_bcdUSB != port->serial->dev->descriptor.bcdUSB)){
+                  ep = usb_pipe_endpoint(this_urb->dev, this_urb->pipe);
+                  if(ep && (0 != this_urb->transfer_buffer_length)
+                    && (0 == this_urb->transfer_buffer_length %
+                    ep->desc.wMaxPacketSize)){
+                    this_urb->transfer_flags |= URB_ZERO_PACKET;
+                    }
+                }
+
+
                spin_lock_irqsave(&intfdata->susp_lock, flags);
                if (intfdata->suspended) {
                        usb_anchor_urb(this_urb, &portdata->delayed);

--- drivers/net/usb/cdc_mbim.c.orig     2016-11-08 12:33:55.430201286 +0100
+++ drivers/net/usb/cdc_mbim.c  2016-11-08 12:39:56.800201286 +0100
@@ -626,6 +626,9 @@
{ USB_VENDOR_AND_INTERFACE_INFO(0x12d1, USB_CLASS_COMM, USB_CDC_SUBCLASS_MBIM, USB_CDC_PROTO_NONE),
          .driver_info = (unsigned long)&cdc_mbim_info_ndp_to_end,
        },
+ { USB_VENDOR_AND_INTERFACE_INFO(0x03f0, USB_CLASS_COMM, USB_CDC_SUBCLASS_MBIM, USB_CDC_PROTO_NONE),
+         .driver_info = (unsigned long)&cdc_mbim_info_ndp_to_end,
+       },
        /* default entry */
{ USB_INTERFACE_INFO(USB_CLASS_COMM, USB_CDC_SUBCLASS_MBIM, USB_CDC_PROTO_NONE),
          .driver_info = (unsigned long)&cdc_mbim_info_zlp,


regards
Harald

_______________________________________________
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel

Reply via email to