[lkml]   [2010]   [Jun]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [tip:x86/irq] x86, acpi/irq: Handle isa irqs that are not identity mapped to gsi's.
On 06/07/2010 02:05 PM, H. Peter Anvin wrote:
> On 05/05/2010 02:32 AM, Eric W. Biederman wrote:
>>> can you use legacy_irq->nr_legacy_irqs instead of NR_IRQS_LEGACY ?
>> No. legacy_irq->nr_legacy_irqs is just for dealing with hardware that
>> does not have i8259 pics.
> I don't know if it is "just" for this purpose. Quite on the contrary.
> In fact, the fact that NR_IRQS_LEGACY is showing up at all looks like a
> real problem.
>> Here I am reserving 16 irqs above the gsi range in case we get a
>> weird gsi to isa irq mapping.
> But that 16 is exactly because those are the (platform-specific) legacy
> IRQs.
>> Currently the sfi spec doesn't mention anything explicitly. I
>> took a quick read through it and sfi and I presume Moorestown
>> is talking about non pci irqs. So I would not be surprised
>> if we didn't have isa device drivers running on platforms
>> without i8259s.
> I'm confused about the above. Where do you see any mention to fixed
> (ISA) IRQs in SFI or Moorestown? Jacob tells me they don't exist.
>> Currently the code had a small bug dealing with multiple ioapics and
>> the spec really is incomplete about how you map irqs from pci devices
>> to interrupts. So it looks like SFI and Moorestown are more a lab
>> experiment than real hardware at the moment. So I expect when
>> it gets completely fleshed out we will have to jump through a
>> similar set of hoops as we do with acpi to ensure the first 16
>> irqs are not used for anything except isa irqs.
> Moorestown hardware certainly exists, although not all the support is
> upstream yet.
> Either which way, anything which perpetuates NR_IRQS_LEGACY as a
> compile-time constant is begging for people to get things wrong, and it
> really needs to go away.

yes, it should be replaced legacy_irq->nr_legacy_irs to make Moorestown to have sane irq index.

otherwise gsi_to_irq will mapping all [0, 15] to start from nr_irqs_gsi.



 \ /
  Last update: 2010-06-09 00:23    [W:0.108 / U:24.312 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site