Message ID | 20220210122643.12274-1-oneukum@suse.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | USB: zaurus: support another broken Zaurus | expand |
On Thu, Feb 10, 2022 at 01:26:43PM +0100, Oliver Neukum wrote: > This SL-6000 says Direct Line, not Ethernet > > Signed-off-by: Oliver Neukum <oneukum@suse.com> > --- > 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..9243be9bd2aa 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, No tabs here? And isn't there a needed "Reported-by:" for this one as it came from a bug report? thanks, greg k-h
On 10.02.22 13:58, Greg KH wrote: > On Thu, Feb 10, 2022 at 01:26:43PM +0100, Oliver Neukum wrote: >> This SL-6000 says Direct Line, not Ethernet >> >> Signed-off-by: Oliver Neukum <oneukum@suse.com> >> --- >> 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..9243be9bd2aa 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, > No tabs here? Checking ... > > And isn't there a needed "Reported-by:" for this one as it came from a > bug report? Do we do these for reports by the kernel.org bugzilla? Regards Oliver
On Thu, Feb 10, 2022 at 03:13:49PM +0100, Oliver Neukum wrote: > > On 10.02.22 13:58, Greg KH wrote: > > On Thu, Feb 10, 2022 at 01:26:43PM +0100, Oliver Neukum wrote: > >> This SL-6000 says Direct Line, not Ethernet > >> > >> Signed-off-by: Oliver Neukum <oneukum@suse.com> > >> --- > >> 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..9243be9bd2aa 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, > > No tabs here? > Checking ... > > > > And isn't there a needed "Reported-by:" for this one as it came from a > > bug report? > Do we do these for reports by the kernel.org bugzilla? We should, why not?
On 10.02.22 15:17, Greg KH wrote: > On Thu, Feb 10, 2022 at 03:13:49PM +0100, Oliver Neukum wrote: >> >>> And isn't there a needed "Reported-by:" for this one as it came from a >>> bug report? >> Do we do these for reports by the kernel.org bugzilla? > We should, why not? Hi, because it sort of implies that it was reported to a mailing list. If there is a bugzilla for it, shouldn't we reference it? Regards Oliver
On Thu, Feb 10, 2022 at 03:20:38PM +0100, Oliver Neukum wrote: > > On 10.02.22 15:17, Greg KH wrote: > > On Thu, Feb 10, 2022 at 03:13:49PM +0100, Oliver Neukum wrote: > >> > >>> And isn't there a needed "Reported-by:" for this one as it came from a > >>> bug report? > >> Do we do these for reports by the kernel.org bugzilla? > > We should, why not? > > Hi, > > > because it sort of implies that it was reported to a mailing list. > If there is a bugzilla for it, shouldn't we reference it? Yes please do that as well, that's what the "Link:" tag is for. 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..9243be9bd2aa 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 Signed-off-by: Oliver Neukum <oneukum@suse.com> --- drivers/net/usb/cdc_ether.c | 12 ++++++++++++ drivers/net/usb/zaurus.c | 12 ++++++++++++ 2 files changed, 24 insertions(+)