This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335的百兆可以,千兆怎么不可以,抄的evm板子,Phy换成了RTL8211,千兆不能ping通;

我看网上的一些RGMII的一些配置都有了,可以千兆始终ping不行,

AM335的百兆可以,千兆怎么不可以,抄的evm板子,Phy换成了RTL8211,千兆不能ping通;

  • RTL8211驱动有没有特殊的配置,另外PHY芯片的外围电路都检查过么?包括电容电阻。
  • 现在的问题是网卡一可以正常工作,网卡2会自己down和up,并且iperf工具测试eth1严重丢包,是为什么,是不是还有那些地方需要修改,求帮忙提示一下!!感谢感谢

    AR8031芯片移植成RTL8211网络芯片,现在千兆ping通了,我在uboot下修改了phy地址:
    static struct cpsw_slave_data cpsw_slaves[] = {
    {
    .slave_reg_ofs = 0x208,
    .sliver_reg_ofs = 0xd80,
    .phy_id = /*0*/2,
    },
    {
    .slave_reg_ofs = 0x308,
    .sliver_reg_ofs = 0xdc0,
    .phy_id = 1,
    },
    };
    在 include/configs/ok335x.h添加了宏:
    #define CONFIG_PHY_REALTEK

    在1.3 drivers/net/phy/realtek.c下修改了:
    static struct phy_driver RTL8211E_driver = {
    .name = "RealTek RTL8211E",
    .uid = 0x1cc915,
    .mask = 0xfffff0,
    .features = PHY_GBIT_FEATURES,
    .config = &rtl8211x_config,
    /*.startup = &rtl8211x_startup,*/
    .startup = &genphy_startup,
    .shutdown = &genphy_shutdown,
    };
    在kernel中修改的少,只是修改了phyid地址;

    现在的问题是网卡一可以正常工作,网卡2会自己down和up,并且iperf工具测试eth1严重丢包,是为什么,是不是还有那些地方需要修改,求帮忙提示一下!!感谢感谢
  • realtek,c这个文件参考一下这个:github.com/.../realtek.c
  • 印象中大部分的RGMII的网卡都是要做internal delay的配置的,不确定你的这个RTL8211是否也需要,比对一下spec,看看是不是这点上的额差异导致的。
    再有就是PCB的走线要注意了,参考这里:
    processors.wiki.ti.com/.../Sitara_Layout_Checklist
  • 还有个问题,uboot下总是只能使用eth0第一个网卡能ping通,另一个网口eth1总是调不同网络,不知道怎么可以也能ping通,请教怎么在uboot下二个网口都能调通千兆,多谢;
    static struct cpsw_platform_data cpsw_data = {
    .mdio_base = AM335X_CPSW_MDIO_BASE,
    .cpsw_base = AM335X_CPSW_BASE,
    .mdio_div = 0xff,
    .channels = 8,
    .cpdma_reg_ofs = 0x800,
    .slaves = 2,
    .slave_data = cpsw_slaves,
    .ale_reg_ofs = 0xd00,
    .ale_entries = 1024,
    .host_port_reg_ofs = 0x108,
    .hw_stats_reg_ofs = 0x900,
    .mac_control = (1 << 5) /* MIIEN */,
    .control = cpsw_control,
    .host_port_num = 1,
    .version = CPSW_CTRL_VERSION_2,
    };
    .host_port_num = 1,这个改成1口第二个网口eth1还是不能ping通
  • 你好,现在想修改AM335的主频,现在用的uboot201109、内核是linux3.2的,需要修改什么内容;257
  • U-boot中的board.c中有个am33xx_spl_board_init()函数可以配置