• J
    x86: irq: Fix bug in setting IOAPIC pin attributes · f395dcae
    Jiang Liu 提交于
    Commit 15a3c7cc "x86, irq: Introduce two helper functions
    to support irqdomain map operation" breaks LPSS ACPI enumerated
    devices.
    
    On startup, IOAPIC driver preallocates IRQ descriptors and programs
    IOAPIC pins with default level and polarity attributes for all legacy
    IRQs. Later legacy IRQ users may fail to set IOAPIC pin attributes
    if the requested attributes conflicts with the default IOAPIC pin
    attributes. So change mp_irqdomain_map() to allow the first legacy IRQ
    user to reprogram IOAPIC pin with different attributes.
    Reported-and-tested-by: NMika Westerberg <mika.westerberg@linux.intel.com>
    Signed-off-by: NJiang Liu <jiang.liu@linux.intel.com>
    Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Cc: Tony Luck <tony.luck@intel.com>
    Cc: Joerg Roedel <joro@8bytes.org>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
    Cc: Bjorn Helgaas <bhelgaas@google.com>
    Cc: Randy Dunlap <rdunlap@infradead.org>
    Cc: Yinghai Lu <yinghai@kernel.org>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Grant Likely <grant.likely@linaro.org>
    Cc: Prarit Bhargava <prarit@redhat.com>
    Link: http://lkml.kernel.org/r/1409118795-17046-1-git-send-email-jiang.liu@linux.intel.comSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
    f395dcae
io_apic.c 96.4 KB