mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
ARM: OMAP2+: Remove hardcoded twl4030 gpio_base, irq_base and irq_end
We can't use hardcoded interrupts for SPARSE_IRQ, and can replace the hardcoded gpio_base with twl_gpiochip.base after it's been allocated. Cc: Grant Likely <[email protected]> Cc: Samuel Ortiz <[email protected]> Cc: Peter Ujfalusi <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Tony Lindgren <[email protected]>
This commit is contained in:
parent
714df7b8ab
commit
a940d9a1cb
21 changed files with 10 additions and 59 deletions
|
|
@ -51,6 +51,7 @@
|
|||
|
||||
|
||||
static struct gpio_chip twl_gpiochip;
|
||||
static int twl4030_gpio_base;
|
||||
static int twl4030_gpio_irq_base;
|
||||
|
||||
/* genirq interfaces are not available to modules */
|
||||
|
|
@ -428,8 +429,6 @@ no_irqs:
|
|||
twl_gpiochip.dev = &pdev->dev;
|
||||
|
||||
if (pdata) {
|
||||
twl_gpiochip.base = pdata->gpio_base;
|
||||
|
||||
/*
|
||||
* NOTE: boards may waste power if they don't set pullups
|
||||
* and pulldowns correctly ... default for non-ULPI pins is
|
||||
|
|
@ -461,15 +460,21 @@ no_irqs:
|
|||
dev_err(&pdev->dev, "could not register gpiochip, %d\n", ret);
|
||||
twl_gpiochip.ngpio = 0;
|
||||
gpio_twl4030_remove(pdev);
|
||||
} else if (pdata && pdata->setup) {
|
||||
goto out;
|
||||
}
|
||||
|
||||
twl4030_gpio_base = twl_gpiochip.base;
|
||||
|
||||
if (pdata && pdata->setup) {
|
||||
int status;
|
||||
|
||||
status = pdata->setup(&pdev->dev,
|
||||
pdata->gpio_base, TWL4030_GPIO_MAX);
|
||||
twl4030_gpio_base, TWL4030_GPIO_MAX);
|
||||
if (status)
|
||||
dev_dbg(&pdev->dev, "setup --> %d\n", status);
|
||||
}
|
||||
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
@ -481,7 +486,7 @@ static int gpio_twl4030_remove(struct platform_device *pdev)
|
|||
|
||||
if (pdata && pdata->teardown) {
|
||||
status = pdata->teardown(&pdev->dev,
|
||||
pdata->gpio_base, TWL4030_GPIO_MAX);
|
||||
twl4030_gpio_base, TWL4030_GPIO_MAX);
|
||||
if (status) {
|
||||
dev_dbg(&pdev->dev, "teardown --> %d\n", status);
|
||||
return status;
|
||||
|
|
|
|||
Loading…
Reference in a new issue