Commit 262b9011 authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Linus Walleij

gpiolib: Improve kernel messages

Simplify the printing of kernel messages and make the messages more
accurate by using the most appropriate {dev,chip,gpiod}_*() helpers.

Sample impact:

    -gpiochip_setup_dev: registered GPIOs 496 to 511 on device: gpiochip0 (e6050000.gpio)
    +gpio gpiochip0: registered GPIOs 496 to 511 on e6050000.gpio

    -no flags found for gpios
    +gpio-953 (?): no flags found for gpios

    -GPIO line 355 (PCIE/SATA switch) hogged as output/low
    +gpio-355 (PCIE/SATA switch): hogged as output/low
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20200424141432.11400-1-geert+renesas@glider.beSigned-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 1475b629
...@@ -1508,9 +1508,8 @@ static int gpiochip_setup_dev(struct gpio_device *gdev) ...@@ -1508,9 +1508,8 @@ static int gpiochip_setup_dev(struct gpio_device *gdev)
/* From this point, the .release() function cleans up gpio_device */ /* From this point, the .release() function cleans up gpio_device */
gdev->dev.release = gpiodevice_release; gdev->dev.release = gpiodevice_release;
pr_debug("%s: registered GPIOs %d to %d on device: %s (%s)\n", dev_dbg(&gdev->dev, "registered GPIOs %d to %d on %s\n", gdev->base,
__func__, gdev->base, gdev->base + gdev->ngpio - 1, gdev->base + gdev->ngpio - 1, gdev->chip->label ? : "generic");
dev_name(&gdev->dev), gdev->chip->label ? : "generic");
return 0; return 0;
...@@ -1526,8 +1525,8 @@ static void gpiochip_machine_hog(struct gpio_chip *gc, struct gpiod_hog *hog) ...@@ -1526,8 +1525,8 @@ static void gpiochip_machine_hog(struct gpio_chip *gc, struct gpiod_hog *hog)
desc = gpiochip_get_desc(gc, hog->chip_hwnum); desc = gpiochip_get_desc(gc, hog->chip_hwnum);
if (IS_ERR(desc)) { if (IS_ERR(desc)) {
pr_err("%s: unable to get GPIO desc: %ld\n", chip_err(gc, "%s: unable to get GPIO desc: %ld\n", __func__,
__func__, PTR_ERR(desc)); PTR_ERR(desc));
return; return;
} }
...@@ -1536,8 +1535,8 @@ static void gpiochip_machine_hog(struct gpio_chip *gc, struct gpiod_hog *hog) ...@@ -1536,8 +1535,8 @@ static void gpiochip_machine_hog(struct gpio_chip *gc, struct gpiod_hog *hog)
rv = gpiod_hog(desc, hog->line_name, hog->lflags, hog->dflags); rv = gpiod_hog(desc, hog->line_name, hog->lflags, hog->dflags);
if (rv) if (rv)
pr_err("%s: unable to hog GPIO line (%s:%u): %d\n", gpiod_err(desc, "%s: unable to hog GPIO line (%s:%u): %d\n",
__func__, gc->label, hog->chip_hwnum, rv); __func__, gc->label, hog->chip_hwnum, rv);
} }
static void machine_gpiochip_add(struct gpio_chip *gc) static void machine_gpiochip_add(struct gpio_chip *gc)
...@@ -1562,8 +1561,8 @@ static void gpiochip_setup_devs(void) ...@@ -1562,8 +1561,8 @@ static void gpiochip_setup_devs(void)
list_for_each_entry(gdev, &gpio_devices, list) { list_for_each_entry(gdev, &gpio_devices, list) {
ret = gpiochip_setup_dev(gdev); ret = gpiochip_setup_dev(gdev);
if (ret) if (ret)
pr_err("%s: Failed to initialize gpio device (%d)\n", dev_err(&gdev->dev,
dev_name(&gdev->dev), ret); "Failed to initialize gpio device (%d)\n", ret);
} }
} }
...@@ -2672,7 +2671,7 @@ int gpiochip_irqchip_add_key(struct gpio_chip *gc, ...@@ -2672,7 +2671,7 @@ int gpiochip_irqchip_add_key(struct gpio_chip *gc,
return -EINVAL; return -EINVAL;
if (!gc->parent) { if (!gc->parent) {
pr_err("missing gpiochip .dev parent pointer\n"); chip_err(gc, "missing gpiochip .dev parent pointer\n");
return -EINVAL; return -EINVAL;
} }
gc->irq.threaded = threaded; gc->irq.threaded = threaded;
...@@ -4842,7 +4841,7 @@ int gpiod_configure_flags(struct gpio_desc *desc, const char *con_id, ...@@ -4842,7 +4841,7 @@ int gpiod_configure_flags(struct gpio_desc *desc, const char *con_id,
/* No particular flag request, return here... */ /* No particular flag request, return here... */
if (!(dflags & GPIOD_FLAGS_BIT_DIR_SET)) { if (!(dflags & GPIOD_FLAGS_BIT_DIR_SET)) {
pr_debug("no flags found for %s\n", con_id); gpiod_dbg(desc, "no flags found for %s\n", con_id);
return 0; return 0;
} }
...@@ -5067,8 +5066,7 @@ int gpiod_hog(struct gpio_desc *desc, const char *name, ...@@ -5067,8 +5066,7 @@ int gpiod_hog(struct gpio_desc *desc, const char *name,
/* Mark GPIO as hogged so it can be identified and removed later */ /* Mark GPIO as hogged so it can be identified and removed later */
set_bit(FLAG_IS_HOGGED, &desc->flags); set_bit(FLAG_IS_HOGGED, &desc->flags);
pr_info("GPIO line %d (%s) hogged as %s%s\n", gpiod_info(desc, "hogged as %s%s\n",
desc_to_gpio(desc), name,
(dflags & GPIOD_FLAGS_BIT_DIR_OUT) ? "output" : "input", (dflags & GPIOD_FLAGS_BIT_DIR_OUT) ? "output" : "input",
(dflags & GPIOD_FLAGS_BIT_DIR_OUT) ? (dflags & GPIOD_FLAGS_BIT_DIR_OUT) ?
(dflags & GPIOD_FLAGS_BIT_DIR_VAL) ? "/high" : "/low" : ""); (dflags & GPIOD_FLAGS_BIT_DIR_VAL) ? "/high" : "/low" : "");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment