主要配置项

除去复位等信号,我们主要关注两大块的配置:

时钟配置

MAC 采用125M时钟,PHY采用25M时钟。

主要配置时钟源,这个和具体硬件连线强相关。例如125M时钟可以来源于soc内部的PLL,也可以由对端PHY 提供。

由对端PHY 提供时,由于MAC 和PHY是两个器件,对于125M这个时钟的走线要注意,毕竟是高速时钟。

而网上一些资料显示rk家内部的125M时钟在某些型号上存在问题,在做实际上要和厂家确认。

delay的配置

分为tx_delay 和rx_delay,可以由phy和mac侧进行配置。

例如我们上图中 phy侧硬件启用了rx_delay,则rx由PHY侧进行 配置;而tx由MAC进行配置。

RK家提供了测试工具,可以尽快测试出合适的delay值。

delay值的影响:比如默认delay值为0x44,在通过hub和PC互联时没有问题,而和pc直接连接时,协商就有问题,有时不能协商,有时为100M

所以已经要用测试工具找到合适的delay值。

配置实战

&mdio0 {rgmii_phy0: phy@1 {compatible = "ethernet-phy-ieee802.3-c22";motorcomm,clk-out-frequency-hz = <125000000>;reg = <0x1>;     };
};&gmac0 {// Use rgmii-rxid mode to disable rx delay inside Socphy-mode = "rgmii-rxid";clock_in_out = "input";snps,reset-gpio = <&gpio4 RK_PA2 GPIO_ACTIVE_LOW>;snps,reset-active-low;// Reset time is 20ms, 100ms for rtl8211f snps,reset-delays-us = <0 20000 100000>;pinctrl-names = "default";pinctrl-0 = <&gmac0_miim&gmac0_tx_bus2&gmac0_rx_bus2&gmac0_rgmii_clk&gmac0_rgmii_bus&gmac0_clkinout>;tx_delay = <0x35>;// rx_delay = <0x4f>;phy-handle = <&rgmii_phy0>;status = "okay";
};

针对上述配置的解释:

1.  这里有两个部分,一部分为mac,一部分为phy,两者通过phy-handle进行了关联

2.  在gmac里面,启用了管脚 gmac0_clkinout,即125M时钟由PHY通过此管脚提供给GMAC

3.  在phy侧,启用clk-out-frequency-hz   125M时钟的配置,以便PHY驱动进行时钟的输出使能配置。这个具体的配置项字段要看具体phy的驱动。

UDP丢包测试

测试丢包

测试命令

iperf -s -u

iperf -c 192.168.10.10 -u -i 1 -b 1000M -t 60

结果丢包7.x%

buffer修改

而修改接收buffer

echo  6291456 >/proc/sys/net/core/rmem_default 

则丢包问题解决。

修改/etc/sysctl.conf

net.core.rmem_max=6291456    6M

net.core.rmem_default=6291456

linux 与windows差异

在linux下,iperf -s -u 默认的窗口大小只有204K,通过命令

iperf -s -u -w 4M也不能增大此窗口,只能通过上述命令修改。

而在windows下,则可以通过iperf -s -u -w 4M 对接收buffer进行临时修改测试。

