Thread (3 messages) 3 messages, 2 authors, 2019-01-28

Re: [RFC PATCH v2 07/10] gpio: Initial support for ROHM bd70528 GPIO block

From: Linus Walleij <hidden>
Date: 2019-01-28 12:56:06
Also in: linux-clk, linux-gpio, linux-pm, linux-rtc, linux-watchdog, lkml

Hi Matti!

Thanks for your patch!

On Fri, Jan 25, 2019 at 12:05 PM Matti Vaittinen
[off-list ref] wrote:
ROHM BD70528 PMIC has 4 GPIO pins. Allow them to be
controlled by GPIO framework.

IRQs are handled by regmap-irq and GPIO driver is not
aware of the irq usage.

Signed-off-by: Matti Vaittinen <redacted>
This is overall a very nicely written driver.

Just small comments:
+#include <linux/gpio/driver.h>
+#include <linux/interrupt.h>
Why interrupt? You do not use it.
+static int bd70528_get_direction(struct gpio_chip *chip, unsigned int offset)
+{
+       struct bd70528_gpio *bdgpio = gpiochip_get_data(chip);
+       int val, ret;
+
+       /* Do we need to do something to IRQs here? */
Well you don't support IRQs yet so no problem as long as they're masked?
+       ret = regmap_read(bdgpio->chip.regmap, GPIO_OUT_REG(offset), &val);
+       if (ret) {
+               dev_err(bdgpio->chip.dev, "Could not read gpio direction\n");
+               return ret;
+       }
+
+       return !(val & BD70528_GPIO_OUT_EN_MASK);
+}
+
+static int bd70528_gpio_set_config(struct gpio_chip *chip, unsigned int offset,
+                                  unsigned long config)
This is very nice. With Thomas Petazzoni's ongoing work you will be
able to also support pull up/down if you need it.
+static int bd70528_direction_input(struct gpio_chip *chip, unsigned int offset)
+{
+       struct bd70528_gpio *bdgpio = gpiochip_get_data(chip);
+
+       /* Do we need to do something to IRQs here? */
Hmmm?

Apart from that it looks good. Feel free to add:
Reviewed-by: Linus Walleij <redacted>
on the next iteration.

Yours,
Linus Walleij
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help