aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ata/sata_nv.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ata/sata_nv.c')
-rw-r--r--drivers/ata/sata_nv.c24
1 files changed, 4 insertions, 20 deletions
diff --git a/drivers/ata/sata_nv.c b/drivers/ata/sata_nv.c
index 4cea3ef75226..adfa693db53d 100644
--- a/drivers/ata/sata_nv.c
+++ b/drivers/ata/sata_nv.c
@@ -49,7 +49,7 @@
49#include <linux/libata.h> 49#include <linux/libata.h>
50 50
51#define DRV_NAME "sata_nv" 51#define DRV_NAME "sata_nv"
52#define DRV_VERSION "3.3" 52#define DRV_VERSION "3.4"
53 53
54#define NV_ADMA_DMA_BOUNDARY 0xffffffffUL 54#define NV_ADMA_DMA_BOUNDARY 0xffffffffUL
55 55
@@ -229,7 +229,6 @@ struct nv_host_priv {
229#define NV_ADMA_CHECK_INTR(GCTL, PORT) ((GCTL) & ( 1 << (19 + (12 * (PORT))))) 229#define NV_ADMA_CHECK_INTR(GCTL, PORT) ((GCTL) & ( 1 << (19 + (12 * (PORT)))))
230 230
231static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent); 231static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent);
232static void nv_remove_one (struct pci_dev *pdev);
233#ifdef CONFIG_PM 232#ifdef CONFIG_PM
234static int nv_pci_device_resume(struct pci_dev *pdev); 233static int nv_pci_device_resume(struct pci_dev *pdev);
235#endif 234#endif
@@ -288,12 +287,6 @@ static const struct pci_device_id nv_pci_tbl[] = {
288 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA), GENERIC }, 287 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA), GENERIC },
289 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA2), GENERIC }, 288 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA2), GENERIC },
290 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA3), GENERIC }, 289 { PCI_VDEVICE(NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP61_SATA3), GENERIC },
291 { PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID,
292 PCI_ANY_ID, PCI_ANY_ID,
293 PCI_CLASS_STORAGE_IDE<<8, 0xffff00, GENERIC },
294 { PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID,
295 PCI_ANY_ID, PCI_ANY_ID,
296 PCI_CLASS_STORAGE_RAID<<8, 0xffff00, GENERIC },
297 290
298 { } /* terminate list */ 291 { } /* terminate list */
299}; 292};
@@ -306,7 +299,7 @@ static struct pci_driver nv_pci_driver = {
306 .suspend = ata_pci_device_suspend, 299 .suspend = ata_pci_device_suspend,
307 .resume = nv_pci_device_resume, 300 .resume = nv_pci_device_resume,
308#endif 301#endif
309 .remove = nv_remove_one, 302 .remove = ata_pci_remove_one,
310}; 303};
311 304
312static struct scsi_host_template nv_sht = { 305static struct scsi_host_template nv_sht = {
@@ -809,7 +802,7 @@ static irqreturn_t nv_adma_interrupt(int irq, void *dev_instance)
809 u16 status; 802 u16 status;
810 u32 gen_ctl; 803 u32 gen_ctl;
811 u32 notifier, notifier_error; 804 u32 notifier, notifier_error;
812 805
813 /* if ADMA is disabled, use standard ata interrupt handler */ 806 /* if ADMA is disabled, use standard ata interrupt handler */
814 if (pp->flags & NV_ADMA_ATAPI_SETUP_COMPLETE) { 807 if (pp->flags & NV_ADMA_ATAPI_SETUP_COMPLETE) {
815 u8 irq_stat = readb(host->iomap[NV_MMIO_BAR] + NV_INT_STATUS_CK804) 808 u8 irq_stat = readb(host->iomap[NV_MMIO_BAR] + NV_INT_STATUS_CK804)
@@ -970,7 +963,7 @@ static void nv_adma_irq_clear(struct ata_port *ap)
970 963
971 /* clear ADMA status */ 964 /* clear ADMA status */
972 writew(0xffff, mmio + NV_ADMA_STAT); 965 writew(0xffff, mmio + NV_ADMA_STAT);
973 966
974 /* clear notifiers - note both ports need to be written with 967 /* clear notifiers - note both ports need to be written with
975 something even though we are only clearing on one */ 968 something even though we are only clearing on one */
976 if (ap->port_no == 0) { 969 if (ap->port_no == 0) {
@@ -1613,15 +1606,6 @@ static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
1613 IRQF_SHARED, ppi[0]->sht); 1606 IRQF_SHARED, ppi[0]->sht);
1614} 1607}
1615 1608
1616static void nv_remove_one (struct pci_dev *pdev)
1617{
1618 struct ata_host *host = dev_get_drvdata(&pdev->dev);
1619 struct nv_host_priv *hpriv = host->private_data;
1620
1621 ata_pci_remove_one(pdev);
1622 kfree(hpriv);
1623}
1624
1625#ifdef CONFIG_PM 1609#ifdef CONFIG_PM
1626static int nv_pci_device_resume(struct pci_dev *pdev) 1610static int nv_pci_device_resume(struct pci_dev *pdev)
1627{ 1611{