• Jiang Liu's avatar
    x86: irq: Fix bug in setting IOAPIC pin attributes · f395dcae
    Jiang Liu authored
    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: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
    Signed-off-by: default avatarJiang 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: default avatarThomas Gleixner <tglx@linutronix.de>
    f395dcae
io_apic.c 96.4 KB