TI中文支持网
TI专业的中文技术问题搜集分享网站

am335x eth1能link,ping不通

各位高手:

大家好!我做了1个 AM3354+双dp83822(100m网口)的板子,采用RGMII连接.在linx-3.2下,eth0能正常工作.eth1能link,显示速度100M/FULL.但是板子ping电脑和电脑ping板子都ping不通.wirseshark抓从板子发出的ping包. 以下是 ethtool 命令的信息

root@am335x-evm:~# ethtool eth1
Settings for eth1:
        Supported ports: [ TP AUI BNC MII FIBRE ]
        Supported link modes:   10baseT/Half 10baseT/Full                                100baseT/Half 100baseT/Full        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full                                100baseT/Half 100baseT/Full        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 3
        Transceiver: external
        Auto-negotiation: on
        Current message level: 0x00000000 (0)
                               
        Link detected: yes

再发一个eth0的

root@am335x-evm:~# ethtool eth0
Settings for eth0:
        Supported ports: [ TP AUI BNC MII FIBRE ]
        Supported link modes:   10baseT/Half 10baseT/Full                                100baseT/Half 100baseT/Full        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full                                100baseT/Half 100baseT/Full        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 1
        Transceiver: external
        Auto-negotiation: on
        Current message level: 0x00000000 (0)
                               
        Link detected: yes

在UBOOT下.测量 RGMII1_TCLK的频率是25MHZ(正常情况).而RGMII2_TCLK则量的频率(很不稳定,最高也就125kmz).网口2引脚配置如下:

static struct module_pin_mux rgmii2_pin_mux[] = {
    {OFFSET(gpmc_a0), MODE(2)},            /* RGMII2_TCTL */
    {OFFSET(gpmc_a1), MODE(2) | RXACTIVE},    /* RGMII2_RCTL */
    {OFFSET(gpmc_a2), MODE(2)},            /* RGMII2_TD3 */
    {OFFSET(gpmc_a3), MODE(2)},            /* RGMII2_TD2 */
    {OFFSET(gpmc_a4), MODE(2)},            /* RGMII2_TD1 */
    {OFFSET(gpmc_a5), MODE(2)},            /* RGMII2_TD0 */
    {OFFSET(gpmc_a6), MODE(2)},            /* RGMII2_TCLK */
    {OFFSET(gpmc_a7), MODE(2) | RXACTIVE},    /* RGMII2_RCLK */
    {OFFSET(gpmc_a8), MODE(2) | RXACTIVE},    /* RGMII2_RD3 */
    {OFFSET(gpmc_a9), MODE(2) | RXACTIVE},    /* RGMII2_RD2 */
    {OFFSET(gpmc_a10), MODE(2) | RXACTIVE},    /* RGMII2_RD1 */
    {OFFSET(gpmc_a11), MODE(2) | RXACTIVE},    /* RGMII2_RD0 */
    {OFFSET(mdio_data), MODE(0) | RXACTIVE | PULLUP_EN},/* MDIO_DATA */
    {OFFSET(mdio_clk), MODE(0) | PULLUP_EN},    /* MDIO_CLK */
    {-1},
};

频率配置只有针对整个CPSW的配置.怀疑是不是有一个开关控制着网口2(eth1)的输出频率.但是在芯片手册中没有发现相关的寄存器配置.

Shine:

回复 昨夜无眠:

感谢分享解决方法。

527 9:

回复 Shine:

你好,请问一下怎么配置LED1在传输数据时间闪烁?

昨夜无眠:

回复 527 9:

根据PHY手册里,在PHY驱动里直接调用phy_write写相关的PHY寄存器。或者用硬件修改也可以达到目的

bing hu:

回复 昨夜无眠:

hi user5351889能否分享一下 如何解决的这个问题?谢谢

yongqing wang:

回复 bing hu:

你查一下你的电路是否有复用造成的问题

赞(0)
未经允许不得转载:TI中文支持网 » am335x eth1能link,ping不通
分享到: 更多 (0)