[PATCH] ethernet:ti:cpsw: fix phy identification with multiple slaves on fixed-phy
From: Pascal Speck (Iktek) <hidden>
Date: 2015-12-04 15:55:20
From: Pascal Speck (Iktek) <hidden>
Date: 2015-12-04 15:55:20
When using more than one slave with ti cpsw and fixed phy the pd->phy_id will be always zero, but slave_data->phy_id must be unique. pd->phy_id means a "phy hardware id" whereas slave_data->phy_id means an "unique id", so we should use pd->addr which has the same unique meaning. Signed-off-by: Pascal Speck <redacted> ---
--- a/drivers/net/ethernet/ti/cpsw.c 2015-11-30 03:58:26.000000000 +0100
+++ b/drivers/net/ethernet/ti/cpsw.c 2015-12-04 16:42:02.075450234
+0100@@ -2047,7 +2047,7 @@ static int cpsw_probe_dt(struct cpsw_pri if (!pd) return -ENODEV; snprintf(slave_data->phy_id,
sizeof(slave_data->phy_id),
- PHY_ID_FMT, pd->bus->id, pd->phy_id);
+ PHY_ID_FMT, pd->bus->id, pd->addr);
goto no_phy_slave;
}
parp = of_get_property(slave_node, "phy_id", &lenp);