From a7e42142926f815c776f745d027f69a53415d99c Mon Sep 17 00:00:00 2001 From: Linus Walleij Date: Mon, 19 Aug 2019 10:27:04 +0200 Subject: [PATCH] gpio: ftgpio: Move hardware initialization It is probably wise to initialize the hardware before registering the irq chip. Signed-off-by: Linus Walleij Link: https://lore.kernel.org/r/20190819082704.14237-1-linus.walleij@linaro.org --- drivers/gpio/gpio-ftgpio010.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpio/gpio-ftgpio010.c b/drivers/gpio/gpio-ftgpio010.c index 250e71f..3118d28 100644 --- a/drivers/gpio/gpio-ftgpio010.c +++ b/drivers/gpio/gpio-ftgpio010.c @@ -296,10 +296,6 @@ static int ftgpio_gpio_probe(struct platform_device *pdev) girq->handler = handle_bad_irq; girq->parents[0] = irq; - ret = devm_gpiochip_add_data(dev, &g->gc, g); - if (ret) - goto dis_clk; - /* Disable, unmask and clear all interrupts */ writel(0x0, g->base + GPIO_INT_EN); writel(0x0, g->base + GPIO_INT_MASK); @@ -308,6 +304,10 @@ static int ftgpio_gpio_probe(struct platform_device *pdev) /* Clear any use of debounce */ writel(0x0, g->base + GPIO_DEBOUNCE_EN); + ret = devm_gpiochip_add_data(dev, &g->gc, g); + if (ret) + goto dis_clk; + platform_set_drvdata(pdev, g); dev_info(dev, "FTGPIO010 @%p registered\n", g->base); -- 2.7.4