Procházet zdrojové kódy

kernel: ssb: fallback-sprom: check deferred probe

When NVMEM is not ready, of_get_mac_address fails. Handle this.

Signed-off-by: Rosen Penev <[email protected]>
Link: https://github.com/openwrt/openwrt/pull/22305
Signed-off-by: Christian Marangi <[email protected]>
Rosen Penev před 1 měsícem
rodič
revize
eadd81b17e

+ 5 - 1
target/linux/generic/files/drivers/ssb/fallback-sprom.c

@@ -690,6 +690,7 @@ static int ssb_fbs_probe(struct platform_device *pdev)
 	struct ssb_fbs *priv;
 	unsigned long flags;
 	u8 mac[ETH_ALEN];
+	int ret;
 
 	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
 	if (!priv)
@@ -702,7 +703,10 @@ static int ssb_fbs_probe(struct platform_device *pdev)
 	of_property_read_u32(node, "pci-bus", &priv->pci_bus);
 	of_property_read_u32(node, "pci-dev", &priv->pci_dev);
 
-	of_get_mac_address(node, mac);
+	ret = of_get_mac_address(node, mac);
+	if (ret == -EPROBE_DEFER)
+		return ret;
+
 	if (is_valid_ether_addr(mac)) {
 		dev_info(dev, "mtd mac %pM\n", mac);
 	} else {