> OK, I am confused now. You are describing what is going on with your
> platform right? Can you describe a bit further here what is happening
> and with which type of interface? Is this with the CPU interface or
> something?
Yes. It's on our platform.
Like your platform, fixed phy is used to connect switch CPU port/master netdev.
GMAC of SoC is cadence/macb.c with fixed phy modification.
static int macb_mii_probe(struct net_device *dev)
{
...
phydev = phy_find_first(bp->mii_bus);
if (!phydev) {
phydev = fixed_phy_register(PHY_POLL, &fphy_status, -1, NULL);
if (IS_ERR(phydev)) {
netdev_err(dev, "no PHY found\n");
return -ENXIO;
}
}
...
When failed to find phydev from phy_find_first(), it forces to fixed phy.
...
/* attach the mac to the phy */
ret = phy_connect_direct(dev, phydev, &macb_handle_link_change,
bp->phy_interface);
sysfs_create_lin() inside of phy_connect_direct() fails.
What is driver you are testing? I can check the file.
Thanks.
- Woojung