Commit:     e02f5f52cafbea013817d81f1acc4baf50d6324b
Parent:     57510c2f934a05c53232814761a058399b2ca282
Author:     Bjorn Helgaas <[EMAIL PROTECTED]>
AuthorDate: Wed Nov 14 16:59:59 2007 -0800
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Wed Nov 14 18:45:41 2007 -0800

    serial: only use PNP IRQ if it's valid
    "Luming Yu" <[EMAIL PROTECTED]> says:
      There is a "ttyS1 irq is -1" problem observed on tiger4 which cause the
      serial port broken.
      It is because that there is __no__ ACPI IRQ resource assigned for the
      serial port.  So the value of the IRQ for the port is never changed since 
      got initialized to -1.
    If PNP supplies a valid IRQ, use it.  Otherwise, leave port.irq == 0, which
    means "no IRQ" to the serial core.
    Signed-off-by: Bjorn Helgaas <[EMAIL PROTECTED]>
    Cc: Yu Luming <[EMAIL PROTECTED]>
    Acked-by: Matthew Wilcox <[EMAIL PROTECTED]>
    Cc: Alan Cox <[EMAIL PROTECTED]>
    Cc: Russell King <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
 drivers/serial/8250_pnp.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/serial/8250_pnp.c b/drivers/serial/8250_pnp.c
index ad07559..1de098e 100644
--- a/drivers/serial/8250_pnp.c
+++ b/drivers/serial/8250_pnp.c
@@ -439,7 +439,8 @@ serial_pnp_probe(struct pnp_dev *dev, const struct 
pnp_device_id *dev_id)
        memset(&port, 0, sizeof(struct uart_port));
-       port.irq = pnp_irq(dev, 0);
+       if (pnp_irq_valid(dev, 0))
+               port.irq = pnp_irq(dev, 0);
        if (pnp_port_valid(dev, 0)) {
                port.iobase = pnp_port_start(dev, 0);
                port.iotype = UPIO_PORT;
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to