AnsweredAssumed Answered

【imx6】Android4.4.3 fec网卡能接收数据,但发生数据失败

Question asked by q g on Apr 24, 2015
Latest reply on May 21, 2015 by king liu

Hi,又来麻烦了,原谅我没有用英文。


我的网卡现在能接收数据,不能发送数据。测试方法,板子上ping pc,pc上抓包无数据。pc ping板子,板子上tcpdump抓包可以看到收到数据了。

板子ping 自己,收发都OK,但是ping 局域网其他,发送失败 ,路由有设置。

 

板子参考sabresd设计的。网卡我们使用的Ar8035,sabresd使用的Ar8031,接口上与sabresd完全一致(除了电源上)。

所以dts的配置也跟sabresd一致。

原来我们这块板子在Android4.2系统时,使用你们BSP,网卡这块都没有动的。4.2的bsp中.gpio_irq = MX6_ENET_IRQ,我们是屏蔽掉的。现在4.4.3的BSP我们也没用这个中断。

 

有什么建议不???



补充一下:

我看原4.2的BSP中有对Ar8031相关寄存器设置的,但是4.4.3中没有了,不需要?

下面是4.2的。

static int mx6q_sabresd_fec_phy_init(struct phy_device *phydev)

{

    unsigned short val;

 

    /* Ar8031 phy SmartEEE feature cause link status generates glitch,

     * which cause ethernet link down/up issue, so disable SmartEEE

     */

    phy_write(phydev, 0xd, 0x3);

    phy_write(phydev, 0xe, 0x805d);

    phy_write(phydev, 0xd, 0x4003);

    val = phy_read(phydev, 0xe);

    val &= ~(0x1 << 8);

    phy_write(phydev, 0xe, val);

Outcomes