[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABexPfGv=vkj5pq135+Jdy-E6fhppQK8Cq7FvuZV=tn8bA=SHw@mail.gmail.com>
Date: Tue, 10 Jan 2012 20:03:21 +0800
From: Zhihua Che <zhihua.che@...il.com>
To: linux-kernel@...r.kernel.org
Subject: [8259A] Why the irq_desc->handle_irq are set as handle_level_irq()
while the ICW1 is set 0x11, which indicates edge mode?
hi, everyone
I'm reading kernel codes of version 3.1x and now focusing on
interrupt subsystem. I find an interesting thing.
In x86 architecture, init_8259A() is invoked by init_ISA_irqs()
to initialize the chip and precisely, the ICW1 of both master and
slave 8259A chip are set as 0x11 which indicates that the both chip
are enabled with edge trigger mode. However, I'm wondering why the
irq_desc->handle_irq fields of the total 16 IRQ descriptor are set as
handle_level_irq() in init_ISA_irqs(). As far as I know, the
handle_level_irq() is designed to handle level-mode interrupts.
Please Let me know if I miss anything.
Harvey
--
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