diff options
author | Bamvor Jian Zhang <bamvor.zhangjian@linaro.org> | 2015-11-16 13:02:47 +0800 |
---|---|---|
committer | Tao Huang <huangtao@rock-chips.com> | 2018-02-28 14:55:00 +0800 |
commit | 2909c66ccba2956e07515753aede41053d465173 (patch) | |
tree | 45a678d364a1ae97b5c2eba6498e2032f39d9d8b /drivers/gpio | |
parent | 8aba7c88ee9f80d7c45e37ac39897aec0f18e4a3 (diff) |
UPSTREAM: gpiolib: do not allow to insert an empty gpiochip
We need to check if number of gpio is positive if there is no
such check in devicetree or acpi or whatever called before
gpiochip_add.
I suppose that devicetree and acpi do not allow insert gpiochip
with zero number but I do not know if it is enough to ignore
this check in gpiochip_add.
Change-Id: Ie11b24596988a90d03a957979e27e23658785a2f
Signed-off-by: Bamvor Jian Zhang <bamvor.zhangjian@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
(cherry picked from commit 5ed41cc4baaf4127661d2a8f8f2ee6e3085e0fa9)
Diffstat (limited to 'drivers/gpio')
-rw-r--r-- | drivers/gpio/gpiolib.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 2bcfc90ee95f..d1a85a203b35 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -308,6 +308,11 @@ int gpiochip_add(struct gpio_chip *chip) if (!descs) return -ENOMEM; + if (chip->ngpio == 0) { + chip_err(chip, "tried to insert a GPIO chip with zero lines\n"); + return -EINVAL; + } + spin_lock_irqsave(&gpio_lock, flags); if (base < 0) { |