diff options
| author | <jgarzik@pretzel.yyz.us> | 2005-06-04 00:58:52 -0400 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-06-04 00:58:52 -0400 |
| commit | 1700c80d8778cf0d024bf6cbdd1c9e9014764530 (patch) | |
| tree | 2e76ad184a07b16abcd8f09d4d198d160e762d16 | |
| parent | d3c39d14d1369c520916ff7a77b2b063e7a75557 (diff) | |
| parent | ae20ea8525a80a863f70d332cf47b71bd9f54c1f (diff) | |
Merge of /spare/repo/libata-dev branch pdc20619
| -rw-r--r-- | drivers/scsi/sata_promise.c | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/drivers/scsi/sata_promise.c b/drivers/scsi/sata_promise.c index b18c90582e67..5c1d4411457a 100644 --- a/drivers/scsi/sata_promise.c +++ b/drivers/scsi/sata_promise.c | |||
| @@ -59,6 +59,7 @@ enum { | |||
| 59 | 59 | ||
| 60 | board_2037x = 0, /* FastTrak S150 TX2plus */ | 60 | board_2037x = 0, /* FastTrak S150 TX2plus */ |
| 61 | board_20319 = 1, /* FastTrak S150 TX4 */ | 61 | board_20319 = 1, /* FastTrak S150 TX4 */ |
| 62 | board_20619 = 2, /* FastTrak TX4000 */ | ||
| 62 | 63 | ||
| 63 | PDC_HAS_PATA = (1 << 1), /* PDC20375 has PATA */ | 64 | PDC_HAS_PATA = (1 << 1), /* PDC20375 has PATA */ |
| 64 | 65 | ||
| @@ -147,6 +148,17 @@ static struct ata_port_info pdc_port_info[] = { | |||
| 147 | .udma_mask = 0x7f, /* udma0-6 ; FIXME */ | 148 | .udma_mask = 0x7f, /* udma0-6 ; FIXME */ |
| 148 | .port_ops = &pdc_ata_ops, | 149 | .port_ops = &pdc_ata_ops, |
| 149 | }, | 150 | }, |
| 151 | |||
| 152 | /* board_20619 */ | ||
| 153 | { | ||
| 154 | .sht = &pdc_ata_sht, | ||
| 155 | .host_flags = ATA_FLAG_NO_LEGACY | ATA_FLAG_SRST | | ||
| 156 | ATA_FLAG_MMIO | ATA_FLAG_SLAVE_POSS, | ||
| 157 | .pio_mask = 0x1f, /* pio0-4 */ | ||
| 158 | .mwdma_mask = 0x07, /* mwdma0-2 */ | ||
| 159 | .udma_mask = 0x7f, /* udma0-6 ; FIXME */ | ||
| 160 | .port_ops = &pdc_ata_ops, | ||
| 161 | }, | ||
| 150 | }; | 162 | }; |
| 151 | 163 | ||
| 152 | static struct pci_device_id pdc_ata_pci_tbl[] = { | 164 | static struct pci_device_id pdc_ata_pci_tbl[] = { |
| @@ -172,6 +184,9 @@ static struct pci_device_id pdc_ata_pci_tbl[] = { | |||
| 172 | { PCI_VENDOR_ID_PROMISE, 0x3d18, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | 184 | { PCI_VENDOR_ID_PROMISE, 0x3d18, PCI_ANY_ID, PCI_ANY_ID, 0, 0, |
| 173 | board_20319 }, | 185 | board_20319 }, |
| 174 | 186 | ||
| 187 | { PCI_VENDOR_ID_PROMISE, 0x6629, PCI_ANY_ID, PCI_ANY_ID, 0, 0, | ||
| 188 | board_20619 }, | ||
| 189 | |||
| 175 | { } /* terminate list */ | 190 | { } /* terminate list */ |
| 176 | }; | 191 | }; |
| 177 | 192 | ||
| @@ -636,6 +651,15 @@ static int pdc_ata_init_one (struct pci_dev *pdev, const struct pci_device_id *e | |||
| 636 | case board_2037x: | 651 | case board_2037x: |
| 637 | probe_ent->n_ports = 2; | 652 | probe_ent->n_ports = 2; |
| 638 | break; | 653 | break; |
| 654 | case board_20619: | ||
| 655 | probe_ent->n_ports = 4; | ||
| 656 | |||
| 657 | pdc_ata_setup_port(&probe_ent->port[2], base + 0x300); | ||
| 658 | pdc_ata_setup_port(&probe_ent->port[3], base + 0x380); | ||
| 659 | |||
| 660 | probe_ent->port[2].scr_addr = base + 0x600; | ||
| 661 | probe_ent->port[3].scr_addr = base + 0x700; | ||
| 662 | break; | ||
| 639 | default: | 663 | default: |
| 640 | BUG(); | 664 | BUG(); |
| 641 | break; | 665 | break; |
| @@ -676,7 +700,7 @@ static void __exit pdc_ata_exit(void) | |||
| 676 | 700 | ||
| 677 | 701 | ||
| 678 | MODULE_AUTHOR("Jeff Garzik"); | 702 | MODULE_AUTHOR("Jeff Garzik"); |
| 679 | MODULE_DESCRIPTION("Promise SATA TX2/TX4 low-level driver"); | 703 | MODULE_DESCRIPTION("Promise ATA TX2/TX4/TX4000 low-level driver"); |
| 680 | MODULE_LICENSE("GPL"); | 704 | MODULE_LICENSE("GPL"); |
| 681 | MODULE_DEVICE_TABLE(pci, pdc_ata_pci_tbl); | 705 | MODULE_DEVICE_TABLE(pci, pdc_ata_pci_tbl); |
| 682 | MODULE_VERSION(DRV_VERSION); | 706 | MODULE_VERSION(DRV_VERSION); |
