Re: [PATCH] usb: gadget: f_rndis: fix usb_interface_descriptor for rndis

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Michal,

Am 24.09.2014 11:38, schrieb Michal Nazarewicz:
On Wed, Sep 24 2014, Heiko Schocher<hs@xxxxxxx>  wrote:
use the values for RNDIS over Ethernet as defined in
http://www.usb.org/developers/defined_class
(search for RDNIS):

- baseclass: 0xef (miscellaneous)
- subclass: 0x04
- protocol: 0x01

with this setings the file in Documentation/usb/linux.inf is
obsolete.

Signed-off-by: Heiko Schocher<hs@xxxxxxx>

---

Cc: Felipe Balbi<balbi@xxxxxx>
Cc: Greg Kroah-Hartman<gregkh@xxxxxxx>
Cc: linux-usb@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: Oliver Neukum<oliver@xxxxxxxxxxx>
Cc: netdev@xxxxxxxxxxxxxxx
Cc: linux-api@xxxxxxxxxxxxxxx
Cc: Andrzej Pietrasiewicz<andrzej.p@xxxxxxxxxxx>
Cc: Michal Nazarewicz<mina86@xxxxxxxxxx>
Cc: Kyungmin Park<kyungmin.park@xxxxxxxxxxx>
Cc: Dan Carpenter<dan.carpenter@xxxxxxxxxx>
Cc: Macpaul Lin<macpaul@xxxxxxxxx>

Tested with the "USB Compliance test suite which runs Windows", see:
http://www.usb.org/developers/tools/usb20_tools/#usb20cv

  drivers/net/usb/cdc_ether.c           | 6 +++---
  drivers/usb/core/generic.c            | 6 +++---
  drivers/usb/gadget/function/f_rndis.c | 6 +++---
  include/uapi/linux/usb/cdc.h          | 3 +++
  4 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c
index 2a32d91..9c216c2 100644
--- a/drivers/net/usb/cdc_ether.c
+++ b/drivers/net/usb/cdc_ether.c
@@ -35,9 +35,9 @@

  static int is_rndis(struct usb_interface_descriptor *desc)
  {
-	return (desc->bInterfaceClass == USB_CLASS_COMM&&
-		desc->bInterfaceSubClass == 2&&
-		desc->bInterfaceProtocol == 0xff);
+	return (desc->bInterfaceClass == USB_CLASS_MISC&&
+		desc->bInterfaceSubClass == USB_CDC_SUBCLASS_RNDIS&&
+		desc->bInterfaceProtocol == USB_CDC_RNDIS_PROTO_ETH);
  }

Does that mean that new kernels will stop working with old RNDIs
gadgets because they stop recognising them as RNDIS?  I feel like this
function should accept both, i.e.:

Hmm.. I am not a usb guru ... but I think, yes, you are right.
I add this to a v2 (if this patch has a chance to go in mainline).

Thanks!

bye,
Heiko
--
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
--
To unsubscribe from this list: send the line "unsubscribe linux-api" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux