Commit 1020dfd1 authored by Masahiro Yamada's avatar Masahiro Yamada Committed by Linus Walleij

gpio: of: move chip->of_gpio_n_cells checking to of_gpiochip_add()

Do this sanity check only once when the gpio_chip is added
rather than every time gpio-hog is handled.
Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent be715343
...@@ -155,7 +155,7 @@ static struct gpio_desc *of_parse_own_gpio(struct device_node *np, ...@@ -155,7 +155,7 @@ static struct gpio_desc *of_parse_own_gpio(struct device_node *np,
if (ret) if (ret)
return ERR_PTR(ret); return ERR_PTR(ret);
if (tmp > MAX_PHANDLE_ARGS || tmp != chip->of_gpio_n_cells) if (tmp != chip->of_gpio_n_cells)
return ERR_PTR(-EINVAL); return ERR_PTR(-EINVAL);
gpiospec.np = chip_np; gpiospec.np = chip_np;
...@@ -486,6 +486,9 @@ int of_gpiochip_add(struct gpio_chip *chip) ...@@ -486,6 +486,9 @@ int of_gpiochip_add(struct gpio_chip *chip)
chip->of_xlate = of_gpio_simple_xlate; chip->of_xlate = of_gpio_simple_xlate;
} }
if (chip->of_gpio_n_cells > MAX_PHANDLE_ARGS)
return -EINVAL;
status = of_gpiochip_add_pin_range(chip); status = of_gpiochip_add_pin_range(chip);
if (status) if (status)
return status; return status;
......
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