diff options
| author | Jean-Francois Le Fillatre <[email protected]> | 2022-08-24 19:14:36 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2022-08-27 15:35:41 +0000 |
| commit | 1bd3a383075c64d638e65d263c9267b08ee7733c (patch) | |
| tree | 2a722a011aa875673b04ff0cf683a82ef6be03ca /drivers/net/usb/cdc_ether.c | |
| parent | nfp: flower: fix ingress police using matchall filter (diff) | |
| download | kernel-1bd3a383075c64d638e65d263c9267b08ee7733c.tar.gz kernel-1bd3a383075c64d638e65d263c9267b08ee7733c.zip | |
r8152: add PID for the Lenovo OneLink+ Dock
The Lenovo OneLink+ Dock contains an RTL8153 controller that behaves as
a broken CDC device by default. Add the custom Lenovo PID to the r8152
driver to support it properly.
Also, systems compatible with this dock provide a BIOS option to enable
MAC address passthrough (as per Lenovo document "ThinkPad Docking
Solutions 2017"). Add the custom PID to the MAC passthrough list too.
Tested on a ThinkPad 13 1st gen with the expected results:
passthrough disabled: Invalid header when reading pass-thru MAC addr
passthrough enabled: Using pass-thru MAC addr XX:XX:XX:XX:XX:XX
Signed-off-by: Jean-Francois Le Fillatre <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'drivers/net/usb/cdc_ether.c')
| -rw-r--r-- | drivers/net/usb/cdc_ether.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c index 2de09ad5bac0..e11f70911acc 100644 --- a/drivers/net/usb/cdc_ether.c +++ b/drivers/net/usb/cdc_ether.c @@ -777,6 +777,13 @@ static const struct usb_device_id products[] = { }, #endif +/* Lenovo ThinkPad OneLink+ Dock (based on Realtek RTL8153) */ +{ + USB_DEVICE_AND_INTERFACE_INFO(LENOVO_VENDOR_ID, 0x3054, USB_CLASS_COMM, + USB_CDC_SUBCLASS_ETHERNET, USB_CDC_PROTO_NONE), + .driver_info = 0, +}, + /* ThinkPad USB-C Dock (based on Realtek RTL8153) */ { USB_DEVICE_AND_INTERFACE_INFO(LENOVO_VENDOR_ID, 0x3062, USB_CLASS_COMM, |
