aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sata_promise.c
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2006-01-17 10:29:06 -0500
committerJeff Garzik <jgarzik@pobox.com>2006-01-17 10:29:06 -0500
commitea9b395fe20ac74be788f415af2622ac8f0c35c7 (patch)
treed1653e1a4cbe360aa7132ea4e29ab92a02038224 /drivers/scsi/sata_promise.c
parent61420e147a706ee7c7a902008045547fb2a2a330 (diff)
parent1bc4ccfff8675adc3d96f91245eb7e2dc0043ca9 (diff)
Merge branch 'upstream'
Diffstat (limited to 'drivers/scsi/sata_promise.c')
-rw-r--r--drivers/scsi/sata_promise.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/scsi/sata_promise.c b/drivers/scsi/sata_promise.c
index e35838043b56..02b14a870f52 100644
--- a/drivers/scsi/sata_promise.c
+++ b/drivers/scsi/sata_promise.c
@@ -66,6 +66,7 @@ enum {
66 board_2037x = 0, /* FastTrak S150 TX2plus */ 66 board_2037x = 0, /* FastTrak S150 TX2plus */
67 board_20319 = 1, /* FastTrak S150 TX4 */ 67 board_20319 = 1, /* FastTrak S150 TX4 */
68 board_20619 = 2, /* FastTrak TX4000 */ 68 board_20619 = 2, /* FastTrak TX4000 */
69 board_20771 = 3, /* FastTrak TX2300 */
69 70
70 PDC_HAS_PATA = (1 << 1), /* PDC20375 has PATA */ 71 PDC_HAS_PATA = (1 << 1), /* PDC20375 has PATA */
71 72
@@ -115,7 +116,6 @@ static struct scsi_host_template pdc_ata_sht = {
115 .dma_boundary = ATA_DMA_BOUNDARY, 116 .dma_boundary = ATA_DMA_BOUNDARY,
116 .slave_configure = ata_scsi_slave_config, 117 .slave_configure = ata_scsi_slave_config,
117 .bios_param = ata_std_bios_param, 118 .bios_param = ata_std_bios_param,
118 .ordered_flush = 1,
119}; 119};
120 120
121static const struct ata_port_operations pdc_sata_ops = { 121static const struct ata_port_operations pdc_sata_ops = {
@@ -192,6 +192,16 @@ static const struct ata_port_info pdc_port_info[] = {
192 .udma_mask = 0x7f, /* udma0-6 ; FIXME */ 192 .udma_mask = 0x7f, /* udma0-6 ; FIXME */
193 .port_ops = &pdc_pata_ops, 193 .port_ops = &pdc_pata_ops,
194 }, 194 },
195
196 /* board_20771 */
197 {
198 .sht = &pdc_ata_sht,
199 .host_flags = PDC_COMMON_FLAGS | ATA_FLAG_SATA,
200 .pio_mask = 0x1f, /* pio0-4 */
201 .mwdma_mask = 0x07, /* mwdma0-2 */
202 .udma_mask = 0x7f, /* udma0-6 ; FIXME */
203 .port_ops = &pdc_sata_ops,
204 },
195}; 205};
196 206
197static const struct pci_device_id pdc_ata_pci_tbl[] = { 207static const struct pci_device_id pdc_ata_pci_tbl[] = {
@@ -228,6 +238,8 @@ static const struct pci_device_id pdc_ata_pci_tbl[] = {
228 { PCI_VENDOR_ID_PROMISE, 0x6629, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 238 { PCI_VENDOR_ID_PROMISE, 0x6629, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
229 board_20619 }, 239 board_20619 },
230 240
241 { PCI_VENDOR_ID_PROMISE, 0x3570, PCI_ANY_ID, PCI_ANY_ID, 0, 0,
242 board_20771 },
231 { } /* terminate list */ 243 { } /* terminate list */
232}; 244};
233 245
@@ -708,6 +720,9 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e
708 case board_2037x: 720 case board_2037x:
709 probe_ent->n_ports = 2; 721 probe_ent->n_ports = 2;
710 break; 722 break;
723 case board_20771:
724 probe_ent->n_ports = 2;
725 break;
711 case board_20619: 726 case board_20619:
712 probe_ent->n_ports = 4; 727 probe_ent->n_ports = 4;
713 728