完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们在 i.MX6 上看到奇怪的以太网行为。
在我们的网络设置中,我们使用交换机连接 Linux PC 和 SabreSD i.MX6 板(见下图) +----------+ | 以太网 | |开关 | +----------+ | | | | | | +------------+ +------------+ | 个人电脑 | | i.MX6 板 | +------------+ +------------+ 两个网络链路都是 1Gbit 全双工。 SabreSD 板运行主线 Linux 3.10.9,带有 PREEMPT_RT 补丁 + 来自 3.14 的 FEC 驱动程序)。 在 Linux 上,我们以 UDP 模式启动了 iperf 服务器(网络压力测试工具)(使用的命令:“iperf –s –u”)。 Linux PC 运行 Ubuntu 12。在这台 PC 上我们: - 每秒 ping i.MX6 板 - 在 UDP 模式下运行 iperf 客户端(使用的命令:“while [ 1 ]; do iperf –c 'SabreSD board 的 IP 地址' -u -b 100m -t 30 -l 256;sleep 1;done”) 一段时间后(大多数时间是几分钟),我们看到 i.MX6 板停止响应来自 Linux PC 的 ping。仔细检查表明 i.MX6 中的 FEC 不再生成接收帧中断。随附的屏幕截图显示 RXF 中断已启用。我们知道 FEC 仍在接收以太网帧(因为我们看到与帧接收相关的事件计数器在增加),但是没有生成接收帧中断(只有 MII 中断)。 如果您查看屏幕截图中的 RDAR 寄存器,您会发现它的值为 0,这意味着 FEC 无法将接收到的帧写入主内存,因为缺少可用的空闲接收描述符。 当我们从 SabreSD 板上 ping Linux PC 时,我们看到 i.MX6 上的接收中断再次开始发生。在研究 FEC 驱动程序后,我们发现驱动程序在处理传输中断时也会清空接收缓冲区。因此,当空闲接收描述符再次可用时,FEC 似乎再次开始生成接收中断。我们现在的问题是:FEC 如何进入停止生成接收中断的状态,我们如何防止这种情况发生? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1908个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36358 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4397 浏览 0 评论
6052 浏览 1 评论
6764 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4214 浏览 0 评论
619浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
615浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
606浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
694浏览 2评论
798浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 12:15 , Processed in 1.079882 second(s), Total 76, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号