aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/pdc202xx_old.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-05-09 18:01:07 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-05-09 18:01:07 -0400
commit18137207236285989dfc0ee7f929b954199228f3 (patch)
treed55f1287ae64318190e18cb7a64ca514c76c3414 /drivers/ide/pci/pdc202xx_old.c
parentde372ecd80a42c4fb485c7232475301a18d05184 (diff)
ide: fix UDMA/MWDMA/SWDMA masks (v3)
* use 0x00 instead of 0x80 to disable ->{ultra,mwdma,swdma}_mask * add udma_mask field to ide_pci_device_t and use it to initialize ->ultra_mask in aec62xx, cmd64x, pdc202xx_{new,old} and piix drivers * fix UDMA masks to match with chipset specific *_ratemask() (alim15x3, hpt366, serverworks and siimage drivers need UDMA mask filtering method - done in the next patch) v2: * piix: fix cable detection for 82801AA_1 and 82372FB_1 [ Noticed by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ] * cmd64x: use hwif->cds->udma_mask [ Suggested by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ] * aec62xx: fix newly introduced bug - check DMA status not command register [ Noticed by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ] v3: * piix: use hwif->cds->udma_mask [ Suggested by Sergei Shtylyov <sshtylyov@ru.mvista.com>. ] Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/pdc202xx_old.c')
-rw-r--r--drivers/ide/pci/pdc202xx_old.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/ide/pci/pdc202xx_old.c b/drivers/ide/pci/pdc202xx_old.c
index a7a639fe1eaf..d7a38067fb34 100644
--- a/drivers/ide/pci/pdc202xx_old.c
+++ b/drivers/ide/pci/pdc202xx_old.c
@@ -478,7 +478,7 @@ static void __devinit init_hwif_pdc202xx(ide_hwif_t *hwif)
478 478
479 hwif->drives[0].autotune = hwif->drives[1].autotune = 1; 479 hwif->drives[0].autotune = hwif->drives[1].autotune = 1;
480 480
481 hwif->ultra_mask = 0x3f; 481 hwif->ultra_mask = hwif->cds->udma_mask;
482 hwif->mwdma_mask = 0x07; 482 hwif->mwdma_mask = 0x07;
483 hwif->swdma_mask = 0x07; 483 hwif->swdma_mask = 0x07;
484 hwif->atapi_dma = 1; 484 hwif->atapi_dma = 1;
@@ -587,6 +587,7 @@ static ide_pci_device_t pdc202xx_chipsets[] __devinitdata = {
587 .autodma = AUTODMA, 587 .autodma = AUTODMA,
588 .bootable = OFF_BOARD, 588 .bootable = OFF_BOARD,
589 .extra = 16, 589 .extra = 16,
590 .udma_mask = 0x07, /* udma0-2 */
590 },{ /* 1 */ 591 },{ /* 1 */
591 .name = "PDC20262", 592 .name = "PDC20262",
592 .init_setup = init_setup_pdc202ata4, 593 .init_setup = init_setup_pdc202ata4,
@@ -597,6 +598,7 @@ static ide_pci_device_t pdc202xx_chipsets[] __devinitdata = {
597 .autodma = AUTODMA, 598 .autodma = AUTODMA,
598 .bootable = OFF_BOARD, 599 .bootable = OFF_BOARD,
599 .extra = 48, 600 .extra = 48,
601 .udma_mask = 0x1f, /* udma0-4 */
600 },{ /* 2 */ 602 },{ /* 2 */
601 .name = "PDC20263", 603 .name = "PDC20263",
602 .init_setup = init_setup_pdc202ata4, 604 .init_setup = init_setup_pdc202ata4,
@@ -607,6 +609,7 @@ static ide_pci_device_t pdc202xx_chipsets[] __devinitdata = {
607 .autodma = AUTODMA, 609 .autodma = AUTODMA,
608 .bootable = OFF_BOARD, 610 .bootable = OFF_BOARD,
609 .extra = 48, 611 .extra = 48,
612 .udma_mask = 0x1f, /* udma0-4 */
610 },{ /* 3 */ 613 },{ /* 3 */
611 .name = "PDC20265", 614 .name = "PDC20265",
612 .init_setup = init_setup_pdc20265, 615 .init_setup = init_setup_pdc20265,
@@ -617,6 +620,7 @@ static ide_pci_device_t pdc202xx_chipsets[] __devinitdata = {
617 .autodma = AUTODMA, 620 .autodma = AUTODMA,
618 .bootable = OFF_BOARD, 621 .bootable = OFF_BOARD,
619 .extra = 48, 622 .extra = 48,
623 .udma_mask = 0x3f, /* udma0-5 */
620 },{ /* 4 */ 624 },{ /* 4 */
621 .name = "PDC20267", 625 .name = "PDC20267",
622 .init_setup = init_setup_pdc202xx, 626 .init_setup = init_setup_pdc202xx,
@@ -627,6 +631,7 @@ static ide_pci_device_t pdc202xx_chipsets[] __devinitdata = {
627 .autodma = AUTODMA, 631 .autodma = AUTODMA,
628 .bootable = OFF_BOARD, 632 .bootable = OFF_BOARD,
629 .extra = 48, 633 .extra = 48,
634 .udma_mask = 0x3f, /* udma0-5 */
630 } 635 }
631}; 636};
632 637