[1/1] drivers: net: usb: qmi_wwan: add QMI_QUIRK_SET_DTR for Telit PID 0x1201

Message ID 87lgqva1v3.fsf@miraculix.mork.no
State RFC
Delegated to: David Miller
Headers show

Commit Message

Bjørn Mork April 20, 2017, 9:02 a.m.
Aleksander Morgado <aleksander@aleksander.es> writes:

> I'm just running --dms-get-operating-mode multiple times, and getting
> errors frequently:

Could you retry that with cdc-wdm debugging enabled (e.g.
"echo 'module cdc_wdm +fp' > /sys/kernel/debug/dynamic_debug/control")
and something like this:





And/or a usbmon dump?  That would be.probably show us the sequence of
events leading to this problem.

Desperately trying to figure out some other way to solve the issue that
commit  833415a3e781 ("cdc-wdm: fix "out-of-sync" due to missing
notifications") was supposed to fix....



Bjørn

Patch

diff --git a/drivers/usb/class/cdc-wdm.c b/drivers/usb/class/cdc-wdm.c
index 8fda45a45bd3..c0f25ace9fc6 100644
--- a/drivers/usb/class/cdc-wdm.c
+++ b/drivers/usb/class/cdc-wdm.c
@@ -211,6 +211,8 @@  static void wdm_in_callback(struct urb *urb)
 		}
 	}
 
+	dev_dbg(&desc->intf->dev, "rerr=%d, status=%d, length=%d, resp_count=%d\n", desc->rerr, status, length, desc->resp_count);
+
 	/*
 	 * Handling devices with the WDM_DRAIN_ON_OPEN flag set:
 	 * If desc->resp_count is unset, then the urb was submitted
@@ -516,6 +518,9 @@  static ssize_t wdm_read
 		return -ERESTARTSYS;
 
 	cntr = ACCESS_ONCE(desc->length);
+
+	dev_dbg(&desc->intf->dev, "rerr=%d, length=%d\n", desc->rerr, cntr);
+
 	if (cntr == 0) {
 		desc->read = 0;
 retry: