[PATCH v1 2/2] net: dsa: rtl8366rb: Quick fix to work with fw_devlink=on

From: Saravana Kannan
Date: Thu Aug 26 2021 - 03:45:45 EST


This is just a quick fix to make this driver work with fw_devlink=on.
The proper fix might need a significant amount of rework of the driver
of the framework to use a component device model.

Signed-off-by: Saravana Kannan <saravanak@xxxxxxxxxx>
---
drivers/net/dsa/realtek-smi-core.c | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/drivers/net/dsa/realtek-smi-core.c b/drivers/net/dsa/realtek-smi-core.c
index 8e49d4f85d48..f79c174f4954 100644
--- a/drivers/net/dsa/realtek-smi-core.c
+++ b/drivers/net/dsa/realtek-smi-core.c
@@ -394,6 +394,13 @@ static int realtek_smi_probe(struct platform_device *pdev)
var = of_device_get_match_data(dev);
np = dev->of_node;

+ /* This driver assumes the child PHYs would be probed successfully
+ * before this functions returns. That's not a valid assumption, but
+ * let fw_devlink know so that this driver continues to function with
+ * fw_devlink=on.
+ */
+ np->fwnode.flags |= FWNODE_FLAG_BROKEN_PARENT;
+
smi = devm_kzalloc(dev, sizeof(*smi) + var->chip_data_sz, GFP_KERNEL);
if (!smi)
return -ENOMEM;
--
2.33.0.rc2.250.ged5fa647cd-goog