Le Thu, 28 Oct 2021 14:06:12 +0000,
Vladimir Oltean [off-list ref] a écrit :
On Thu, Oct 28, 2021 at 03:49:30PM +0200, Clément Léger wrote:
quoted
Add support to get mac from device-tree using of_get_mac_address.
Signed-off-by: Clément Léger <clement.leger@bootlin.com>
---
drivers/net/ethernet/mscc/ocelot_vsc7514.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mscc/ocelot_vsc7514.c
b/drivers/net/ethernet/mscc/ocelot_vsc7514.c index
d51f799e4e86..c39118e5b3ee 100644 ---
a/drivers/net/ethernet/mscc/ocelot_vsc7514.c +++
b/drivers/net/ethernet/mscc/ocelot_vsc7514.c @@ -526,7 +526,10 @@
static int ocelot_chip_init(struct ocelot *ocelot, const struct
ocelot_ops *ops) ocelot_pll5_init(ocelot);
- eth_random_addr(ocelot->base_mac);
+ ret = of_get_mac_address(ocelot->dev->of_node,
ocelot->base_mac);
Why not per port? This is pretty strange, I think.
Hi Vladimir,
Currently, all ports share the same base mac address (5 first
bytes). The final mac address per port is computed in ocelot_probe_port
by adding the port number as the last byte of the mac_address provided.
Clément
quoted
+ if (ret)
+ eth_random_addr(ocelot->base_mac);
+
ocelot->base_mac[5] &= 0xf0;
return 0;
--
2.33.0