]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
kernel: ssb: fallback-sprom: check deferred probe 22305/head
authorRosen Penev <rosenp@gmail.com>
Sat, 28 Feb 2026 19:59:33 +0000 (11:59 -0800)
committerChristian Marangi <ansuelsmth@gmail.com>
Tue, 10 Mar 2026 12:35:31 +0000 (13:35 +0100)
When NVMEM is not ready, of_get_mac_address fails. Handle this.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/22305
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
target/linux/generic/files/drivers/ssb/fallback-sprom.c

index 9c2511febe181a41b02131cb0036712918ab87f3..e2ba3da4e421f55a6608ecb841c781decf6aa602 100644 (file)
@@ -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 {