public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] mdio error on ar9344
@ 2019-04-23 11:48 muaddib
  0 siblings, 0 replies; only message in thread
From: muaddib @ 2019-04-23 11:48 UTC (permalink / raw)
  To: u-boot



Hi, I am using device based on Atheros AR9344.

When U-Boot initialize net device I get error
mdio_register: non unique device name 'gmac0'

dm tree command shows that eth_ag7xxx is not probed.

ag7xxx_eth_probe -> ag7xxx_mac_probe -> ag933x_phy_setup -> ag933x_phy_setup_reset_set -> ag7xxx_mdio_write -> ag7xxx_mdio_rw
return -ETIMEDOUT

because ag7xxx_switch_reg_read return 0xFFFFFFFF, see below

static int ag7xxx_mdio_rw(struct mii_dev *bus, int addr, int reg, u32 val)
{
        u32 data;
        unsigned long start;
        int ret;
        // No idea if this is long enough or too long
        int timeout_ms = 1000;

        // Dummy read followed by PHY read/write command.
        ret = ag7xxx_switch_reg_read(bus, 0x98, &data);
        if (ret < 0)
                return ret;
        data = val | (reg << 16) | (addr << 21) | BIT(30) | BIT(31);
        ret = ag7xxx_switch_reg_write(bus, 0x98, data);
        if (ret < 0)
                return ret;

        start = get_timer(0);

        // Wait for operation to finish
        do {
                ret = ag7xxx_switch_reg_read(bus, 0x98, &data);
                if (ret < 0)
                        return ret;
                if (get_timer(start) > timeout_ms)
                        return -ETIMEDOUT;
        } while (data & BIT(31));
 
        return data & 0xffff;
}

I use tplink_wdr4320 u-boot profile for my device.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2019-04-23 11:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-04-23 11:48 [U-Boot] mdio error on ar9344 muaddib

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox