libqmi / Quectel EC21/EC25

Sebastian Sjoholm sebastian.sjoholm at gmail.com
Sat Oct 8 20:58:53 UTC 2016


> 
>> Hi,
>> 
>> So regarding my issue with Quectel EC21/EC25, I guess most of the times the problem is between the keyboard and the chair, and I guess it was now as well.
>> 
>> When I followed the Quectel documentation on Linux integration I left the raw-ip implementation because linux kernel already have raw-ip support in the kernel, however at the end of that chapter was some crucial changes that I of course did not include. So, after included the changes in “qmi_wwan_bind”, it started to work.
>> 
>> I have included the diff from my changes and the Linux Kernel 4.7.7.
>> 
>> I have only verified EC25, but will soon run EC21 as well.
>> 
>> /drivers/net/usb/qmi_wwan.c
>> 436,451d435
>> < 
>> < 	/* Quectel */
>> < 	if (dev->udev->descriptor.idVendor == cpu_to_le16(0x2C7C)) {
>> < 		dev_info(&intf->dev, "Quectel EC21&EC25&EC20 R2.0 work on RawIP mode\n");
>> < 		dev->net->flags |= IFF_NOARP;
>> < 
>> < 		usb_control_msg(
>> < 			interface_to_usbdev(intf),
>> < 			usb_sndctrlpipe(interface_to_usbdev(intf), 0),
>> < 			0x22, //USB_CDC_REQ_SET_CONTROL_LINE_STATE
>> < 			0x21, //USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE
>> < 			1, //active CDC DTR
>> < 			intf->cur_altsetting->desc.bInterfaceNumber,
>> < 			NULL, 0, 100);
>> < 	}
> 
> 
> I don't understand.  Except for the redundant IFF_NOARP (set in
> qmi_wwan_netdev_setup), this should be exactly the same as the
> 
> 		qmi_wwan_change_dtr(dev, true);
> 
> I asked you to try to enable unconditionally.  And that didn't work?
> 

I did try that, yes, but I got the same timeout error with qmicli, but I will check again, and let you know.

Just to make sure I get it right;

instead of

        if (le16_to_cpu(dev->udev->descriptor.bcdUSB) >= 0x0201) {
                qmi_wwan_manage_power(dev, 1);
                qmi_wwan_change_dtr(dev, true);
        }

I will just have

       qmi_wwan_manage_power(dev, 1);
       qmi_wwan_change_dtr(dev, true);

And of course comment out the changes in “qmi_wwan_bind”.

Regards,
Sebastian


More information about the libqmi-devel mailing list