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(+) diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c index b71e87909f0e..55bbc1a769ca 100644 --- a/net/dsa/dsa2.c +++ b/net/dsa/dsa2.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include "dsa_priv.h" @@ -392,6 +392,7 @@ static int dsa_port_setup(struct dsa_port *dp) break; case DSA_PORT_TYPE_USER: + of_platform_device_create(dp->dn, NULL, NULL); dp->mac = of_get_mac_address(dp->dn); err = dsa_slave_create(dp); if (err) -- 2.31.1