Mini-PCIe Ethernet adapter (RTL8111F) connectivity issue on TX2 platform

Hi,
My custom carrier board for TX2 supports 1 mini-PCIe slot.I used an adapter which uses RTL8111F of Realtek Co… The adapter could be installed and the driver was r8168.

To run the command
~$lspci -vvv

“01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
Subsystem: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 458
Region 0: I/O ports at 1000 [size=256]
Region 2: Memory at 48004000 (64-bit, prefetchable) [size=4K]
Region 4: Memory at 48000000 (64-bit, prefetchable) [size=16K]
Capabilities:
Kernel driver in use: r8168”

To run the command
~$ifconfig
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.2.110 netmask 255.255.255.0 broadcast 192.168.2.255
inet6 fe80::347c:15ab:645f:bbbf prefixlen 64 scopeid 0x20
ether 2c:53:4a:00:00:c3 txqueuelen 1000 (Ethernet)
RX packets 1423 bytes 1826511 (1.8 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1151 bytes 95044 (95.0 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 202 base 0xe000

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1 (Local Loopback)
RX packets 215 bytes 16540 (16.5 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 215 bytes 16540 (16.5 KB)

The issue was:
1,The network connectivity was kept just several minutes each time the cable plugged in RJ45 connector.Then the network was disconnected
2,During connecting the speed was 100Mbps although RTL8111F supports 1000Mbps and the handshaking protocol was auto.

L4T was R32.4.3.

Do I need to rebuild the driver for RTL8111F?If so,how to do?

Thanks,
Fang Bin

I would simply use nm-connection-editor to try and force the settings you want and see if it works. If you don’t have this, then “sudo apt-get install network-manager-gnome”. If you have the driver, then rebuilding it is rarely needed for changing what options were actually picked.

1,The network connectivity was kept just several minutes each time the cable plugged in RJ45 connector.Then the network was disconnected

Is there any error reported from dmesg?

2,During connecting the speed was 100Mbps although RTL8111F supports 1000Mbps and the handshaking protocol was auto.

Are you able to manually set it to 1000Mbps through ethtool?

Hi,
Yes I had used the editor to change the speed option.Although the speed could be set as 1Gbps,the connection information reported as 100Mbps.Still the network was connected while the cable plugged then the network was disconnected.
Thanks!

Hi,
Yes I could set the speed to 1Gbps and save.But the connection information reported as 100Mbps.

There was no error reported from dmesg:
"
[ 1274.229686] Extcon AUX1(HDMI) enable
[ 1274.239529] tegradc 15210000.nvdisplay: unblank
[ 1955.509237] eqos 2490000.ether_qos eth0: Link is Down
[ 1961.755685] eqos 2490000.ether_qos eth0: Link is Up - 100Mbps/Full - flow control rx/tx
[ 2139.395034] eqos 2490000.ether_qos eth0: Link is Down
[ 2198.835548] r8168: eth1: link up
[ 2198.835700] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[ 2320.918807] FAN rising trip_level:1 cur_temp:51200 trip_temps[2]:61000
[ 2680.577989] NETDEV WATCHDOG: eth1 (r8168): transmit queue 0 timed out
[ 2680.578036] ------------[ cut here ]------------
[ 2680.582660] WARNING: CPU: 0 PID: 0 at …/net/sched/sch_generic.c:316 dev_watchdog+0x2c8/0x2d0
[ 2680.591167] Modules linked in: bnep fuse bcmdhd zram cfg80211 spidev overlay nvgpu bluedroid_pm ip_tables x_tables

[ 2680.591190] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.9.140-tegra #1
[ 2680.591192] Hardware name: quill (DT)
[ 2680.591194] task: ffffff8009e613c0 task.stack: ffffff8009e50000
[ 2680.591196] PC is at dev_watchdog+0x2c8/0x2d0
[ 2680.591198] LR is at dev_watchdog+0x2c8/0x2d0
[ 2680.591201] pc : [] lr : [] pstate: 00400045
[ 2680.591202] sp : ffffffc1f7004db0
[ 2680.591204] x29: ffffffc1f7004db0 x28: 0000000000000002
[ 2680.591208] x27: ffffff8009e550c8 x26: 00000000ffffffff
[ 2680.591211] x25: 0000000000000000 x24: 0000000000000140
[ 2680.591215] x23: ffffff8009e56000 x22: ffffffc1e48d8460
[ 2680.591219] x21: 0000000000000000 x20: ffffffc1e48d8000
[ 2680.591222] x19: ffffffc1e5772c00 x18: 0000000000000000
[ 2680.591225] x17: 0000000000000000 x16: 0000000000000000
[ 2680.591228] x15: ffffffffffffffff x14: ffffff800a1391e0
[ 2680.591232] x13: 0000000000000000 x12: 0000000000000006
[ 2680.591235] x11: 0000000000000006 x10: 000000000000040e
[ 2680.591238] x9 : 0000000000000001 x8 : ffffffc1f67d648f
[ 2680.591241] x7 : 0000000000000000 x6 : ffffffc1f7005bf0
[ 2680.591244] x5 : ffffffc1f7005bf0 x4 : 0000000000000000
[ 2680.591247] x3 : ffffffc1f700b7f8 x2 : ffffffc1f7005bf0
[ 2680.591250] x1 : ffffff8009e613c0 x0 : 0000000000000039

[ 2680.591255] —[ end trace c0807be1e47ae17b ]—
[ 2680.595864] Call trace:
[ 2680.595867] [] dev_watchdog+0x2c8/0x2d0
[ 2680.595872] [] call_timer_fn+0x38/0x1e0
[ 2680.595874] [] expire_timers+0x144/0x188
[ 2680.595877] [] run_timer_softirq+0xbc/0x178
[ 2680.595880] [] __do_softirq+0x13c/0x3b0
[ 2680.595884] [] irq_exit+0xd0/0x118
[ 2680.595888] [] __handle_domain_irq+0x6c/0xc0
[ 2680.595890] [] gic_handle_irq+0x5c/0xb0
[ 2680.595892] [] el1_irq+0xe8/0x194
[ 2680.595896] [] cpuidle_enter_state+0xb8/0x380
[ 2680.595899] [] cpuidle_enter+0x34/0x48
[ 2680.595902] [] call_cpuidle+0x44/0x70
[ 2680.595904] [] cpu_startup_entry+0x1b0/0x200
[ 2680.595908] [] rest_init+0x84/0x90
[ 2680.595915] [] start_kernel+0x370/0x384
[ 2680.595917] [] __primary_switched+0x80/0x94
[ 2683.216513] r8168: eth1: link up
[ 2970.815882] tegradc 15210000.nvdisplay: blank - powerdown
[ 2970.879884] extcon-disp-state external-connection:disp-state: cable 47 state 0
[ 2970.879887] Extcon AUX1(HDMI) disable
[ 2970.901406] tegra_nvdisp_handle_pd_disable: Powergated Head2 pd
[ 2970.901496] tegra_nvdisp_handle_pd_disable: Powergated Head1 pd
[ 2970.902374] tegra_nvdisp_handle_pd_disable: Powergated Head0 pd
[ 3149.365197] tegradc 15210000.nvdisplay: unblank
[ 3149.366016] tegra_nvdisp_handle_pd_enable: Unpowergated Head0 pd
[ 3149.366411] tegra_nvdisp_handle_pd_enable: Unpowergated Head1 pd
[ 3149.366524] tegra_nvdisp_handle_pd_enable: Unpowergated Head2 pd
[ 3149.372037] Parent Clock set for DC plld2
[ 3149.375670] tegradc 15210000.nvdisplay: hdmi: tmds rate:148500K prod-setting:prod_c_hdmi_111m_223m
[ 3149.379814] tegradc 15210000.nvdisplay: hdmi: get RGB quant from EDID.
[ 3149.379824] tegradc 15210000.nvdisplay: hdmi: get YCC quant from EDID.
[ 3149.417273] extcon-disp-state external-connection:disp-state: cable 47 state 1
[ 3149.417276] Extcon AUX1(HDMI) enable
[ 3149.438912] tegradc 15210000.nvdisplay: unblank
[ 3454.227090] r8168: eth1: link down"

Thanks!

The dmesg says it is 100 Mbps.

Also, I see a kernel panic from your dmesg at timestamp 2680.59. It seems caused by eth1…

Does your ethernet adapter have a pcie interface that can test on NV devkit?

Hi,
The adapter had only Mini-PCIe interface.
BTW,is Intel I210-IT supported by L4T R32.4.3 for TX2?