From 8bab551f44204fc5d43977063cd704112c17c750 Mon Sep 17 00:00:00 2001 From: Ansuel Smith Date: Fri, 23 Jul 2021 12:17:27 +0200 Subject: [PATCH 2/2] dsa: register every port with of_platform The declaration of a different mac-addr using the nvmem framework is currently broken. The dsa code use the generic of_get_mac_address where the nvmem function require the device node to be registred in the of_platform to be found by of_find_device_by_node. Register every port in the of_platform so they can corrently found and a custom mac-addr can correctly be declared using a nvmem-cell declared in the dts. Signed-off-by: Ansuel Smith --- net/dsa/dsa2.c | 2 + 1 file changed, 2 insertion(+) --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include "dsa_priv.h" @@ -318,6 +319,7 @@ static int dsa_port_setup(struct dsa_por break; devlink_port_registered = true; + of_platform_device_create(dp->dn, NULL, NULL); dp->mac = of_get_mac_address(dp->dn); err = dsa_slave_create(dp); if (err)