Message ID | 20220210155911.15973-1-oneukum@suse.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [PATCHv2] USB: zaurus: support another broken Zaurus | expand |
On Thu, Feb 10, 2022 at 04:59:11PM +0100, Oliver Neukum wrote: > This SL-6000 says Direct Line, not Ethernet > > v2: added Reporter and Link This line goes below the --- line, right? > > Signed-off-by: Oliver Neukum <oneukum@suse.com> > Reported-by: Ross Maynard <bids.7405@bigpond.com> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=215361 > --- > drivers/net/usb/cdc_ether.c | 12 ++++++++++++ > drivers/net/usb/zaurus.c | 12 ++++++++++++ > 2 files changed, 24 insertions(+) > > diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c > index eb3817d70f2b..9b4dfa3001d6 100644 > --- a/drivers/net/usb/cdc_ether.c > +++ b/drivers/net/usb/cdc_ether.c > @@ -583,6 +583,11 @@ static const struct usb_device_id products[] = { > .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \ > .bInterfaceProtocol = USB_CDC_PROTO_NONE > > +#define ZAURUS_FAKE_INTERFACE \ > + .bInterfaceClass = USB_CLASS_COMM, \ > + .bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \ > + .bInterfaceProtocol = USB_CDC_PROTO_NONE > + > /* SA-1100 based Sharp Zaurus ("collie"), or compatible; > * wire-incompatible with true CDC Ethernet implementations. > * (And, it seems, needlessly so...) > @@ -636,6 +641,13 @@ static const struct usb_device_id products[] = { > .idProduct = 0x9032, /* SL-6000 */ > ZAURUS_MASTER_INTERFACE, > .driver_info = 0, > +}, { > + .match_flags = USB_DEVICE_ID_MATCH_INT_INFO > + | USB_DEVICE_ID_MATCH_DEVICE, > + .idVendor = 0x04DD, > + .idProduct = 0x9032, /* SL-6000 */ > + ZAURUS_FAKE_INTERFACE, > + .driver_info = 0, > }, { > .match_flags = USB_DEVICE_ID_MATCH_INT_INFO > | USB_DEVICE_ID_MATCH_DEVICE, > diff --git a/drivers/net/usb/zaurus.c b/drivers/net/usb/zaurus.c > index 8e717a0b559b..5289b6e31713 100644 > --- a/drivers/net/usb/zaurus.c > +++ b/drivers/net/usb/zaurus.c > @@ -256,6 +256,11 @@ static const struct usb_device_id products [] = { > .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \ > .bInterfaceProtocol = USB_CDC_PROTO_NONE > > +#define ZAURUS_FAKE_INTERFACE \ > + .bInterfaceClass = USB_CLASS_COMM, \ > + .bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \ > + .bInterfaceProtocol = USB_CDC_PROTO_NONE > + > /* SA-1100 based Sharp Zaurus ("collie"), or compatible. */ > { > .match_flags = USB_DEVICE_ID_MATCH_INT_INFO > @@ -313,6 +318,13 @@ static const struct usb_device_id products [] = { > .idProduct = 0x9032, /* SL-6000 */ > ZAURUS_MASTER_INTERFACE, > .driver_info = ZAURUS_PXA_INFO, > +}, { > + .match_flags = USB_DEVICE_ID_MATCH_INT_INFO > + | USB_DEVICE_ID_MATCH_DEVICE, > + .idVendor = 0x04DD, > + .idProduct = 0x9032, /* SL-6000 */ > + ZAURUS_FAKE_INTERFACE, > + .driver_info = (unsigned long) &bogus_mdlm_info, > }, { > .match_flags = USB_DEVICE_ID_MATCH_INT_INFO > | USB_DEVICE_ID_MATCH_DEVICE, Did you run this through checkpatch? You forgot the leading tabs here in this last chunk again :( thanks, greg k-h
diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c index eb3817d70f2b..9b4dfa3001d6 100644 --- a/drivers/net/usb/cdc_ether.c +++ b/drivers/net/usb/cdc_ether.c @@ -583,6 +583,11 @@ static const struct usb_device_id products[] = { .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \ .bInterfaceProtocol = USB_CDC_PROTO_NONE +#define ZAURUS_FAKE_INTERFACE \ + .bInterfaceClass = USB_CLASS_COMM, \ + .bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \ + .bInterfaceProtocol = USB_CDC_PROTO_NONE + /* SA-1100 based Sharp Zaurus ("collie"), or compatible; * wire-incompatible with true CDC Ethernet implementations. * (And, it seems, needlessly so...) @@ -636,6 +641,13 @@ static const struct usb_device_id products[] = { .idProduct = 0x9032, /* SL-6000 */ ZAURUS_MASTER_INTERFACE, .driver_info = 0, +}, { + .match_flags = USB_DEVICE_ID_MATCH_INT_INFO + | USB_DEVICE_ID_MATCH_DEVICE, + .idVendor = 0x04DD, + .idProduct = 0x9032, /* SL-6000 */ + ZAURUS_FAKE_INTERFACE, + .driver_info = 0, }, { .match_flags = USB_DEVICE_ID_MATCH_INT_INFO | USB_DEVICE_ID_MATCH_DEVICE, diff --git a/drivers/net/usb/zaurus.c b/drivers/net/usb/zaurus.c index 8e717a0b559b..5289b6e31713 100644 --- a/drivers/net/usb/zaurus.c +++ b/drivers/net/usb/zaurus.c @@ -256,6 +256,11 @@ static const struct usb_device_id products [] = { .bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \ .bInterfaceProtocol = USB_CDC_PROTO_NONE +#define ZAURUS_FAKE_INTERFACE \ + .bInterfaceClass = USB_CLASS_COMM, \ + .bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \ + .bInterfaceProtocol = USB_CDC_PROTO_NONE + /* SA-1100 based Sharp Zaurus ("collie"), or compatible. */ { .match_flags = USB_DEVICE_ID_MATCH_INT_INFO @@ -313,6 +318,13 @@ static const struct usb_device_id products [] = { .idProduct = 0x9032, /* SL-6000 */ ZAURUS_MASTER_INTERFACE, .driver_info = ZAURUS_PXA_INFO, +}, { + .match_flags = USB_DEVICE_ID_MATCH_INT_INFO + | USB_DEVICE_ID_MATCH_DEVICE, + .idVendor = 0x04DD, + .idProduct = 0x9032, /* SL-6000 */ + ZAURUS_FAKE_INTERFACE, + .driver_info = (unsigned long) &bogus_mdlm_info, }, { .match_flags = USB_DEVICE_ID_MATCH_INT_INFO | USB_DEVICE_ID_MATCH_DEVICE,
This SL-6000 says Direct Line, not Ethernet v2: added Reporter and Link Signed-off-by: Oliver Neukum <oneukum@suse.com> Reported-by: Ross Maynard <bids.7405@bigpond.com> Link: https://bugzilla.kernel.org/show_bug.cgi?id=215361 --- drivers/net/usb/cdc_ether.c | 12 ++++++++++++ drivers/net/usb/zaurus.c | 12 ++++++++++++ 2 files changed, 24 insertions(+)