[v1,3/3] gpiolib: Make debug messages in gpiod_find_by_fwnode() less confusing
Commit Message
Currently the extended debug messages have added confusion,
but value when con_id is NULL, which is the case for, e.g.,
GPIO LEDs.
Improve the messaging by using GPIO function name rather than con_id.
This requires to split and move the second part after the respective
calls.
Reported-by: Ferry Toth <ftoth@exalondelft.nl>
Fixes: 8eb1f71e7acc ("gpiolib: consolidate GPIO lookups")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
drivers/gpio/gpiolib.c | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
Comments
On Thu, Oct 19, 2023 at 7:35 PM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
> Currently the extended debug messages have added confusion,
> but value when con_id is NULL, which is the case for, e.g.,
> GPIO LEDs.
>
> Improve the messaging by using GPIO function name rather than con_id.
> This requires to split and move the second part after the respective
> calls.
>
> Reported-by: Ferry Toth <ftoth@exalondelft.nl>
> Fixes: 8eb1f71e7acc ("gpiolib: consolidate GPIO lookups")
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
It sounds nice and looks reasonable so:
Acked-by: Linus Walleij <linus.walleij@linaro.org>
A dmesg example before/after here would be nice as
well, if possible.
Yours,
Linus Walleij
@@ -3946,18 +3946,15 @@ static struct gpio_desc *gpiod_find_by_fwnode(struct fwnode_handle *fwnode,
struct gpio_desc *desc = ERR_PTR(-ENOENT);
if (is_of_node(fwnode)) {
- dev_dbg(consumer, "using DT '%pfw' for '%s' GPIO lookup\n",
- fwnode, con_id);
+ dev_dbg(consumer, "using DT '%pfw' for GPIO lookup\n", fwnode);
desc = of_find_gpio(to_of_node(fwnode), con_id, idx, propname, propsize,
lookupflags);
} else if (is_acpi_node(fwnode)) {
- dev_dbg(consumer, "using ACPI '%pfw' for '%s' GPIO lookup\n",
- fwnode, con_id);
+ dev_dbg(consumer, "using ACPI '%pfw' for GPIO lookup\n", fwnode);
desc = acpi_find_gpio(fwnode, con_id, idx, propname, propsize,
flags, lookupflags);
} else if (is_software_node(fwnode)) {
- dev_dbg(consumer, "using swnode '%pfw' for '%s' GPIO lookup\n",
- fwnode, con_id);
+ dev_dbg(consumer, "using swnode '%pfw' for GPIO lookup\n", fwnode);
desc = swnode_find_gpio(fwnode, con_id, idx, propname, propsize,
lookupflags);
}
@@ -3993,10 +3990,12 @@ static struct gpio_desc *gpiod_find_and_request(struct device *consumer,
}
if (IS_ERR(desc)) {
- dev_dbg(consumer, "No GPIO consumer %s found\n", con_id);
+ dev_dbg(consumer, "No GPIO descriptor for '%s' found\n", funcname);
return desc;
}
+ dev_dbg(consumer, "Found GPIO descriptor for '%s'\n", funcname);
+
/*
* If a connection label was passed use that, else attempt to use
* the device name as label
@@ -4015,13 +4014,13 @@ static struct gpio_desc *gpiod_find_and_request(struct device *consumer,
* FIXME: Make this more sane and safe.
*/
dev_info(consumer,
- "nonexclusive access to GPIO for %s\n", con_id);
+ "nonexclusive access to GPIO for %s\n", funcname);
return desc;
}
ret = gpiod_configure_flags(desc, funcname, lookupflags, flags);
if (ret < 0) {
- dev_dbg(consumer, "setup of GPIO %s failed\n", con_id);
+ dev_dbg(consumer, "setup of GPIO %s failed\n", funcname);
gpiod_put(desc);
return ERR_PTR(ret);
}