lkml.org 
[lkml]   [2020]   [Jan]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 026/203] gpio: Fix error message on out-of-range GPIO in lookup table
    Date
    From: Geert Uytterhoeven <geert+renesas@glider.be>

    commit d935bd50dd14a7714cbdba9a76435dbb56edb1ae upstream.

    When a GPIO offset in a lookup table is out-of-range, the printed error
    message (1) does not include the actual out-of-range value, and (2)
    contains an off-by-one error in the upper bound.

    Avoid user confusion by also printing the actual GPIO offset, and
    correcting the upper bound of the range.
    While at it, use "%u" for unsigned int.

    Sample impact:

    -requested GPIO 0 is out of range [0..32] for chip e6052000.gpio
    +requested GPIO 0 (45) is out of range [0..31] for chip e6052000.gpio

    Fixes: 2a3cf6a3599e9015 ("gpiolib: return -ENOENT if no GPIO mapping exists")
    Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
    Link: https://lore.kernel.org/r/20191127095919.4214-1-geert+renesas@glider.be
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/gpio/gpiolib.c | 5 +++--
    1 file changed, 3 insertions(+), 2 deletions(-)

    --- a/drivers/gpio/gpiolib.c
    +++ b/drivers/gpio/gpiolib.c
    @@ -4328,8 +4328,9 @@ static struct gpio_desc *gpiod_find(stru

    if (chip->ngpio <= p->chip_hwnum) {
    dev_err(dev,
    - "requested GPIO %d is out of range [0..%d] for chip %s\n",
    - idx, chip->ngpio, chip->label);
    + "requested GPIO %u (%u) is out of range [0..%u] for chip %s\n",
    + idx, p->chip_hwnum, chip->ngpio - 1,
    + chip->label);
    return ERR_PTR(-EINVAL);
    }


    \
     
     \ /
      Last update: 2020-01-17 00:49    [W:4.039 / U:0.828 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site