[coreboot] v3 interrupt tables...

ron minnich rminnich at gmail.com
Sat Feb 9 19:16:41 CET 2008


On Feb 9, 2008 9:53 AM, Peter Stuge <peter at stuge.se> wrote:

> Perhaps we can combine all previous ways of describing interrupt
> routing in a new, better, simpler way?
>
> Then have generators for ACPI, PIRQ, device tree, whatever..

This just started sounding really hard.

I don't know if we need total generality, thinking about it. I am
guessing that, in any general scheme, we should drop $PIR from a list
of things we care about.

$PIR is really deprecated. And it doesn't work all that well anyway --
the kernel(s) keep getting it wrong. The kernel only really looks at
$PIR when the 3c.b register is zero. We're better off just setting
this stuff in the kernel.

So, maybe what I should have done, for older systems like LX, is have
a simple hardwire map in the mainboard for specifying how to set
interrupt registers, and just drop $PIR entirely? I think we should
ignore $PIR in any future scheme, and do something simple for now.

FWIW, the interrupt map for these systems is just a 2d array, and on
the LX map, many of the entries in the array are zero.

It's also a sparse array, with just two indices: the busdevfn (16
bits) and the interrupt # (2 bits).

Will removing PIR hurt hot plug? I doubt it -- hot plug is for newer
stuff and that's all PCI-E anyway.

Just some random thoughts. Who understands ACPI interrupt
specification? I still don't.

ron




More information about the coreboot mailing list