summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAlexander Stein2011-07-04 08:58:31 +0200
committerGreg Kroah-Hartman2011-07-09 00:09:21 +0200
commite463595fd9c752fa4bf06b47df93ef9ade3c7cf0 (patch)
treead0829833fb2e99d976f8720ba905584e012187a /drivers
parenttty: fix "IRQ45: nobody cared" (diff)
downloadkernel-qcow2-linux-e463595fd9c752fa4bf06b47df93ef9ade3c7cf0.tar.gz
kernel-qcow2-linux-e463595fd9c752fa4bf06b47df93ef9ade3c7cf0.tar.xz
kernel-qcow2-linux-e463595fd9c752fa4bf06b47df93ef9ade3c7cf0.zip
pch_uart: Add MSI support
Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/tty/serial/pch_uart.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/tty/serial/pch_uart.c b/drivers/tty/serial/pch_uart.c
index ae28250b0be0..35cb9af893ba 100644
--- a/drivers/tty/serial/pch_uart.c
+++ b/drivers/tty/serial/pch_uart.c
@@ -1426,6 +1426,8 @@ static struct eg20t_port *pch_uart_init_port(struct pci_dev *pdev,
goto init_port_hal_free;
}
+ pci_enable_msi(pdev);
+
iobase = pci_resource_start(pdev, 0);
mapbase = pci_resource_start(pdev, 1);
priv->mapbase = mapbase;
@@ -1482,6 +1484,8 @@ static void pch_uart_pci_remove(struct pci_dev *pdev)
struct eg20t_port *priv;
priv = (struct eg20t_port *)pci_get_drvdata(pdev);
+
+ pci_disable_msi(pdev);
pch_uart_exit_port(priv);
pci_disable_device(pdev);
kfree(priv);
@@ -1565,6 +1569,7 @@ static int __devinit pch_uart_pci_probe(struct pci_dev *pdev,
return ret;
probe_disable_device:
+ pci_disable_msi(pdev);
pci_disable_device(pdev);
probe_error:
return ret;