diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-03-22 12:11:09 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-03-29 08:47:52 -0400 |
commit | 1475b85d08b51b5ee2b7b426247d3ef3f531eafe (patch) | |
tree | e0f092b3fda6515735c04a2cecfc3a375df601c6 | |
parent | b0f18edaf6ee4e6fac89cae63a90bd38ad2a3418 (diff) |
arm: Use genirq lockdep helper to set lock class
Remove the open coded access to irq_desc which will fail on sparse irq
and use the proper wrappers.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r-- | arch/arm/mach-at91/gpio.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-tegra/gpio.c | 2 | ||||
-rw-r--r-- | arch/arm/plat-omap/gpio.c | 4 |
3 files changed, 3 insertions, 5 deletions
diff --git a/arch/arm/mach-at91/gpio.c b/arch/arm/mach-at91/gpio.c index af818a21587c..5abcfc016c47 100644 --- a/arch/arm/mach-at91/gpio.c +++ b/arch/arm/mach-at91/gpio.c | |||
@@ -518,7 +518,7 @@ void __init at91_gpio_irq_setup(void) | |||
518 | __raw_writel(~0, this->regbase + PIO_IDR); | 518 | __raw_writel(~0, this->regbase + PIO_IDR); |
519 | 519 | ||
520 | for (i = 0, pin = this->chip.base; i < 32; i++, pin++) { | 520 | for (i = 0, pin = this->chip.base; i < 32; i++, pin++) { |
521 | lockdep_set_class(&irq_desc[pin].lock, &gpio_lock_class); | 521 | irq_set_lockdep_class(pin, &gpio_lock_class); |
522 | 522 | ||
523 | /* | 523 | /* |
524 | * Can use the "simple" and not "edge" handler since it's | 524 | * Can use the "simple" and not "edge" handler since it's |
diff --git a/arch/arm/mach-tegra/gpio.c b/arch/arm/mach-tegra/gpio.c index 094e61a59b1f..8ab2131f41d4 100644 --- a/arch/arm/mach-tegra/gpio.c +++ b/arch/arm/mach-tegra/gpio.c | |||
@@ -340,7 +340,7 @@ static int __init tegra_gpio_init(void) | |||
340 | for (i = INT_GPIO_BASE; i < (INT_GPIO_BASE + TEGRA_NR_GPIOS); i++) { | 340 | for (i = INT_GPIO_BASE; i < (INT_GPIO_BASE + TEGRA_NR_GPIOS); i++) { |
341 | bank = &tegra_gpio_banks[GPIO_BANK(irq_to_gpio(i))]; | 341 | bank = &tegra_gpio_banks[GPIO_BANK(irq_to_gpio(i))]; |
342 | 342 | ||
343 | lockdep_set_class(&irq_desc[i].lock, &gpio_lock_class); | 343 | irq_set_lockdep_class(i, &gpio_lock_class); |
344 | set_irq_chip_data(i, bank); | 344 | set_irq_chip_data(i, bank); |
345 | set_irq_chip(i, &tegra_gpio_irq_chip); | 345 | set_irq_chip(i, &tegra_gpio_irq_chip); |
346 | set_irq_handler(i, handle_simple_irq); | 346 | set_irq_handler(i, handle_simple_irq); |
diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c index 971d18636942..08af18883e26 100644 --- a/arch/arm/plat-omap/gpio.c +++ b/arch/arm/plat-omap/gpio.c | |||
@@ -1672,9 +1672,7 @@ static void __init omap_gpio_chip_init(struct gpio_bank *bank) | |||
1672 | 1672 | ||
1673 | for (j = bank->virtual_irq_start; | 1673 | for (j = bank->virtual_irq_start; |
1674 | j < bank->virtual_irq_start + bank_width; j++) { | 1674 | j < bank->virtual_irq_start + bank_width; j++) { |
1675 | struct irq_desc *d = irq_to_desc(j); | 1675 | irq_set_lockdep_class(j, &gpio_lock_class); |
1676 | |||
1677 | lockdep_set_class(&d->lock, &gpio_lock_class); | ||
1678 | set_irq_chip_data(j, bank); | 1676 | set_irq_chip_data(j, bank); |
1679 | if (bank_is_mpuio(bank)) | 1677 | if (bank_is_mpuio(bank)) |
1680 | set_irq_chip(j, &mpuio_irq_chip); | 1678 | set_irq_chip(j, &mpuio_irq_chip); |