Lan7430 issue for custom board Jetson Orin Nano

Hi all, we have an issue with detecting ethernet connection via Lan7430 on my Jetson Orin Nano 8 GB custom board.
The board designed according the Jetson Orin Nano dev kit. We put the Lan7430 controller on C1 PCI instead of BT module.
We rebuilt the kernel by instruction Kernel Customization — NVIDIA Jetson Linux Developer Guide 1 documentation

In two ways (on host machine+flashing and on the target device).

We can see the lan7430 in pcie devices and in the ethernet devices too, drivers are also loaded. But cable connection can’t be detected.
The native Realtech connection works fine.
What are we missing?
The logs and schematic for lan7430 attached below:
dmesg.log (59.1 KB)
lan7430.pdf (39.8 KB)
lspci.log (26.9 KB)
UART.log (76.8 KB)
ifconfig.log (1.6 KB)

1 Like

Having exact the same issues, with the same logs.

I saw a kernel stack dump happened in the dmesg.

Looks like lan743x_netdev_open has some error there. Please also check with the PHY vendor if this driver version of driver is compatible with this kernel version.

[   13.093240] ------------[ cut here ]------------
[   13.093242] called from state RUNNING
[   13.093259] WARNING: CPU: 4 PID: 501 at drivers/net/phy/phy.c:1125 phy_start+0x54/0xc0
[   13.093271] Modules linked in: usb_f_acm u_serial usb_f_rndis u_ether libcomposite snd_soc_tegra210_mixer(O) snd_soc_tegra186_asrc(O) snd_soc_tegra210_admaif(O) snd_soc_tegra_pcm snd_soc_tegra210_afc(O) snd_soc_tegra186_arad(O) snd_soc_tegra210_mvc(O) snd_soc_tegra210_sfc(O) snd_soc_tegra210_ope(O) snd_soc_tegra210_dmic(O) snd_soc_tegra186_dspk(O) snd_soc_tegra210_adx(O) snd_soc_tegra210_amx(O) snd_soc_tegra210_i2s(O) r8168(O) snd_soc_tegra210_ahub(O) tegra210_adma spidev nvvrs_pseq_rtc(O) snd_soc_tegra_machine_driver(O) snd_soc_tegra_utils(O) snd_soc_simple_card_utils tegra234_oc_event(O) fusb301(O) crct10dif_ce mttcan(O) nvpps(O) can_dev nvpmodel_clk_cap(O) tegra_cactmon_mc_all(O) thermal_trip_event(O) snd_hda_codec_hdmi tegra234_aon(O) tegra_aconnect snd_hda_tegra snd_hda_codec snd_hda_core pwm_tegra_tachometer(O) lan743x(O) at24 tegra_pcie_dma_test(O) tegra_pcie_edma(O) nvidia(OE) host1x_fence(O) mc_hwpm(O) spi_tegra114 nvidia_vrs_pseq(O) tegra_dce(O) nvhost_isp5(O) nvhost_vi5(O)
[   13.093330]  tsecriscv(O) nvhost_nvcsi_t194(O) tegra_camera(O) v4l2_dv_timings nvhost_nvcsi(O) tegra_camera_platform(O) capture_ivc(O) governor_userspace tegra_camera_rtcpu(O) tegra_drm(O) ivc_bus(O) hsp_mailbox_client(O) ivc_ext(O) v4l2_fwnode v4l2_async videobuf2_dma_contig videobuf2_memops videobuf2_v4l2 tegra_wmark(O) videobuf2_common videodev nvhwpm(O) nvhost_capture(O) mc cec host1x_nvhost(O) drm_kms_helper nvidia_p2p(O) ina3221 nvgpu(O) governor_pod_scaling(O) host1x(O) mc_utils(O) nvmap(O) nvsciipc(O) fuse drm ip_tables x_tables ipv6 pwm_fan pwm_tegra tegra_bpmp_thermal tegra_xudc ucsi_ccg typec_ucsi typec nvme nvme_core phy_tegra194_p2u pcie_tegra194
[   13.093382] CPU: 4 PID: 501 Comm: NetworkManager Tainted: G           OE     5.15.148-tegra #1
[   13.093385] Hardware name: NVIDIA NVIDIA Jetson Orin NX Engineering Reference Developer Kit/Jetson, BIOS 36.4.3-gcid-38968081 01/08/2025
[   13.093388] pstate: 60400009 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   13.093391] pc : phy_start+0x54/0xc0
[   13.093393] lr : phy_start+0x54/0xc0
[   13.093395] sp : ffff80000b8cb160
[   13.093396] x29: ffff80000b8cb160 x28: ffff000088002980 x27: 0000000000000000
[   13.093400] x26: 0000000000000004 x25: 0000000000000005 x24: ffff000088003000
[   13.093403] x23: ffff000088002248 x22: ffffb8b8c3770cc0 x21: ffff000088002000
[   13.093405] x20: ffff000088002728 x19: ffff000088002248 x18: ffffffffffffffff
[   13.093408] x17: 0000000000000000 x16: ffffb8b8e2ad87b0 x15: ffff80008b8cb0ad
[   13.093411] x14: 0000000000000000 x13: 206574617473206d x12: 6f72662064656c6c
[   13.093414] x11: 656820747563205b x10: 000000000000000a x9 : ffff80000b8cb160
[   13.093417] x8 : 000000000000000a x7 : 0000000000000007 x6 : 000000000000000a
[   13.093420] x5 : ffff0001f12b99f0 x4 : 00000000fffff2d0 x3 : ffffb8b8e44181c8
[   13.093423] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000082db4d80
[   13.093426] Call trace:
[   13.093427]  phy_start+0x54/0xc0
[   13.093429]  lan743x_netdev_open+0x650/0x11a0 [lan743x]
[   13.093438]  __dev_open+0xf4/0x1e0
[   13.093446]  __dev_change_flags+0x19c/0x220
[   13.093450]  dev_change_flags+0x44/0x90
[   13.093453]  do_setlink+0x224/0xd50
[   13.093457]  __rtnl_newlink+0x568/0x8a0
[   13.093460]  rtnl_newlink+0x5c/0x90
[   13.093463]  rtnetlink_rcv_msg+0x130/0x330
[   13.093466]  netlink_rcv_skb+0x64/0x130
[   13.093472]  rtnetlink_rcv+0x30/0x40
[   13.093474]  netlink_unicast+0x300/0x360
[   13.093478]  netlink_sendmsg+0x1e4/0x450
[   13.093480]  __sock_sendmsg+0x68/0x80
[   13.093486]  ____sys_sendmsg+0x240/0x260
[   13.093489]  ___sys_sendmsg+0x90/0xe0
[   13.093491]  __sys_sendmsg+0x7c/0xe0
[   13.093493]  __arm64_sys_sendmsg+0x34/0x50
[   13.093495]  invoke_syscall+0x5c/0x130
[   13.093501]  el0_svc_common.constprop.0+0x64/0x110
[   13.093504]  do_el0_svc+0x74/0xa0
[   13.093508]  el0_svc+0x28/0x80
[   13.093512]  el0t_64_sync_handler+0xa4/0x130
[   13.093515]  el0t_64_sync+0x1a4/0x1a8
[   13.093518] ---[ end trace f5b1e3cb6ad9ddd4 ]---

How can I check compatibility driver and kernel version? I build the kernel and module drivers from Nvidia jetpack sources.
Should I download the latest Linux kernel source, and replace lan743x source in the Nvidia Jetpack Linux kernel driver?

We don’t guarantee any vendor driver could really work just there or not. You could check with the phy vendor for the error first.

  • vendor: 1055 (“Microchip Technology / SMSC”), device: 7430 (“LAN7430”)

We have :
[ 10.144475] lan743x 0001:01:00.0 (unnamed net_device) (uninitialized): PCI: Vendor ID = 0x1055, Device ID = 0x7430

It seems, that vendor ID is fine.

I am not sure what you are trying to say here. What is the point to check that?

Sorry for misunderstanding.
Could you say, how to check this?

Contact with the PHY vendor directly. I mean LAN7430 is from Microchip… then please report this error to Microchip.

The error is from their driver but not NVIDIA driver. I have no comment for what might be wrong there.

Thx, I’ll try to contact with Microchip.