diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2019-10-23 13:31:36 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2019-10-23 13:31:36 +0200 |
commit | fe12e94375da34d62f7d5556161ce7629212ff80 (patch) | |
tree | 8bdcf3d7573f6d5850cf433d97cf0212c96566fb /drivers/gpio/gpiolib-of.c | |
parent | 698b8eeaed7287970fc2b6d322618850fd1b1e6c (diff) | |
parent | 228fc01040704f55fd884ab41daf3eafd2644b54 (diff) | |
download | lwn-fe12e94375da34d62f7d5556161ce7629212ff80.tar.gz lwn-fe12e94375da34d62f7d5556161ce7629212ff80.zip |
Merge tag 'gpio-v5.5-updates-for-linus-part-1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux into devel
gpio updates for v5.5
- only get the second IRQ when there is more than one IRQ in mxc
- move the code around in lineevent_create() for some shrinkage
- fix formatting for GPIO docs
- add DT binding for r8a774b1
- convert drivers that prevously used nocache ioremap() to using regular
devm_platform_ioremap_resource()
- remove some redundant error messages
- shrink object code in 104-idi-48e
- drop an unneeded warning from gpiolib-of
Diffstat (limited to 'drivers/gpio/gpiolib-of.c')
-rw-r--r-- | drivers/gpio/gpiolib-of.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c index 3f50c433b7b1..99adc801a067 100644 --- a/drivers/gpio/gpiolib-of.c +++ b/drivers/gpio/gpiolib-of.c @@ -135,18 +135,20 @@ static void of_gpio_flags_quirks(struct device_node *np, (!(strcmp(propname, "enable-gpio") && strcmp(propname, "enable-gpios")) && of_device_is_compatible(np, "regulator-gpio")))) { + bool active_low = !of_property_read_bool(np, + "enable-active-high"); /* * The regulator GPIO handles are specified such that the * presence or absence of "enable-active-high" solely controls * the polarity of the GPIO line. Any phandle flags must * be actively ignored. */ - if (*flags & OF_GPIO_ACTIVE_LOW) { + if ((*flags & OF_GPIO_ACTIVE_LOW) && !active_low) { pr_warn("%s GPIO handle specifies active low - ignored\n", of_node_full_name(np)); *flags &= ~OF_GPIO_ACTIVE_LOW; } - if (!of_property_read_bool(np, "enable-active-high")) + if (active_low) *flags |= OF_GPIO_ACTIVE_LOW; } /* |