On Thu, 30 Dec 2021 01:03:38 +0100 Ryan Lahfa wrote: > On Mon, Dec 27, 2021 at 06:21:24PM -0800, Jakub Kicinski wrote: > > On Fri, 24 Dec 2021 21:30:18 +0100 Ryan Lahfa wrote: > > > The network card is loaded with `cdc_ncm` driver and is unable to detect > > > any carrier even when one is actually plugged in, I tried multiple > > > things, I confirmed independently that the carrier is working. > > > > > > Through further investigations and with the help of a user on > > > Libera.Chat #networking channel, we blacklisted `cdc_ncm`, but nothing > > > get loaded in turn. > > > > > > Then, I forced the usage of r8152 for the device 0bda:8156 using `echo > > > 0bda 8156 > /sys/bus/usb/drivers/r8152/new_id`, and... miracle. > > > Everything just worked. > > > > > > I am uncertain whether this falls in kernel's responsibility or not, it > > > seems indeed that my device is listed for r8152: https://github.com/torvalds/linux/blob/master/drivers/net/usb/r8152.c#L9790 introduced by this commit https://github.com/torvalds/linux/commit/195aae321c829dd1945900d75561e6aa79cce208 if I understand well, which is tagged for 5.15. > > > > > > I am curious to see how difficult would that be to write a patch for > > > this and fix it, meanwhile, here is my modest contribution with this bug > > > report, hopefully, this is the right place for them. > > > > Can you please share the output of lsusb -d '0bda:8156' -vv ? > > Here it is, attached. Dunno much about USB but it seems the driver matches: USB_DEVICE_INTERFACE_CLASS(vend, prod, USB_CLASS_VENDOR_SPEC), \ and USB_DEVICE_AND_INTERFACE_INFO(vend, prod, USB_CLASS_COMM, \ USB_CDC_SUBCLASS_ETHERNET, USB_CDC_PROTO_NONE), \ Both of these should match. Former because: Bus 002 Device 002: ID 0bda:8156 Realtek Semiconductor Corp. USB 10/100/1G/2.5G LAN [...] Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 3 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass And the latter because of another config with: bInterfaceClass 2 Communications bInterfaceSubClass 6 Ethernet Networking bInterfaceProtocol 0 Let's CC linux-usb@ - any ideas?