[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091106083042.GA17723@linux-mips.org>
Date: Fri, 6 Nov 2009 09:30:42 +0100
From: Ralf Baechle <ralf@...ux-mips.org>
To: Wu Zhangjin <wuzhangjin@...il.com>
Cc: linux-mips@...ux-mips.org, LKML <linux-kernel@...r.kernel.org>,
huhb@...ote.com, yanh@...ote.com, Zhang Le <r0bertz@...too.org>,
Thomas Gleixner <tglx@...utronix.de>,
Nicholas Mc Guire <der.herr@...r.at>, zhangfx@...ote.com,
liujl@...ote.com
Subject: Re: [PATCH -queue v0 4/6] [loongson] add basic fuloong2f support
On Fri, Nov 06, 2009 at 01:39:44PM +0800, Wu Zhangjin wrote:
> > > + if ((LOONGSON_INTISR & LOONGSON_INTEN) & LOONGSON_INT_BIT_INT0) {
> > > + imr = inb(0x21) | (inb(0xa1) << 8);
> > > + isr = inb(0x20) | (inb(0xa0) << 8);
> > > + isr &= ~0x4; /* irq2 for cascade */
> > > + isr &= ~imr;
> > > + irq = ffs(isr) - 1;
> > > + }
> >
> > Any reason why you're not using i8259_irq() from <asm/i8259.h> here?
> > That function not only gets the locking right, it also minimizes the number
> > of accesses to the i8259 - which even on modern silicon can be stuningly
> > slow.
> Just asked Yanhua, He told me there is a bug in cs5536, if using the
> i8259_irq() directly, we can not get the irq. and just tried it, the
> kernel hang on booting.
Wonderful. Even 30 years after it was built there are still new i8259
bugs :-)
This is probably worth a comment in the code.
Ralf
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists