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.

uboot 下eth1网口

Other Parts Discussed in Thread: AM3352

请问, 在用AM3352时在UBOOT下,我有2网口,默认使能的是eth0网口,我要怎么改成使能eth1网口,eth1来传输文件.

  • U-boot默认只使用一个网口,网口0,把对应的PHY ID改成网口1就可以了

  • 这是我原来定义的

    static struct cpsw_slave_data cpsw_slaves[] = {  {   .slave_reg_ofs = 0x208,   .sliver_reg_ofs = 0xd80,   .phy_addr = 7,  },  {   .slave_reg_ofs = 0x308,   .sliver_reg_ofs = 0xdc0,   .phy_addr = 0,  }, };

     

    是不是要改成

    static struct cpsw_slave_data cpsw_slaves[] = {  {   .slave_reg_ofs = 0x208,   .sliver_reg_ofs = 0xd80,   .phy_addr =0,  },  {   .slave_reg_ofs = 0x308,   .sliver_reg_ofs = 0xdc0,   .phy_addr = 7,  }, };

    还有什么地方需要修改的吗?

  • Hi,

    1. 如果是rgmii, ,mux.c內請確認有無rgmii2的pinmux

    2. board.c內除了您改的phy_addr需要對應以外,

         cpsw_data的slaves須改為2

    3. 請確認Phy是否需要設置tx/rx delay timing.

  • 你好!,

    1.  我用的MII模式,gmII2的PINMUX是增加了的,writel(MII_MODE_ENABLE, &cdev->miisel);

    cpsw_slaves[0].phy_if = cpsw_slaves[1].phy_if =
    PHY_INTERFACE_MODE_MII;

    2.我的ETH1接的是一个IP175D的交换芯片,

    按照你的上面更改后还是不能PING通.

    ETH1能不能接交换芯片,如果能接要怎么配置啊

    谢谢!

  • Hi,

    1. 所以mux.c內的mii2的pimux設置有確認過嗎?

    2. Link Up/Down能否偵測的到.

    3. Switch IC的話較複雜, 要看內部初始設置能否通到後面的phy.

         這部分應該請Switch Vendor給您設置方式

  • static struct module_pin_mux mii2_pin_mux[] = {
    // {OFFSET(mii1_rxerr), MODE(0) | RXACTIVE}, /* MII2_RXERR */
    {OFFSET(gpmc_a0), MODE(1)}, /* MII2_TXEN */
    {OFFSET(gpmc_a1), MODE(1) | RXACTIVE}, /* MII2_RXDV */
    {OFFSET(gpmc_a2), MODE(1)}, /* MII2_TXD3 */
    {OFFSET(gpmc_a3), MODE(1)}, /* MII2_TXD2 */
    {OFFSET(gpmc_a4), MODE(1)}, /* MII2_TXD1 */
    {OFFSET(gpmc_a5), MODE(1)}, /* MII2_TXD0 */
    {OFFSET(gpmc_a6), MODE(1) | RXACTIVE}, /* MII2_TXCLK */
    {OFFSET(gpmc_a7), MODE(1) | RXACTIVE}, /* MII2_RXCLK */
    {OFFSET(gpmc_a8), MODE(1) | RXACTIVE}, /* MII2_RXD3 */
    {OFFSET(gpmc_a9), MODE(1) | RXACTIVE}, /* MII2_RXD2 */
    {OFFSET(gpmc_a10), MODE(1) | RXACTIVE}, /* MII2_RXD1 */
    {OFFSET(gpmc_a11), MODE(1) | RXACTIVE}, /* MII2_RXD0 */
    {OFFSET(mdio_data), MODE(0) | RXACTIVE | PULLUP_EN}, /* MDIO_DATA */
    {OFFSET(mdio_clk), MODE(0) | PULLUP_EN}, /* MDIO_CLK */
    {-1},
    };
    static struct module_pin_mux mii1_pin_mux[] = {
    {OFFSET(mii1_rxerr), MODE(0) | RXACTIVE}, /* MII1_RXERR */
    {OFFSET(mii1_txen), MODE(0)}, /* MII1_TXEN */
    {OFFSET(mii1_rxdv), MODE(0) | RXACTIVE}, /* MII1_RXDV */
    {OFFSET(mii1_txd3), MODE(0)}, /* MII1_TXD3 */
    {OFFSET(mii1_txd2), MODE(0)}, /* MII1_TXD2 */
    {OFFSET(mii1_txd1), MODE(0)}, /* MII1_TXD1 */
    {OFFSET(mii1_txd0), MODE(0)}, /* MII1_TXD0 */
    {OFFSET(mii1_txclk), MODE(0) | RXACTIVE}, /* MII1_TXCLK */
    {OFFSET(mii1_rxclk), MODE(0) | RXACTIVE}, /* MII1_RXCLK */
    {OFFSET(mii1_rxd3), MODE(0) | RXACTIVE}, /* MII1_RXD3 */
    {OFFSET(mii1_rxd2), MODE(0) | RXACTIVE}, /* MII1_RXD2 */
    {OFFSET(mii1_rxd1), MODE(0) | RXACTIVE}, /* MII1_RXD1 */
    {OFFSET(mii1_rxd0), MODE(0) | RXACTIVE}, /* MII1_RXD0 */
    {OFFSET(mdio_data), MODE(0) | RXACTIVE | PULLUP_EN}, /* MDIO_DATA */
    {OFFSET(mdio_clk), MODE(0) | PULLUP_EN}, /* MDIO_CLK */
    {-1},
    };

    2.插上网线网口指示灯是亮,

    3.IP175D这个SWITCH我们在其它的板上用过,配置很简单.

  • Hi,

    燈亮是phy的行為, phy_addr設置對, software就能夠從mdio讀回link status. 所以一定會有全半雙工模式, 速度, link up/down的資訊.

    如果這都沒有, 您可以先試試mii command協同phy的vendor去debug.

x 出现错误。请重试或与管理员联系。