diff options
Diffstat (limited to 'drivers/scsi/sata_nv.c')
-rw-r--r-- | drivers/scsi/sata_nv.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/drivers/scsi/sata_nv.c b/drivers/scsi/sata_nv.c index a1d62dee3be6..1a56d6c79ddd 100644 --- a/drivers/scsi/sata_nv.c +++ b/drivers/scsi/sata_nv.c | |||
@@ -29,6 +29,8 @@ | |||
29 | * NV-specific details such as register offsets, SATA phy location, | 29 | * NV-specific details such as register offsets, SATA phy location, |
30 | * hotplug info, etc. | 30 | * hotplug info, etc. |
31 | * | 31 | * |
32 | * 0.09 | ||
33 | * - Fixed bug introduced by 0.08's MCP51 and MCP55 support. | ||
32 | * | 34 | * |
33 | * 0.08 | 35 | * 0.08 |
34 | * - Added support for MCP51 and MCP55. | 36 | * - Added support for MCP51 and MCP55. |
@@ -132,9 +134,7 @@ enum nv_host_type | |||
132 | GENERIC, | 134 | GENERIC, |
133 | NFORCE2, | 135 | NFORCE2, |
134 | NFORCE3, | 136 | NFORCE3, |
135 | CK804, | 137 | CK804 |
136 | MCP51, | ||
137 | MCP55 | ||
138 | }; | 138 | }; |
139 | 139 | ||
140 | static struct pci_device_id nv_pci_tbl[] = { | 140 | static struct pci_device_id nv_pci_tbl[] = { |
@@ -153,11 +153,13 @@ static struct pci_device_id nv_pci_tbl[] = { | |||
153 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SATA2, | 153 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SATA2, |
154 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, CK804 }, | 154 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, CK804 }, |
155 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA, | 155 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA, |
156 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, MCP51 }, | 156 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, GENERIC }, |
157 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA2, | 157 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA2, |
158 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, MCP51 }, | 158 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, GENERIC }, |
159 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA, | 159 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA, |
160 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, MCP55 }, | 160 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, GENERIC }, |
161 | { PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_NFORCE_MCP55_SATA2, | ||
162 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, GENERIC }, | ||
161 | { PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID, | 163 | { PCI_VENDOR_ID_NVIDIA, PCI_ANY_ID, |
162 | PCI_ANY_ID, PCI_ANY_ID, | 164 | PCI_ANY_ID, PCI_ANY_ID, |
163 | PCI_CLASS_STORAGE_IDE<<8, 0xffff00, GENERIC }, | 165 | PCI_CLASS_STORAGE_IDE<<8, 0xffff00, GENERIC }, |
@@ -236,7 +238,7 @@ static Scsi_Host_Template nv_sht = { | |||
236 | .ordered_flush = 1, | 238 | .ordered_flush = 1, |
237 | }; | 239 | }; |
238 | 240 | ||
239 | static struct ata_port_operations nv_ops = { | 241 | static const struct ata_port_operations nv_ops = { |
240 | .port_disable = ata_port_disable, | 242 | .port_disable = ata_port_disable, |
241 | .tf_load = ata_tf_load, | 243 | .tf_load = ata_tf_load, |
242 | .tf_read = ata_tf_read, | 244 | .tf_read = ata_tf_read, |
@@ -329,7 +331,7 @@ static u32 nv_scr_read (struct ata_port *ap, unsigned int sc_reg) | |||
329 | return 0xffffffffU; | 331 | return 0xffffffffU; |
330 | 332 | ||
331 | if (host->host_flags & NV_HOST_FLAGS_SCR_MMIO) | 333 | if (host->host_flags & NV_HOST_FLAGS_SCR_MMIO) |
332 | return readl((void*)ap->ioaddr.scr_addr + (sc_reg * 4)); | 334 | return readl((void __iomem *)ap->ioaddr.scr_addr + (sc_reg * 4)); |
333 | else | 335 | else |
334 | return inl(ap->ioaddr.scr_addr + (sc_reg * 4)); | 336 | return inl(ap->ioaddr.scr_addr + (sc_reg * 4)); |
335 | } | 337 | } |
@@ -343,7 +345,7 @@ static void nv_scr_write (struct ata_port *ap, unsigned int sc_reg, u32 val) | |||
343 | return; | 345 | return; |
344 | 346 | ||
345 | if (host->host_flags & NV_HOST_FLAGS_SCR_MMIO) | 347 | if (host->host_flags & NV_HOST_FLAGS_SCR_MMIO) |
346 | writel(val, (void*)ap->ioaddr.scr_addr + (sc_reg * 4)); | 348 | writel(val, (void __iomem *)ap->ioaddr.scr_addr + (sc_reg * 4)); |
347 | else | 349 | else |
348 | outl(val, ap->ioaddr.scr_addr + (sc_reg * 4)); | 350 | outl(val, ap->ioaddr.scr_addr + (sc_reg * 4)); |
349 | } | 351 | } |
@@ -403,7 +405,7 @@ static int nv_init_one (struct pci_dev *pdev, const struct pci_device_id *ent) | |||
403 | rc = -ENOMEM; | 405 | rc = -ENOMEM; |
404 | 406 | ||
405 | ppi = &nv_port_info; | 407 | ppi = &nv_port_info; |
406 | probe_ent = ata_pci_init_native_mode(pdev, &ppi); | 408 | probe_ent = ata_pci_init_native_mode(pdev, &ppi, ATA_PORT_PRIMARY | ATA_PORT_SECONDARY); |
407 | if (!probe_ent) | 409 | if (!probe_ent) |
408 | goto err_out_regions; | 410 | goto err_out_regions; |
409 | 411 | ||