Oh wow, that is really interesting! I just received my own ethernet expansion card and I have the exact same problem. Linux doesn’t detect any carrier on the card, but when I suspend the laptop, the LEDs go back up as if there was a link then! Pop open the lid again, and boom, as soon as Linux resumes, the LEDs go off. They blink a little from time to time, but it’s just a blip, not a solid “yep, we have a link here”.
Here are the logs when I plug in the device:
Dec 02 18:25:55 angela kernel: usb 4-2: new SuperSpeed USB device number 5 using xhci_hcd
Dec 02 18:25:55 angela kernel: usb 4-2: New USB device found, idVendor=0bda, idProduct=8156, bcdDevice=31.04
Dec 02 18:25:55 angela kernel: usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=6
Dec 02 18:25:55 angela kernel: usb 4-2: Product: USB 10/100/1G/2.5G LAN
Dec 02 18:25:55 angela kernel: usb 4-2: Manufacturer: Realtek
Dec 02 18:25:55 angela kernel: usb 4-2: SerialNumber: 4013000001
Dec 02 18:25:55 angela NetworkManager[59731]: <info> [1670023555.2285] manager: (eth0): new Ethernet device (/org/freedesktop/NetworkManager/Devices/8)
Dec 02 18:25:55 angela kernel: cdc_ncm 4-2:2.0: MAC-Address: REDACTED
Dec 02 18:25:55 angela kernel: cdc_ncm 4-2:2.0: setting rx_max = 16384
Dec 02 18:25:55 angela kernel: cdc_ncm 4-2:2.0: setting tx_max = 16384
Dec 02 18:25:55 angela kernel: cdc_ncm 4-2:2.0 eth0: register 'cdc_ncm' at usb-0000:00:0d.0-2, CDC NCM (NO ZLP), REDACTED
Dec 02 18:25:55 angela mtp-probe[67996]: checking bus 4, device 5: "/sys/devices/pci0000:00/0000:00:0d.0/usb4/4-2"
Dec 02 18:25:55 angela mtp-probe[67996]: bus: 4, device: 5 was not an MTP device
Dec 02 18:25:55 angela systemd-udevd[67995]: Network interface NamePolicy= disabled on kernel command line.
Dec 02 18:25:55 angela NetworkManager[59731]: <info> [1670023555.8143] device (eth0): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
Dec 02 18:25:55 angela mtp-probe[68056]: checking bus 4, device 5: "/sys/devices/pci0000:00/0000:00:0d.0/usb4/4-2"
Dec 02 18:25:55 angela mtp-probe[68056]: bus: 4, device: 5 was not an MTP device
Notice how NetworkManager doesn’t seem to like the interface somehow…
Here’s what iproute2 thinks of that interface:
anarcat@angela:~$ ip link show eth0 | head -1
6: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
Here’s the requested lshw
output:
*-network
description: Ethernet interface
physical id: e
bus info: usb@4:2
logical name: eth0
serial: REDACTED
capabilities: ethernet physical
configuration: autonegotiation=off broadcast=yes driver=cdc_ncm driverversion=6.0.0-4-amd64 duplex=half firmware=CDC NCM (NO ZLP) link=no multicast=yes port=twisted pair
… and, for good measure, lsusb:
Bus 004 Device 005: ID 0bda:8156 Realtek Semiconductor Corp. USB 10/100/1G/2.5G LAN
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.20
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 9
idVendor 0x0bda Realtek Semiconductor Corp.
idProduct 0x8156
bcdDevice 31.04
iManufacturer 1 Realtek
iProduct 2 USB 10/100/1G/2.5G LAN
iSerial 6 4013000001
bNumConfigurations 3
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0039
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 256mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 3
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 0
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 11
bMaxBurst 0
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0068
bNumInterfaces 2
bConfigurationValue 2
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 256mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 13
bInterfaceProtocol 0
iInterface 5 CDC Communications Control
CDC Header:
bcdCDC 1.10
CDC Union:
bMasterInterface 0
bSlaveInterface 1
CDC Ethernet:
iMacAddress 3 REDACTED
bmEthernetStatistics 0x0031501f
wMaxSegmentSize 1518
wNumberMCFilters 0x8000
bNumberPowerFilters 0
CDC NCM:
bcdNcmVersion 1.00
bmNetworkCapabilities 0x2b
8-byte ntb input size
max datagram size
net address
packet filter
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 11
bMaxBurst 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 1
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 1
iInterface 4 Ethernet Data
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0062
bNumInterfaces 2
bConfigurationValue 3
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 256mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 2 Communications
bInterfaceSubClass 6 Ethernet Networking
bInterfaceProtocol 0
iInterface 5 CDC Communications Control
CDC Header:
bcdCDC 1.10
CDC Union:
bMasterInterface 0
bSlaveInterface 1
CDC Ethernet:
iMacAddress 3 REDACTED
bmEthernetStatistics 0x0031501f
wMaxSegmentSize 1518
wNumberMCFilters 0x8000
bNumberPowerFilters 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x83 EP 3 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0010 1x 16 bytes
bInterval 11
bMaxBurst 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 0
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 10 CDC Data
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 4 Ethernet Data
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 3
Binary Object Store Descriptor:
bLength 5
bDescriptorType 15
wTotalLength 0x0016
bNumDeviceCaps 2
USB 2.0 Extension Device Capability:
bLength 7
bDescriptorType 16
bDevCapabilityType 2
bmAttributes 0x00000002
HIRD Link Power Management (LPM) Supported
SuperSpeed USB Device Capability:
bLength 10
bDescriptorType 16
bDevCapabilityType 3
bmAttributes 0x02
Latency Tolerance Messages (LTM) Supported
wSpeedsSupported 0x000e
Device can operate at Full Speed (12Mbps)
Device can operate at High Speed (480Mbps)
Device can operate at SuperSpeed (5Gbps)
bFunctionalitySupport 2
Lowest fully-functional device speed is High Speed (480Mbps)
bU1DevExitLat 10 micro seconds
bU2DevExitLat 2047 micro seconds
Device Status: 0x001c
(Bus Powered)
U1 Enabled
U2 Enabled
Latency Tolerance Messaging (LTM) Enabled
Any idea what could be happening here? The card is basically not working…
This is a 12th gen DIY kit, running Debian testing/bookworm 11:
Linux angela 6.0.0-4-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.0.8-1 (2022-11-11) x86_64 GNU/Linux
I’m available for further debugging, firmware upgrades, etc.