* __do_IRQ() going away
@ 2009-03-11 11:28 Ralf Baechle
2009-03-11 23:23 ` Markus Gothe
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Ralf Baechle @ 2009-03-11 11:28 UTC (permalink / raw)
To: linux-mips; +Cc: Thomas Gleixner
__do_IRQ() is deprecated since a long time and there are plans to remove
it for 2.6.30. The MIPS platforms seem to fall into three classes:
o Platforms setting CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ to explicitly disable
__do_IRQ():
capcella_defconfig, cobalt_defconfig, e55_defconfig,
fulong_defconfig, ip27_defconfig, jazz_defconfig, jmr3927_defconfig,
lasat_defconfig, mpc30x_defconfig, pnx8335-stb225_defconfig,
pnx8550-jbs_defconfig, pnx8550-stb810_defconfig, rb532_defconfig,
rbtx49xx_defconfig, tb0219_defconfig, tb0226_defconfig,
tb0287_defconfig and workpad_defconfig.
o Platforms that don't set CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ but don't
seem to use __do_IRQ():
bcm47xx_defconfig, cavium-octeon_defconfig, excite_defconfig,
ip22_defconfig, ip28_defconfig, msp71xx_defconfig, wrppmc_defconfig,
o Platforms that still seem to rely on __do_IRQ():
o All Sibyte platforms:
bigsur_defconfig and sb1250-swarm_defconfig
o All Alchemy platforms:
db1000_defconfig, db1100_defconfig, db1200_defconfig, db1500_defconfig,
db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
and pb1550_defconfig
o malta_defconfig. The platform code itself is ok but irq-gic.c,
irq-msc01.c, irq-msc01.c and irq_cpu.c are still using set_irq_chip
and need fixing.
o And the rest:
decstation_defconfig, emma2rh_defconfig, ip32_defconfig,
yosemite_defconfig, mipssim_defconfig and rm200_defconfig.
For now I've checked in the following patch into linux-queue.
Ralf
MIPS: Enable GENERIC_HARDIRQS_NO__DO_IRQ for all platforms
__do_IRQ() is deprecated and will go away.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/Kconfig | 12 +-----------
1 file changed, 1 insertion(+), 11 deletions(-)
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -77,7 +77,6 @@ config MIPS_COBALT
select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_64BIT_KERNEL
select SYS_SUPPORTS_LITTLE_ENDIAN
- select GENERIC_HARDIRQS_NO__DO_IRQ
config MACH_DECSTATION
bool "DECstations"
@@ -132,7 +131,6 @@ config MACH_JAZZ
select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
select SYS_SUPPORTS_100HZ
- select GENERIC_HARDIRQS_NO__DO_IRQ
help
This a family of machines based on the MIPS R4030 chipset which was
used by several vendors to build RISC/os and Windows NT workstations.
@@ -154,7 +152,6 @@ config LASAT
select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
select SYS_SUPPORTS_LITTLE_ENDIAN
- select GENERIC_HARDIRQS_NO__DO_IRQ
config LEMOTE_FULONG
bool "Lemote Fulong mini-PC"
@@ -175,7 +172,6 @@ config LEMOTE_FULONG
select SYS_SUPPORTS_LITTLE_ENDIAN
select SYS_SUPPORTS_HIGHMEM
select SYS_HAS_EARLY_PRINTK
- select GENERIC_HARDIRQS_NO__DO_IRQ
select GENERIC_ISA_DMA_SUPPORT_BROKEN
select CPU_HAS_WB
help
@@ -246,7 +242,6 @@ config MACH_VR41XX
select CEVT_R4K
select CSRC_R4K
select SYS_HAS_CPU_VR41XX
- select GENERIC_HARDIRQS_NO__DO_IRQ
config NXP_STB220
bool "NXP STB220 board"
@@ -360,7 +355,6 @@ config SGI_IP27
select SYS_SUPPORTS_BIG_ENDIAN
select SYS_SUPPORTS_NUMA
select SYS_SUPPORTS_SMP
- select GENERIC_HARDIRQS_NO__DO_IRQ
help
This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
workstations. To compile a Linux kernel that runs on these, say Y
@@ -559,7 +553,6 @@ config MIKROTIK_RB532
select CEVT_R4K
select CSRC_R4K
select DMA_NONCOHERENT
- select GENERIC_HARDIRQS_NO__DO_IRQ
select HW_HAS_PCI
select IRQ_CPU
select SYS_HAS_CPU_MIPS32_R1
@@ -697,8 +690,7 @@ config SCHED_OMIT_FRAME_POINTER
default y
config GENERIC_HARDIRQS_NO__DO_IRQ
- bool
- default n
+ def_bool y
#
# Select some configuration options automatically based on user selections.
@@ -905,7 +897,6 @@ config SOC_PNX833X
select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_LITTLE_ENDIAN
select SYS_SUPPORTS_BIG_ENDIAN
- select GENERIC_HARDIRQS_NO__DO_IRQ
select GENERIC_GPIO
select CPU_MIPSR2_IRQ_VI
@@ -924,7 +915,6 @@ config SOC_PNX8550
select SYS_HAS_CPU_MIPS32_R1
select SYS_HAS_EARLY_PRINTK
select SYS_SUPPORTS_32BIT_KERNEL
- select GENERIC_HARDIRQS_NO__DO_IRQ
select GENERIC_GPIO
config SWAP_IO_SPACE
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: __do_IRQ() going away
2009-03-11 11:28 __do_IRQ() going away Ralf Baechle
@ 2009-03-11 23:23 ` Markus Gothe
2009-03-12 7:26 ` Manuel Lauss
2009-03-13 15:31 ` MIPS: EMMA2RH: Use handle_edge_irq() handler for GPIO interrupts Shinya Kuribayashi
2 siblings, 0 replies; 7+ messages in thread
From: Markus Gothe @ 2009-03-11 23:23 UTC (permalink / raw)
To: Ralf Baechle; +Cc: linux-mips, Thomas Gleixner
[-- Attachment #1: Type: text/plain, Size: 4532 bytes --]
I'll have a quick look at the NEC EMMA2 code, for review...
//Markus
On 11 Mar 2009, at 12:28, Ralf Baechle wrote:
> __do_IRQ() is deprecated since a long time and there are plans to
> remove
> it for 2.6.30. The MIPS platforms seem to fall into three classes:
>
> o Platforms setting CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ to explicitly
> disable
> __do_IRQ():
> capcella_defconfig, cobalt_defconfig, e55_defconfig,
> fulong_defconfig, ip27_defconfig, jazz_defconfig, jmr3927_defconfig,
> lasat_defconfig, mpc30x_defconfig, pnx8335-stb225_defconfig,
> pnx8550-jbs_defconfig, pnx8550-stb810_defconfig, rb532_defconfig,
> rbtx49xx_defconfig, tb0219_defconfig, tb0226_defconfig,
> tb0287_defconfig and workpad_defconfig.
>
> o Platforms that don't set CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ but
> don't
> seem to use __do_IRQ():
>
> bcm47xx_defconfig, cavium-octeon_defconfig, excite_defconfig,
> ip22_defconfig, ip28_defconfig, msp71xx_defconfig, wrppmc_defconfig,
>
> o Platforms that still seem to rely on __do_IRQ():
> o All Sibyte platforms:
> bigsur_defconfig and sb1250-swarm_defconfig
>
> o All Alchemy platforms:
> db1000_defconfig, db1100_defconfig, db1200_defconfig,
> db1500_defconfig,
> db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
> and pb1550_defconfig
>
> o malta_defconfig. The platform code itself is ok but irq-gic.c,
> irq-msc01.c, irq-msc01.c and irq_cpu.c are still using set_irq_chip
> and need fixing.
>
> o And the rest:
> decstation_defconfig, emma2rh_defconfig, ip32_defconfig,
> yosemite_defconfig, mipssim_defconfig and rm200_defconfig.
>
> For now I've checked in the following patch into linux-queue.
>
> Ralf
>
> MIPS: Enable GENERIC_HARDIRQS_NO__DO_IRQ for all platforms
>
> __do_IRQ() is deprecated and will go away.
>
> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
>
> arch/mips/Kconfig | 12 +-----------
> 1 file changed, 1 insertion(+), 11 deletions(-)
>
> --- a/arch/mips/Kconfig
> +++ b/arch/mips/Kconfig
> @@ -77,7 +77,6 @@ config MIPS_COBALT
> select SYS_SUPPORTS_32BIT_KERNEL
> select SYS_SUPPORTS_64BIT_KERNEL
> select SYS_SUPPORTS_LITTLE_ENDIAN
> - select GENERIC_HARDIRQS_NO__DO_IRQ
>
> config MACH_DECSTATION
> bool "DECstations"
> @@ -132,7 +131,6 @@ config MACH_JAZZ
> select SYS_SUPPORTS_32BIT_KERNEL
> select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
> select SYS_SUPPORTS_100HZ
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> help
> This a family of machines based on the MIPS R4030 chipset which was
> used by several vendors to build RISC/os and Windows NT
> workstations.
> @@ -154,7 +152,6 @@ config LASAT
> select SYS_SUPPORTS_32BIT_KERNEL
> select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
> select SYS_SUPPORTS_LITTLE_ENDIAN
> - select GENERIC_HARDIRQS_NO__DO_IRQ
>
> config LEMOTE_FULONG
> bool "Lemote Fulong mini-PC"
> @@ -175,7 +172,6 @@ config LEMOTE_FULONG
> select SYS_SUPPORTS_LITTLE_ENDIAN
> select SYS_SUPPORTS_HIGHMEM
> select SYS_HAS_EARLY_PRINTK
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> select GENERIC_ISA_DMA_SUPPORT_BROKEN
> select CPU_HAS_WB
> help
> @@ -246,7 +242,6 @@ config MACH_VR41XX
> select CEVT_R4K
> select CSRC_R4K
> select SYS_HAS_CPU_VR41XX
> - select GENERIC_HARDIRQS_NO__DO_IRQ
>
> config NXP_STB220
> bool "NXP STB220 board"
> @@ -360,7 +355,6 @@ config SGI_IP27
> select SYS_SUPPORTS_BIG_ENDIAN
> select SYS_SUPPORTS_NUMA
> select SYS_SUPPORTS_SMP
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> help
> This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
> workstations. To compile a Linux kernel that runs on these, say Y
> @@ -559,7 +553,6 @@ config MIKROTIK_RB532
> select CEVT_R4K
> select CSRC_R4K
> select DMA_NONCOHERENT
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> select HW_HAS_PCI
> select IRQ_CPU
> select SYS_HAS_CPU_MIPS32_R1
> @@ -697,8 +690,7 @@ config SCHED_OMIT_FRAME_POINTER
> default y
>
> config GENERIC_HARDIRQS_NO__DO_IRQ
> - bool
> - default n
> + def_bool y
>
> #
> # Select some configuration options automatically based on user
> selections.
> @@ -905,7 +897,6 @@ config SOC_PNX833X
> select SYS_SUPPORTS_32BIT_KERNEL
> select SYS_SUPPORTS_LITTLE_ENDIAN
> select SYS_SUPPORTS_BIG_ENDIAN
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> select GENERIC_GPIO
> select CPU_MIPSR2_IRQ_VI
>
> @@ -924,7 +915,6 @@ config SOC_PNX8550
> select SYS_HAS_CPU_MIPS32_R1
> select SYS_HAS_EARLY_PRINTK
> select SYS_SUPPORTS_32BIT_KERNEL
> - select GENERIC_HARDIRQS_NO__DO_IRQ
> select GENERIC_GPIO
>
> config SWAP_IO_SPACE
>
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 194 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: __do_IRQ() going away
2009-03-11 11:28 __do_IRQ() going away Ralf Baechle
2009-03-11 23:23 ` Markus Gothe
@ 2009-03-12 7:26 ` Manuel Lauss
2009-03-12 9:28 ` Ralf Baechle
2009-03-13 15:31 ` MIPS: EMMA2RH: Use handle_edge_irq() handler for GPIO interrupts Shinya Kuribayashi
2 siblings, 1 reply; 7+ messages in thread
From: Manuel Lauss @ 2009-03-12 7:26 UTC (permalink / raw)
To: Ralf Baechle; +Cc: linux-mips, Thomas Gleixner
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=unknown-8bit, Size: 664 bytes --]
On Wed, Mar 11, 2009 at 12:28:06PM +0100, Ralf Baechle wrote:
> __do_IRQ() is deprecated since a long time and there are plans to remove
> it for 2.6.30. The MIPS platforms seem to fall into three classes:
> o Platforms that still seem to rely on __do_IRQ():
> o All Alchemy platforms:
> db1000_defconfig, db1100_defconfig, db1200_defconfig, db1500_defconfig,
> db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
> and pb1550_defconfig
I believe that the defconfigs just need to be updated. There are no
__do_IRQ invocations in the alchemy/ tree anymore, and generic hardirqs are
enabled by CONFIG_SOC_AU1X00.
Grüsse,
Manuel Lauss
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: __do_IRQ() going away
2009-03-12 7:26 ` Manuel Lauss
@ 2009-03-12 9:28 ` Ralf Baechle
2009-03-12 9:46 ` Manuel Lauss
0 siblings, 1 reply; 7+ messages in thread
From: Ralf Baechle @ 2009-03-12 9:28 UTC (permalink / raw)
To: Manuel Lauss; +Cc: linux-mips, Thomas Gleixner
On Thu, Mar 12, 2009 at 08:26:18AM +0100, Manuel Lauss wrote:
>
> On Wed, Mar 11, 2009 at 12:28:06PM +0100, Ralf Baechle wrote:
> > __do_IRQ() is deprecated since a long time and there are plans to remove
> > it for 2.6.30. The MIPS platforms seem to fall into three classes:
>
> > o Platforms that still seem to rely on __do_IRQ():
> > o All Alchemy platforms:
> > db1000_defconfig, db1100_defconfig, db1200_defconfig, db1500_defconfig,
> > db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
> > and pb1550_defconfig
>
> I believe that the defconfigs just need to be updated. There are no
> __do_IRQ invocations in the alchemy/ tree anymore, and generic hardirqs are
> enabled by CONFIG_SOC_AU1X00.
__do_IRQ will be called from the generic code if irq_desc->handle_irq is
not set for an interrupt and handle_irq will be left NULL if a platform
only calls set_irq_chip or even does a homebrew initialization. Fix is
to call set_irq_chip_and_handler or better set_irq_chip_and_handler_name.
Iow, now with CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ always set half the
platforms will blow up because the function pointer irq_desc->handle_irq
is unset.
Ralf
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: __do_IRQ() going away
2009-03-12 9:28 ` Ralf Baechle
@ 2009-03-12 9:46 ` Manuel Lauss
2009-03-12 11:20 ` Ralf Baechle
0 siblings, 1 reply; 7+ messages in thread
From: Manuel Lauss @ 2009-03-12 9:46 UTC (permalink / raw)
To: Ralf Baechle; +Cc: linux-mips, Thomas Gleixner
On Thu, Mar 12, 2009 at 10:28 AM, Ralf Baechle <ralf@linux-mips.org> wrote:
> On Thu, Mar 12, 2009 at 08:26:18AM +0100, Manuel Lauss wrote:
>
>>
>> On Wed, Mar 11, 2009 at 12:28:06PM +0100, Ralf Baechle wrote:
>> > __do_IRQ() is deprecated since a long time and there are plans to remove
>> > it for 2.6.30. The MIPS platforms seem to fall into three classes:
>>
>> > o Platforms that still seem to rely on __do_IRQ():
>> > o All Alchemy platforms:
>> > db1000_defconfig, db1100_defconfig, db1200_defconfig, db1500_defconfig,
>> > db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
>> > and pb1550_defconfig
>>
>> I believe that the defconfigs just need to be updated. There are no
>> __do_IRQ invocations in the alchemy/ tree anymore, and generic hardirqs are
>> enabled by CONFIG_SOC_AU1X00.
>
> __do_IRQ will be called from the generic code if irq_desc->handle_irq is
> not set for an interrupt and handle_irq will be left NULL if a platform
> only calls set_irq_chip or even does a homebrew initialization. Fix is
> to call set_irq_chip_and_handler or better set_irq_chip_and_handler_name.
Alchemy does all that...
> Iow, now with CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ always set half the
> platforms will blow up because the function pointer irq_desc->handle_irq
> is unset.
...and it works fine so far on the DB1200 and another 2 boards I have.
(I.e. your patch didn't break anything). Unless I'm missing something
very big.
Manuel Lauss
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: __do_IRQ() going away
2009-03-12 9:46 ` Manuel Lauss
@ 2009-03-12 11:20 ` Ralf Baechle
0 siblings, 0 replies; 7+ messages in thread
From: Ralf Baechle @ 2009-03-12 11:20 UTC (permalink / raw)
To: Manuel Lauss; +Cc: linux-mips, Thomas Gleixner
On Thu, Mar 12, 2009 at 10:46:28AM +0100, Manuel Lauss wrote:
> > Iow, now with CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ always set half the
> > platforms will blow up because the function pointer irq_desc->handle_irq
> > is unset.
>
> ...and it works fine so far on the DB1200 and another 2 boards I have.
> (I.e. your patch didn't break anything). Unless I'm missing something
> very big.
Ah, there is a remaining call to set_irq_chip in the Alchemy code - but
that seems to be in "does not happen" code so should be benign.
Ralf
^ permalink raw reply [flat|nested] 7+ messages in thread
* MIPS: EMMA2RH: Use handle_edge_irq() handler for GPIO interrupts
2009-03-11 11:28 __do_IRQ() going away Ralf Baechle
2009-03-11 23:23 ` Markus Gothe
2009-03-12 7:26 ` Manuel Lauss
@ 2009-03-13 15:31 ` Shinya Kuribayashi
2 siblings, 0 replies; 7+ messages in thread
From: Shinya Kuribayashi @ 2009-03-13 15:31 UTC (permalink / raw)
To: Ralf Baechle; +Cc: linux-mips, Thomas Gleixner
EMMA's GPIO interrupts are latched by GPIO interrupt status register.
In this case, we're encouraged to use handle_edge_irq() handler.
The following changes are made along with replacing set_irq_chip() with
set_irq_chip_and_handler_name(,,handle_edge_irq,"edge"):
* Fix emma2rh_gpio_irq_ack not to disable interrupts
With handle_edge_irq(), we're not expected to disable interrupts
when chip->ack is served, so fix it accordingly. We also add a
new emma2rh_gpio_irq_mask_ack() for chip->mask_ack operation.
* Remove emma2rh_gpio_irq_end() as chip->end is no longer served.
Signed-off-by: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
---
Ralf Baechle wrote:
> __do_IRQ() is deprecated since a long time and there are plans to remove
> it for 2.6.30. The MIPS platforms seem to fall into three classes:
[snip]
> o Platforms that still seem to rely on __do_IRQ():
> o All Sibyte platforms:
> bigsur_defconfig and sb1250-swarm_defconfig
>
> o All Alchemy platforms:
> db1000_defconfig, db1100_defconfig, db1200_defconfig, db1500_defconfig,
> db1550_defconfig, mtx1_defconfig, pb1100_defconfig, pb1500_defconfig
> and pb1550_defconfig
>
> o malta_defconfig. The platform code itself is ok but irq-gic.c,
> irq-msc01.c, irq-msc01.c and irq_cpu.c are still using set_irq_chip
> and need fixing.
>
> o And the rest:
> decstation_defconfig, emma2rh_defconfig, ip32_defconfig,
> yosemite_defconfig, mipssim_defconfig and rm200_defconfig.
Here's a patch for EMMA2RH not to call __do_IRQ(). Please review.
Thanks,
Shinya
arch/mips/emma/markeins/irq.c | 28 ++++++++++------------------
1 files changed, 10 insertions(+), 18 deletions(-)
diff --git a/arch/mips/emma/markeins/irq.c b/arch/mips/emma/markeins/irq.c
index ce8f5f2..d15556c 100644
--- a/arch/mips/emma/markeins/irq.c
+++ b/arch/mips/emma/markeins/irq.c
@@ -149,37 +149,28 @@ static void emma2rh_gpio_irq_disable(unsigned int irq)
static void emma2rh_gpio_irq_ack(unsigned int irq)
{
- u32 reg;
-
irq -= EMMA2RH_GPIO_IRQ_BASE;
emma2rh_out32(EMMA2RH_GPIO_INT_ST, ~(1 << irq));
-
- reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
- reg &= ~(1 << irq);
- emma2rh_out32(EMMA2RH_GPIO_INT_MASK, reg);
}
-static void emma2rh_gpio_irq_end(unsigned int irq)
+static void emma2rh_gpio_irq_mask_ack(unsigned int irq)
{
u32 reg;
- if (!(irq_desc[irq].status & (IRQ_DISABLED | IRQ_INPROGRESS))) {
-
- irq -= EMMA2RH_GPIO_IRQ_BASE;
+ irq -= EMMA2RH_GPIO_IRQ_BASE;
+ emma2rh_out32(EMMA2RH_GPIO_INT_ST, ~(1 << irq));
- reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
- reg |= 1 << irq;
- emma2rh_out32(EMMA2RH_GPIO_INT_MASK, reg);
- }
+ reg = emma2rh_in32(EMMA2RH_GPIO_INT_MASK);
+ reg &= ~(1 << irq);
+ emma2rh_out32(EMMA2RH_GPIO_INT_MASK, reg);
}
struct irq_chip emma2rh_gpio_irq_controller = {
.name = "emma2rh_gpio_irq",
.ack = emma2rh_gpio_irq_ack,
.mask = emma2rh_gpio_irq_disable,
- .mask_ack = emma2rh_gpio_irq_ack,
+ .mask_ack = emma2rh_gpio_irq_mask_ack,
.unmask = emma2rh_gpio_irq_enable,
- .end = emma2rh_gpio_irq_end,
};
void emma2rh_gpio_irq_init(void)
@@ -187,8 +178,9 @@ void emma2rh_gpio_irq_init(void)
u32 i;
for (i = 0; i < NUM_EMMA2RH_IRQ_GPIO; i++)
- set_irq_chip(EMMA2RH_GPIO_IRQ_BASE + i,
- &emma2rh_gpio_irq_controller);
+ set_irq_chip_and_handler_name(EMMA2RH_GPIO_IRQ_BASE + i,
+ &emma2rh_gpio_irq_controller,
+ handle_edge_irq, "edge");
}
static struct irqaction irq_cascade = {
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-03-13 15:31 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-03-11 11:28 __do_IRQ() going away Ralf Baechle
2009-03-11 23:23 ` Markus Gothe
2009-03-12 7:26 ` Manuel Lauss
2009-03-12 9:28 ` Ralf Baechle
2009-03-12 9:46 ` Manuel Lauss
2009-03-12 11:20 ` Ralf Baechle
2009-03-13 15:31 ` MIPS: EMMA2RH: Use handle_edge_irq() handler for GPIO interrupts Shinya Kuribayashi
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.