Bjørn Mork <bjorn@xxxxxxx> writes: > But looking closer, I see that the SET_NTB_FORMAT returned -EPIPE, > i.e. stall. The driver currently ignores this error, which is why we > end up with different device and host settings. > > Anyone know what the proper driver action is? Note that this error > cannot happen with a spec conforming device, because SET_NTB_FORMAT > support is required for devices claiming 32 bit support. So the spec > doesn't tell us what to do. F..k! OK, my fault. Proper fix coming up ASAP. I believe commit 6a9612e2cb22 "net: cdc_ncm: remove ncm_parm field" messed up big time, because of my lack of understanding of the importance of control message ordering in this driver, and additional sloppy spec reading. Quoting from section 6.2.5 "SetNtbFormat": "The host shall only send this command while the NCM Data Interface is in alternate setting 0. The referenced commit moved the call to cdc_ncm_setup() *after* the usb_set_interface() for the data interface. This is likely the cause of the failure. Thomas: This is probably what made your devices stop work after v3.12 as well. The bug was introduced with v3.13. Bjørn -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html