为什么我的英特尔Tolapainetworking芯片不传输数据包?

我试图部署基于英特尔EP80579(Tolapai)芯片的embedded式系统(Nexcom的NISE 110)。 Tolapai显然将单片机上的以太网等控制器集成在一起( 英特尔主页 )。

机器无法获得networking连接。 尽我所能诊断:

驱动程序

  • 英特尔的驱动程序编译和安装没有问题(版本1.0.3-144)。 内核版本和Linux发行版(CentOS 5.2,2.6.18)匹配驱动程序的安装说明。
  • 驱动程序加载并显示在lsmod (模块名称是gcuiegbe
  • 接口eth0eth1在ifconfig中显示

使用ifconfig

  • 我可以调出带有固定IP的接口
  • ping本地接口工作
  • ifconfig显示标志UP RUNNING

链接

  • ethtool显示“Link detected:no”,“Speed:unknown(65536)”和“Duplex:unknown(255)”
  • 链接LED亮起
  • 在电缆的另一端, ethtool显示“Link detected:yes”,并报告1000 Mbps的速度,据称这是有问题的设备自动neogotiated。

networkingstream量分析

  • 该设备不响应​​ARP,ICMP回声或其他任何东西( iptables被closures)
  • 当试图发送ICMP或DHCP请求时,他们永远不会到达另一端
  • 活动LED在设备上closures,在另一端开启。

我尝试了以下没有任何影响:

  • 不同的电缆(2直,一个交叉),我得到每个链接LED点亮。
  • 另一端有三个不同的设备(一台PC,一台上网本,一台路由器)
  • 固定两边的ARP表项
  • 将机器的两个networking端口相互连接,将不会ping通电缆,而是在本地ping。 为此,尝试了直线和交叉电缆。

哎哟。 这是Nexcom支持的说法:

NISE 110使用双Marvell GbE LAN端口,您将需要使用这些芯片的驱动程序而不是EP80579驱动程序。

所以我build立了以太网控制器(集成在Tolapai中),这些控制器没有连接任何东西。

我很抱歉,伙计们。

混乱继续。 在找不到任何 Marvell设备后,尝试了三个不同的驱动程序后,我抱怨支持,谁现在研究了一些,并回答:

我对这个问题的困惑表示抱歉。 我发现更多的信息,Marvell芯片实际上只是收发器,局域网是通过EP80597。

并进一步:

HQ说NISE 110的Linux兼容性不好,他们已经用RedHat 5(CentOS 5)进行了testing,但仍然有一些限制。注:英特尔从RedHat 5改为CentOS 5.最好使用Windows XP Embedded

这很烦人,因为我们明确select了广告的Linux兼容性框,我们需要这个组件是可靠的,因为我们将在客户站点部署它,我们不想一直发送服务人员。

ethtool ethN报告Link detected: yes

你正在使用哪个驱动程序? 我记得对于一些英特尔网卡,有两个可能的驱动程序(e1000 vs e1000e),其中一个对一些芯片不起作用。

我会尝试在设备上安装OpenWrt 12.09并再次尝试实验。

在过去,我已经从Redhat 6.4的openwrt工作中完成了iegbe驱动程序。 我碰到的一个问题是,PHY正在与不正确的MAC相匹配。