RK3399调试支持以太网

首先我们先来测试看看以太网是否通的

在 RK 上面调试以太网就相对比较简单,因为在 RK 的芯片中内置以太网 MAC 控制器,所以只需要搭配一颗以太网 PHY 芯片就可以实现以太网功能!

所以不管是PHY 厂家有多少,基本的功能是都是使用 RK 的驱动配置基本就可以实现,就是调用RK 的通用的驱动接口

10/100M以太网 PHY 与 MAC 之间的接口主要有 MII 和 RMII

10/100/1000M 以太网 PHY 与MAC 之间的接口主要有  RGMII

在用的比较多的 RK3288  RK3399 的芯片上面都是支持  RMII  和 RGMII  接口的,也就是都可以支持 100 M 网卡,或者 1000M网卡

RK 调试以太网 很简单,两步:

  1. 下面的配置默认已经打开,确认下就行

 Device Drivers > Network device support > PHY Device support and infrastructure

Driver for Rockchip Ethernet PHYs

  1. 修改 dts 文件,看你是支持 什么接口的,也就是你只有 100 M 网卡,还是 1000M 网卡即可

100 M 和 1000M 的PHY 就是这有点不一样

1000M PHY 配置

clkin_gmac: external-gmac-clock {

compatible = "fixed-clock";

clock-frequency = <125000000>;  // 这个时钟 1000M 使用 rgmii 接口固定是 125M

clock-output-names = "clkin_gmac";

#clock-cells = <0>;

};

&gmac {

phy-supply = <&vcc_phy>;

phy-mode = "rgmii";  // 说明接口是什么 PHY

clock_in_out = "input"; // 是 input 的时候,就由 PHY 提供 125 M ,1000M 的是 input

snps,reset-gpio = <&gpio3 15 GPIO_ACTIVE_LOW>; // 这个就具体是 硬件接口看 原理图

snps,reset-active-low;

snps,reset-delays-us = <0 10000 50000>;

assigned-clocks = <&cru SCLK_RMII_SRC>;

assigned-clock-parents = <&clkin_gmac>;

pinctrl-names = "default";

pinctrl-0 = <&rgmii_pins>;

tx_delay = <0x28>;

rx_delay = <0x11>;

status = "okay";

};

100 M  PHY 配置

clkin_gmac: external-gmac-clock {

compatible = "fixed-clock";

clock-frequency = <50000000>;  // 这个时钟 100M 使用 rmii 接口固定是 50M

clock-output-names = "clkin_gmac";

#clock-cells = <0>;

};

&gmac {

phy-supply = <&vcc_phy>;

phy-mode = "rmii";  // 说明接口是什么 PHY

clock_in_out = "output"; // 是 output 的时候,就由 RK芯片 提供 50M ,1000M 的是 input

snps,reset-gpio = <&gpio3 15 GPIO_ACTIVE_LOW>; // 这个就具体是 硬件接口看 原理图

snps,reset-active-low;

snps,reset-delays-us = <0 10000 50000>;

assigned-clocks = <&cru SCLK_RMII_SRC>;

assigned-clock-parents = <&clkin_gmac>;

pinctrl-names = "default";

pinctrl-0 = <&rgmii_pins>;

再看原理图 确认 供电、复位脚是否正确

PHY_RST

就可以了,编译,烧写,即可,软件要做的就是这些了,当然硬件确保 晶振是否正确,还有注意一点,RK3288 的时候,最好使用 外部 50M 时钟,因为RK出来的时钟会有不准!

然后就可以查看网卡是否存在

rk3399:/ # ifconfig

ifconfig

eth0      Link encap:Ethernet  HWaddr 5e:3b:2d:ef:27:c7  Driver rk_gmac-dwmac

          inet6 addr: fe80::ba2:a423:2d3e:21ed/64 Scope: Link

          UP BROADCAST MULTICAST  MTU:1500  Metric:1

          RX packets:0 errors:0 dropped:0 overruns:0 frame:0

          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:0 TX bytes:1008

          Interrupt:24

没有分配IP ,需要接上网线

eth0      Link encap:Ethernet  HWaddr 5e:3b:2d:ef:27:c7  Driver rk_gmac-dwmac

          inet addr:192.168.1.16  Bcast:192.168.1.255  Mask:255.255.255.0

          inet6 addr: fe80::ba2:a423:2d3e:21ed/64 Scope: Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:11 errors:0 dropped:0 overruns:0 frame:0

          TX packets:22 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000

          RX bytes:2152 TX bytes:2581

          Interrupt:24

就可以有了

这里提一下 usb 以太网卡,因为rk 的usb 以太网卡 没有做好,需要修改进行字节比对,后面有需要再跟大家讲!

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在RK3399 Android 10.0设备中设置静态IP,可以按照以下步骤操作: 1. 首先,在设备上找到并打开“设置”应用程序。 2. 在设置界面中,向下滚动直到找到“网络和互联网”选项,并点击进入。 3. 在网络和互联网菜单中,选择“以太网”选项。如果设备没有物理以太网接口,可能显示为“有线连接”或类似选项。 4. 进入以太网设置后,点击右上角的菜单按钮(通常是三个竖排的点或线),然后选择“高级”或“高级选项”。 5. 在高级设置中,寻找一个类似“IP设置”、“IP地址设置”或“连接类型”等选项,点击进入。 6. 在IP设置菜单中,通常默认为“DHCP”(动态IP分配)。如果要切换为静态IP,请选择“静态”或“手动”选项。 7. 在静态IP设置中,输入您想要使用的IP地址、子网掩码、默认网关和DNS服务器。确保这些信息准确无误,一般可以从网络管理员或路由器配置中获取。 8. 输入完毕后,点击“保存”或“应用”按钮,以应用并保存新的静态IP设置。 9. 返回网络设置主菜单,重新启动RK3399设备,以使新的静态IP设置生效。 在完成以上步骤后,您的RK3399 Android 10.0设备将会使用您所提供的静态IP地址进行以太网连接。请注意,静态IP设置通常用于特定网络环境中,如企业网络或技术调试,一般家庭用户使用动态IP更为常见。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荣敢飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值