瑞芯微RGMII的配置相关推荐

  1. 瑞芯微RK3568驱动配置之十串口

    基于飞凌的开发板设计,这里需要使用到RK3568的串口,开发板只开放了UART2.UART3.UART4.UART5.UART8.查看文档,准备配置UART0.UART6.UART7.UART9.一共 ...

  2. 瑞芯微 RK3399 JTAG 配置指南

    RK3399的CPU采用big.LITTLE大小核架构,双Cortex-A72大核+四Cortex-A53小核结构,对整数.浮点.内存等作了大幅优化,在整体性能.功耗及核心面积三个方面都具革命性提升. ...

  3. 瑞芯微RK3566通用型SoC参数配置

    瑞芯微RK3566芯片是一款专为消费类行业应用打造的通用型SoC.CPU采用4核A55架构处理器,集成G52图形处理器,内置独立的NPU,运行安卓11和Linux系统.RK3566主要面向平板电脑.带 ...

  4. 瑞芯微RK3566 简单介绍与Android11.0 固件编译

    rockchip RK3566 瑞芯微 RK3566 四核 64 位Cortex-A55 处 理 器 , 主 频 最 高1.8GHz,效能有大幅提升:采用22nm先进工艺,具有低功耗高性能的特点. 瑞 ...

  5. 瑞芯微RK2918、全志A10和AML8726-M3方案ICS系统运行效果对比

    为什么80%的码农都做不了架构师?>>>    6月12日注:由于对比时AML8726-M3方案的专用Flash插件还未出现,所以下文中关于网页应用和在线视频能力方面的对比不作为参考 ...

  6. 瑞芯微RK3288处理器性能,RK3288芯片参数介绍

    瑞芯微在美国拉斯维加斯举行的CES2014上发布了最新的RK3288四核处理器.根据官方给出的资料,RK3288将会采用四核Cortex-A17构架,最高主频达到1.8GHz,集成Mali-T764图 ...

  7. 35、ubuntu20.04搭建瑞芯微的npu仿真环境和测试rv1126的Debain系统下的yolov5+npu检测功能以及RKNN推理部署以及RTSP视频流解码

    基本思想:手中有一块core-1126/1109-JD4,记录一下其刷机过程和开发人数统计,与树莓派的nanodet 每帧200ms对比一下 第一步:刷机,真的是难,各种各样的小问题,反正成功的方法只 ...

  8. 【瑞芯微Rockchip Linux平台】SoftAp需求实现(3)动态获取BT Mac地址并更新beacon帧中的mac信息

    [瑞芯微Rockchip Linux平台]SoftAp需求实现(3)动态获取BT Mac地址并更新beacon帧中的mac信息 1. 获取本机的蓝牙mac地址 __get_bt_mac_addr() ...

  9. 人脸识别嵌入式Linux芯片瑞芯微RV1109参数介绍

    瑞芯微RV1109是一款用于工控机或人工智能视觉应用的高性能机器视觉处理器SoC.它基于双核ARM Cortex-A7 32位内核,集成了NEON和FPU.每个核心有一个32KB的I-cache和32 ...

最新文章

  1. Android四大组件之——Activity的生命周期(图文详解)
  2. 前端:JS获取浏览器类型类库
  3. java 文件通道_Java NIO(四)文件通道
  4. jqGrid 中的editrules来自定义colModel验证规则
  5. 异常笔记:运行hdfs copyFromLocal 上传文件报错
  6. matlab与r语言运算速度,R语言与matlab循环时间对比
  7. avc水平什么意思_5个步骤切实有效地提高你的写作水平
  8. c++中istream类型到bool类型的隐式转换
  9. 10.31,11.1外出纪要
  10. Git merge分支到master
  11. python如何设置矩阵_Python Numpy如何操作数组和矩阵
  12. Web端的邮件内容HTML格式规范总结
  13. [Unity3d]刀斧武器砍击的攻击碰撞判定
  14. SheetJS生成/解析Excel
  15. 原生JS获取QQ好友列表
  16. 计算机配件名称++太平洋,笔记本电脑配件大全
  17. STM32F103---标准库函数驱动DS18B20
  18. 数字电路基础04(查找表LUT)
  19. Kafka推送数据方法
  20. [第11课]统计:集中趋势

热门文章

  1. 初中英语期中测试软件有哪些,初中英语(下)期中测试卷.doc
  2. 深度学习项目实战——基于多模态场景监控系统
  3. frcnn系列错误: TypeError: 'numpy.float64' object cannot be interpreted as an index 的解决方案
  4. HTC G3 hero 初体验
  5. pycharm只显示左侧project,不显示项目目录
  6. upupw kangle 504 错误调试 服务器拒绝了链接
  7. Unity 关于GUID的一些实用例子
  8. maven自动编译,解决你每次代码修改需要重新编译的繁琐
  9. mobaxterm(linux)解压7z.001.001/7z.002.002等分卷文件
  10. Flink 官方文档汇总