[7/7] gpio: twl6040: Implement .get_direction()

Message ID 20180903081556.1411-7-linus.walleij@linaro.org
State Accepted
Commit ba74bd5d5b5b063d50891af16d5c14c29bcc52a6
Headers show
Series
  • [1/7] gpio: twl4030: Include the right header
Related show

Commit Message

Linus Walleij Sept. 3, 2018, 8:15 a.m.
The gpiolib cannot deduce the fact that every line is output
by itself, implement a .get_direction() callback so we can
inspect this.

Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

---
 drivers/gpio/gpio-twl6040.c | 7 +++++++
 1 file changed, 7 insertions(+)

-- 
2.17.1

Patch

diff --git a/drivers/gpio/gpio-twl6040.c b/drivers/gpio/gpio-twl6040.c
index 77d50542bf61..c845b2ff1f43 100644
--- a/drivers/gpio/gpio-twl6040.c
+++ b/drivers/gpio/gpio-twl6040.c
@@ -32,6 +32,12 @@  static int twl6040gpo_get(struct gpio_chip *chip, unsigned offset)
 	return !!(ret & BIT(offset));
 }
 
+static int twl6040gpo_get_direction(struct gpio_chip *chip, unsigned offset)
+{
+	/* This means "out" */
+	return 0;
+}
+
 static int twl6040gpo_direction_out(struct gpio_chip *chip, unsigned offset,
 				    int value)
 {
@@ -62,6 +68,7 @@  static struct gpio_chip twl6040gpo_chip = {
 	.owner			= THIS_MODULE,
 	.get			= twl6040gpo_get,
 	.direction_output	= twl6040gpo_direction_out,
+	.get_direction		= twl6040gpo_get_direction,
 	.set			= twl6040gpo_set,
 	.can_sleep		= true,
 };