RE: [PATCH net-next v2] net/usb/r8153_ecm: support ECM mode for RTL8153

From: Hayes Wang
Date: Mon Nov 02 2020 - 02:20:28 EST


Jakub Kicinski <kuba@xxxxxxxxxx>
[...]
> Can you describe the use case in more detail?
>
> AFAICT r8152 defines a match for the exact same device.
> Does it not mean that which driver is used will be somewhat random
> if both are built?

I export rtl_get_version() from r8152. It would return none zero
value if r8152 could support this device. Both r8152 and r8153_ecm
would check the return value of rtl_get_version() in porbe().
Therefore, if rtl_get_version() return none zero value, the r8152
is used for the device with vendor mode. Otherwise, the r8153_ecm
is used for the device with ECM mode.

> > +/* Define these values to match your device */
> > +#define VENDOR_ID_REALTEK 0x0bda
> > +#define VENDOR_ID_MICROSOFT 0x045e
> > +#define VENDOR_ID_SAMSUNG 0x04e8
> > +#define VENDOR_ID_LENOVO 0x17ef
> > +#define VENDOR_ID_LINKSYS 0x13b1
> > +#define VENDOR_ID_NVIDIA 0x0955
> > +#define VENDOR_ID_TPLINK 0x2357
>
> $ git grep 0x2357 | grep -i tplink
> drivers/net/usb/cdc_ether.c:#define TPLINK_VENDOR_ID 0x2357
> drivers/net/usb/r8152.c:#define VENDOR_ID_TPLINK 0x2357
> drivers/usb/serial/option.c:#define TPLINK_VENDOR_ID 0x2357
>
> $ git grep 0x17ef | grep -i lenovo
> drivers/hid/hid-ids.h:#define USB_VENDOR_ID_LENOVO 0x17ef
> drivers/hid/wacom.h:#define USB_VENDOR_ID_LENOVO 0x17ef
> drivers/net/usb/cdc_ether.c:#define LENOVO_VENDOR_ID 0x17ef
> drivers/net/usb/r8152.c:#define VENDOR_ID_LENOVO 0x17ef
>
> Time to consolidate those vendor id defines perhaps?

It seems that there is no such header file which I could include
or add the new vendor IDs.

Best Regards,
Hayes