瑞芯微RGMII的配置
主要配置项
除去复位等信号,我们主要关注两大块的配置:
时钟配置
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的配置相关推荐
- 瑞芯微RK3568驱动配置之十串口
基于飞凌的开发板设计,这里需要使用到RK3568的串口,开发板只开放了UART2.UART3.UART4.UART5.UART8.查看文档,准备配置UART0.UART6.UART7.UART9.一共 ...
- 瑞芯微 RK3399 JTAG 配置指南
RK3399的CPU采用big.LITTLE大小核架构,双Cortex-A72大核+四Cortex-A53小核结构,对整数.浮点.内存等作了大幅优化,在整体性能.功耗及核心面积三个方面都具革命性提升. ...
- 瑞芯微RK3566通用型SoC参数配置
瑞芯微RK3566芯片是一款专为消费类行业应用打造的通用型SoC.CPU采用4核A55架构处理器,集成G52图形处理器,内置独立的NPU,运行安卓11和Linux系统.RK3566主要面向平板电脑.带 ...
- 瑞芯微RK3566 简单介绍与Android11.0 固件编译
rockchip RK3566 瑞芯微 RK3566 四核 64 位Cortex-A55 处 理 器 , 主 频 最 高1.8GHz,效能有大幅提升:采用22nm先进工艺,具有低功耗高性能的特点. 瑞 ...
- 瑞芯微RK2918、全志A10和AML8726-M3方案ICS系统运行效果对比
为什么80%的码农都做不了架构师?>>> 6月12日注:由于对比时AML8726-M3方案的专用Flash插件还未出现,所以下文中关于网页应用和在线视频能力方面的对比不作为参考 ...
- 瑞芯微RK3288处理器性能,RK3288芯片参数介绍
瑞芯微在美国拉斯维加斯举行的CES2014上发布了最新的RK3288四核处理器.根据官方给出的资料,RK3288将会采用四核Cortex-A17构架,最高主频达到1.8GHz,集成Mali-T764图 ...
- 35、ubuntu20.04搭建瑞芯微的npu仿真环境和测试rv1126的Debain系统下的yolov5+npu检测功能以及RKNN推理部署以及RTSP视频流解码
基本思想:手中有一块core-1126/1109-JD4,记录一下其刷机过程和开发人数统计,与树莓派的nanodet 每帧200ms对比一下 第一步:刷机,真的是难,各种各样的小问题,反正成功的方法只 ...
- 【瑞芯微Rockchip Linux平台】SoftAp需求实现(3)动态获取BT Mac地址并更新beacon帧中的mac信息
[瑞芯微Rockchip Linux平台]SoftAp需求实现(3)动态获取BT Mac地址并更新beacon帧中的mac信息 1. 获取本机的蓝牙mac地址 __get_bt_mac_addr() ...
- 人脸识别嵌入式Linux芯片瑞芯微RV1109参数介绍
瑞芯微RV1109是一款用于工控机或人工智能视觉应用的高性能机器视觉处理器SoC.它基于双核ARM Cortex-A7 32位内核,集成了NEON和FPU.每个核心有一个32KB的I-cache和32 ...
最新文章
- Android四大组件之——Activity的生命周期(图文详解)
- 前端:JS获取浏览器类型类库
- java 文件通道_Java NIO(四)文件通道
- jqGrid 中的editrules来自定义colModel验证规则
- 异常笔记:运行hdfs copyFromLocal 上传文件报错
- matlab与r语言运算速度,R语言与matlab循环时间对比
- avc水平什么意思_5个步骤切实有效地提高你的写作水平
- c++中istream类型到bool类型的隐式转换
- 10.31,11.1外出纪要
- Git merge分支到master
- python如何设置矩阵_Python Numpy如何操作数组和矩阵
- Web端的邮件内容HTML格式规范总结
- [Unity3d]刀斧武器砍击的攻击碰撞判定
- SheetJS生成/解析Excel
- 原生JS获取QQ好友列表
- 计算机配件名称++太平洋,笔记本电脑配件大全
- STM32F103---标准库函数驱动DS18B20
- 数字电路基础04(查找表LUT)
- Kafka推送数据方法
- [第11课]统计:集中趋势
热门文章
- 初中英语期中测试软件有哪些,初中英语(下)期中测试卷.doc
- 深度学习项目实战——基于多模态场景监控系统
- frcnn系列错误: TypeError: 'numpy.float64' object cannot be interpreted as an index 的解决方案
- HTC G3 hero 初体验
- pycharm只显示左侧project,不显示项目目录
- upupw kangle 504 错误调试 服务器拒绝了链接
- Unity 关于GUID的一些实用例子
- maven自动编译,解决你每次代码修改需要重新编译的繁琐
- mobaxterm(linux)解压7z.001.001/7z.002.002等分卷文件
- Flink 官方文档汇总