Thread (32 messages) 32 messages, 5 authors, 2018-02-21

[PATCH 08/10] gpio: Add gpio driver for Actions OWL S900 SoC

From: Andy Shevchenko <hidden>
Date: 2018-02-18 14:45:12
Also in: linux-devicetree, lkml

On Sat, Feb 17, 2018 at 10:44 PM, Manivannan Sadhasivam
[off-list ref] wrote:
Add gpio driver for Actions Semi OWL family S900 SoC. Set of registers
controlling the gpio shares the same register range with pinctrl block.

GPIO registers are organized as 6 banks and each bank controls the
maximum of 32 gpios.
+#include <linux/init.h>
+#include <linux/module.h>
Choose one of them.
+       val = readl(gpio_base + GPIO_OUTEN);
+       val |= BIT(offset);
+       writel(val, gpio_base + GPIO_OUTEN);
out_en()
+       val = readl(gpio_base + GPIO_OUTEN);
+       val &= ~BIT(offset);
+       writel(val, gpio_base + GPIO_OUTEN);
out_dis()
+       val = readl(gpio_base + GPIO_INEN);
+       val &= ~BIT(offset);
+       writel(val, gpio_base + GPIO_INEN);
in_dis()
+       val = readl(gpio_base + GPIO_OUTEN);
+       val &= ~BIT(offset);
+       writel(val, gpio_base + GPIO_OUTEN);
out_dis()
+       val = readl(gpio_base + GPIO_INEN);
+       val |= BIT(offset);
+       writel(val, gpio_base + GPIO_INEN);
in_en()

+       val = readl(gpio_base + GPIO_INEN);
+       val &= ~BIT(pin);
+       writel(val, gpio_base + GPIO_INEN);
in_dis()
+       val = readl(gpio_base + GPIO_OUTEN);
+       val |= BIT(pin);
+       writel(val, gpio_base + GPIO_OUTEN);
out_en()

Find above code duplication.
+static int owl_gpio_probe(struct platform_device *pdev)
+{
+       gpio->base = of_iomap(pdev->dev.of_node, 0);
+       if (IS_ERR(gpio->base))
+               return PTR_ERR(gpio->base);
+       gpio->gpio.of_node = pdev->dev.of_node;
Isn't this done by GPIO library?
+static int owl_gpio_remove(struct platform_device *pdev)
+{
+       return 0;
+}
Useless stub.

-- 
With Best Regards,
Andy Shevchenko
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help