[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <871uguvmfy.fsf@nemi.mork.no>
Date: Fri, 19 Oct 2012 11:30:09 +0200
From: Bjørn Mork <bjorn@...k.no>
To: Alexey Orishko <alexey.orishko@...il.com>
Cc: Oliver Neukum <oliver@...kum.org>, netdev@...r.kernel.org,
linux-usb@...r.kernel.org,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Greg Suarez <gpsuarez2512@...il.com>,
"Fangxiaozhi \(Franko\)" <fangxiaozhi@...wei.com>,
Dan Williams <dcbw@...hat.com>,
Aleksander Morgado <aleksander@...edo.com>
Subject: Re: [PATCH net-next 02/14] net: cdc_ncm: use device rx_max value if update failed
Bjørn Mork <bjorn@...k.no> writes:
> Alexey Orishko <alexey.orishko@...il.com> writes:
>
>> Vendor has to fix firmware.
>
> I agree in principle, and I'll report the problem to them. But as usual
> I believe we have to support any weird firmware we encounter, if at all
> possible.
OK, I did some more experiments, and I am wondering if the real firmware
problem is in the MBIM descriptor. It is
CDC MBIM:
bcdMBIMVersion 1.00
wMaxControlMessage 1536
bNumberFilters 16
bMaxFilterSize 40
wMaxSegmentSize 4096
bmNetworkCapabilities 0x20
8-byte ntb input size
so we use the 8-byte version of USB_CDC_SET_NTB_INPUT_SIZE, which fails
with -EPIPE. But forcing the 4-byte version seems to work. Hmm, I also
see that the device returns 4 bytes in response to at
USB_CDC_GET_NTB_INPUT_SIZE with an 8-byte buffer. Maybe we can
auto-quirk based on that? I.e., if USB_CDC_GET_NTB_INPUT_SIZE returns
only 4 bytes then we assume that the bmNetworkCapabilities flag is
wrong.
Is that acceptable? Then it seems we are able to inform this device of
the reduced buffer, and the other problems can be ignored.
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