pinctrl: pinmux: Suppress error message for -EPROBE_DEFER
authorAndre Przywara <andre.przywara@arm.com>
Tue, 5 Mar 2024 14:38:59 +0000 (14:38 +0000)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 5 Mar 2024 22:29:29 +0000 (23:29 +0100)
EPROBE_DEFER error returns are not really critical, since they cancel
the probe process, but the kernel will return later and retry.
However, depending on the probe order, this might issue quite some
verbatim and scary, though pointless messages:

[    2.388731] 300b000.pinctrl: pin-224 (5000000.serial) status -517
[    2.397321] 300b000.pinctrl: could not request pin 224 (PH0) from group PH0  on device 300b000.pinctrl

Replace dev_err() with dev_err_probe(), which not only drops the
priority of the message from error to debug, but also puts some text
into debugfs' devices_deferred file, for later reference.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Link: https://lore.kernel.org/r/20240305143859.2449147-1-andre.przywara@arm.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/pinctrl/pinmux.c

index abbb044d6acec66b299fea281c38cfb9f3480818..d924207d629b46940afebedbd70c6a14f50a1601 100644 (file)
@@ -188,8 +188,8 @@ out_free_pin:
        }
 out:
        if (status)
-               dev_err(pctldev->dev, "pin-%d (%s) status %d\n",
-                       pin, owner, status);
+               dev_err_probe(pctldev->dev, status, "pin-%d (%s)\n",
+                             pin, owner);
 
        return status;
 }
@@ -441,7 +441,7 @@ int pinmux_enable_setting(const struct pinctrl_setting *setting)
                        pname = desc ? desc->name : "non-existing";
                        gname = pctlops->get_group_name(pctldev,
                                                setting->data.mux.group);
-                       dev_err(pctldev->dev,
+                       dev_err_probe(pctldev->dev, ret,
                                "could not request pin %d (%s) from group %s "
                                " on device %s\n",
                                pins[i], pname, gname,