linux-mips
[Top] [All Lists]

Re: __do_IRQ() going away

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: __do_IRQ() going away
From: Manuel Lauss <mano@roarinelk.homelinux.net>
Date: Thu, 12 Mar 2009 10:46:28 +0100
Cc: linux-mips@linux-mips.org, Thomas Gleixner <tglx@linutronix.de>
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to:cc :content-type:content-transfer-encoding; bh=1hrNyj4IZ0v6mfRIvJGd+UklS13/5PQ4B90OHM1DQ9g=; b=jWtduvZXkQZRZMX+639HiSJtNbwWDIVmncIRxVUWwu2/fjIuGnp02OGl+9sT+3tpcJ 2c0WJnH6fI5nb5/AHj2BPxx/QjpbXb4M75egomKfumXHTPKICAxEy6pWSJ0aMfOp4bYV +VwAJ5r1Y4mg/mLKPZZqvtTaVPIQhnVowaUXk=
Domainkey-signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=dTuyyQLMHFeU6zSP+vTquFgmqPczMxmi+At4W/qdEhzQ3GFeIMxDryq+6rSK77jf9p /WiHEVs4zh19nnN0b7VkFtl0u5jRsl4IGzp0z9Q7Y3rrQw00Nesi4ma5dc4djJWgDp1k 0jB+NagG/R8tCgrczDxLwrCeYxuG2N5NRIzrM=
In-reply-to: <20090312092810.GA13674@linux-mips.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20090311112806.GA24541@linux-mips.org> <20090312072618.GA31978@roarinelk.homelinux.net> <20090312092810.GA13674@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
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

<Prev in Thread] Current Thread [Next in Thread>