Skip to content

Commit 6605cc6

Browse files
oneukumdavem330
authored andcommitted
USB: zaurus: support another broken Zaurus
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 Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 603c692 commit 6605cc6

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

drivers/net/usb/cdc_ether.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -583,6 +583,11 @@ static const struct usb_device_id products[] = {
583583
.bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \
584584
.bInterfaceProtocol = USB_CDC_PROTO_NONE
585585

586+
#define ZAURUS_FAKE_INTERFACE \
587+
.bInterfaceClass = USB_CLASS_COMM, \
588+
.bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \
589+
.bInterfaceProtocol = USB_CDC_PROTO_NONE
590+
586591
/* SA-1100 based Sharp Zaurus ("collie"), or compatible;
587592
* wire-incompatible with true CDC Ethernet implementations.
588593
* (And, it seems, needlessly so...)
@@ -636,6 +641,13 @@ static const struct usb_device_id products[] = {
636641
.idProduct = 0x9032, /* SL-6000 */
637642
ZAURUS_MASTER_INTERFACE,
638643
.driver_info = 0,
644+
}, {
645+
.match_flags = USB_DEVICE_ID_MATCH_INT_INFO
646+
| USB_DEVICE_ID_MATCH_DEVICE,
647+
.idVendor = 0x04DD,
648+
.idProduct = 0x9032, /* SL-6000 */
649+
ZAURUS_FAKE_INTERFACE,
650+
.driver_info = 0,
639651
}, {
640652
.match_flags = USB_DEVICE_ID_MATCH_INT_INFO
641653
| USB_DEVICE_ID_MATCH_DEVICE,

drivers/net/usb/zaurus.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,11 @@ static const struct usb_device_id products [] = {
256256
.bInterfaceSubClass = USB_CDC_SUBCLASS_ETHERNET, \
257257
.bInterfaceProtocol = USB_CDC_PROTO_NONE
258258

259+
#define ZAURUS_FAKE_INTERFACE \
260+
.bInterfaceClass = USB_CLASS_COMM, \
261+
.bInterfaceSubClass = USB_CDC_SUBCLASS_MDLM, \
262+
.bInterfaceProtocol = USB_CDC_PROTO_NONE
263+
259264
/* SA-1100 based Sharp Zaurus ("collie"), or compatible. */
260265
{
261266
.match_flags = USB_DEVICE_ID_MATCH_INT_INFO
@@ -313,6 +318,13 @@ static const struct usb_device_id products [] = {
313318
.idProduct = 0x9032, /* SL-6000 */
314319
ZAURUS_MASTER_INTERFACE,
315320
.driver_info = ZAURUS_PXA_INFO,
321+
}, {
322+
.match_flags = USB_DEVICE_ID_MATCH_INT_INFO
323+
| USB_DEVICE_ID_MATCH_DEVICE,
324+
.idVendor = 0x04DD,
325+
.idProduct = 0x9032, /* SL-6000 */
326+
ZAURUS_FAKE_INTERFACE,
327+
.driver_info = (unsigned long)&bogus_mdlm_info,
316328
}, {
317329
.match_flags = USB_DEVICE_ID_MATCH_INT_INFO
318330
| USB_DEVICE_ID_MATCH_DEVICE,

0 commit comments

Comments
 (0)