[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8738ihm0mj.fsf@nemi.mork.no>
Date: Mon, 17 Mar 2014 14:10:44 +0100
From: Bjørn Mork <bjorn@...k.no>
To: Pasi Kärkkäinen <pasik@....fi>
Cc: Thomas Schäfer <tschaefer@...nline.de>,
Dan Williams <dcbw@...hat.com>, netdev@...r.kernel.org,
linux-usb@...r.kernel.org, Enrico Mioso <mrkiko.rs@...il.com>,
Oliver Neukum <oliver@...kum.org>
Subject: Re: [PATCH net-next v6 0/3] The huawei_cdc_ncm driver / E3276 problem
Bjørn Mork <bjorn@...k.no> 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 netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists