pinctrl: baytrail: Drop FSF mailing address
[firefly-linux-kernel-4.4.55.git] / drivers / pinctrl / pinctrl-coh901.c
index d182fdd2e7158c17003b4f3dd187aa65f7a59027..3731cc67a88bf84a0651de1d4fc73db0281f6cad 100644 (file)
@@ -519,10 +519,11 @@ static struct irq_chip u300_gpio_irqchip = {
        .irq_set_type           = u300_gpio_irq_type,
 };
 
-static void u300_gpio_irq_handler(unsigned irq, struct irq_desc *desc)
+static void u300_gpio_irq_handler(unsigned __irq, struct irq_desc *desc)
 {
-       struct irq_chip *parent_chip = irq_get_chip(irq);
-       struct gpio_chip *chip = irq_get_handler_data(irq);
+       unsigned int irq = irq_desc_get_irq(desc);
+       struct irq_chip *parent_chip = irq_desc_get_chip(desc);
+       struct gpio_chip *chip = irq_desc_get_handler_data(desc);
        struct u300_gpio *gpio = to_u300_gpio(chip);
        struct u300_gpio_port *port = &gpio->ports[irq - chip->base];
        int pinoffset = port->number << 3; /* get the right stride */
@@ -756,8 +757,7 @@ static int __init u300_gpio_probe(struct platform_device *pdev)
 
 err_no_range:
 err_no_irqchip:
-       if (gpiochip_remove(&gpio->chip))
-               dev_err(&pdev->dev, "failed to remove gpio chip\n");
+       gpiochip_remove(&gpio->chip);
 err_no_chip:
        clk_disable_unprepare(gpio->clk);
        dev_err(&pdev->dev, "module ERROR:%d\n", err);
@@ -767,16 +767,11 @@ err_no_chip:
 static int __exit u300_gpio_remove(struct platform_device *pdev)
 {
        struct u300_gpio *gpio = platform_get_drvdata(pdev);
-       int err;
 
        /* Turn off the GPIO block */
        writel(0x00000000U, gpio->base + U300_GPIO_CR);
 
-       err = gpiochip_remove(&gpio->chip);
-       if (err < 0) {
-               dev_err(gpio->dev, "unable to remove gpiochip: %d\n", err);
-               return err;
-       }
+       gpiochip_remove(&gpio->chip);
        clk_disable_unprepare(gpio->clk);
        return 0;
 }