Thread (10 messages) 10 messages, 3 authors, 2012-10-18

Re: [PATCH net-next 00/14] Adding a USB CDC MBIM driver

flat view

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2012-10-18 21:16:51

On Thu, Oct 18, 2012 at 10:40:53PM +0200, Bjørn Mork wrote:
The USB Communications Device Class "Mobile Broadband Interface Model"
(MBIM) is the USB-IFs alternative to the current chipset/vendor
specific solutions to "Mobile Broadband" device management. The
specification, including the management protocol description, can be
downloaded from http://www.usb.org/developers/devclass_docs#approved

This driver implementing most MBIM features with the exception of
32bit NTB and NDP headers.

An important design principle has been reusing as much as possible of
existing kernel code, in particular the cdc_ncm and cdc_wdm drivers.
The CDC MBIM protocol is based on CDC NCM, and much of the setup and
framing logic is very similar.

One important addition in MBIM compared to NCM is the new control
protocol embedded in CDC commands.  This protocol is comprehensive and
support a number of policy decisions necessary for modern mobile
broadband devices often having multiple radio interfaces.  Based on
early comments and the experiences with the qmi_wwan driver, knowledge
of the control protocol has been kept completely out of the driver.
This is userspace material.  Like with qmi_wwan, a control protocol
interface is exported to userspace using the cdc_wdm subdriver API,
associating a /dev/cdc-wdmX character device with the network device
for the management application.

Patch 1 and 2 are independent of the rest and only required to make
test devices with very large buffers work.

Patch 3 adds new MBIM definitions to the cdc.h header file

Patches 4 to 9 refactor the cdc_ncm driver to enable reusing common
parts for MBIM.

Patches 10 and 11 add the new cdc_mbim driver

Patch 12 prevents cdc_ncm from binding to backward compatible MBIM
devices

Patches 13 and 14 extend the MBIM driver to support multiplexed
sessions

The changes to the cdc_ncm driver has been tested and verified to work
with an Ericsson F5521gw device.  The new cdc_mbim driver has been
tested with a Huawei E367u-2 device with MBIM firmware, and other
currently undisclosed devices.
Very nice work, I don't have any objections to any of this, but I just
did a very high-level code review:

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help