lkml.org 
[lkml]   [2010]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/15] x86 acpi/irq: pci device dev->irq is an isa irq not a gsi
    Date
    From: Eric W. Biederman <ebiederm@xmission.com>

    Strictly speaking on x86 (where acpi is used) dev->irq must be
    a dual i8259 irq input aka an isa irq. Therefore we should translate
    that isa irq into a gsi before passing it to a function that
    takes a gsi.

    Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
    ---
    drivers/acpi/pci_irq.c | 8 +++++---
    1 files changed, 5 insertions(+), 3 deletions(-)

    diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c
    index 843699e..703541d 100644
    --- a/drivers/acpi/pci_irq.c
    +++ b/drivers/acpi/pci_irq.c
    @@ -400,11 +400,13 @@ int acpi_pci_irq_enable(struct pci_dev *dev)
    * driver reported one, then use it. Exit in any case.
    */
    if (gsi < 0) {
    + u32 dev_gsi;
    dev_warn(&dev->dev, "PCI INT %c: no GSI", pin_name(pin));
    /* Interrupt Line values above 0xF are forbidden */
    - if (dev->irq > 0 && (dev->irq <= 0xF)) {
    - printk(" - using IRQ %d\n", dev->irq);
    - acpi_register_gsi(&dev->dev, dev->irq,
    + if (dev->irq > 0 && (dev->irq <= 0xF) &&
    + (acpi_isa_irq_to_gsi(dev->irq, &dev_gsi) == 0)) {
    + printk(" - using ISA IRQ %d\n", dev->irq);
    + acpi_register_gsi(&dev->dev, dev_gsi,
    ACPI_LEVEL_SENSITIVE,
    ACPI_ACTIVE_LOW);
    return 0;
    --
    1.6.5.2.143.g8cc62


    \
     
     \ /
      Last update: 2010-03-30 10:13    [W:0.024 / U:32.256 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site