RK3568 调试YT8531 YT6801驱动

📅 2026/7/29 7:36:41 👁️ 阅读次数 📝 编程学习
RK3568 调试YT8531 YT6801驱动

开发板的PHY没有使用晶振, 时钟由RK3568提供。公司的板子是

但是我们的主控/无线板,上面都有25M时钟芯片,

开发板网卡配置与CMD网卡配置差太多, 改动比较大,还没调好。这部分修改完全靠手册。

网卡不使用25M晶振,如下配置:

RK3568 125Mhz 是输入的话, 参考如下配置:

调整后rx_delay tx_delay 速度94Mhz, 基本达到要求!

echo 1000 > /sys/devices/platform/fe2a0000.ethernet/phy_lb_scan

找到最佳delay

优化后的1000M测速

&gmac0 { phy-mode = "rgmii-rxid"; clock_in_out = "output"; snps,reset-gpio = <&gpio3 RK_PA4 GPIO_ACTIVE_LOW>; snps,reset-active-low; /* Reset time is 20ms, 100ms for rtl8211f */ snps,reset-delays-us = <0 20000 100000>; assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>, <&cru CLK_MAC0_OUT>; assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>; assigned-clock-rates = <0>, <125000000>, <25000000>; pinctrl-names = "default"; pinctrl-0 = <&gmac0_miim &gmac0_tx_bus2 &gmac0_rx_bus2 &gmac0_rgmii_clk &gmac0_rgmii_bus &eth0_pins>; tx_delay = <0x36>; /* rx_delay = <0x00>; */ phy-handle = <&rgmii_phy0>; status = "okay"; };

YT6801

https://www.motor-comm.com/download?kw=&category=744&wd=1&tp=1

官方网站下载驱动源码yt6801-1.0.34.tar.gz

设置环境变量,包括ARCH、 CROSS_COMPILE、KERNELDIR、=/home/forlinx/3568/OK3568-linux-source/kernel-6.1

设置完后,直接make, 居然就生成一个arm32架构的yt6801.ko, 太顺利了!
拷到板子上, 1次insmod成功,识别出eth2, 测速完美!