aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/it821x.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/pci/it821x.c')
-rw-r--r--drivers/ide/pci/it821x.c22
1 files changed, 5 insertions, 17 deletions
diff --git a/drivers/ide/pci/it821x.c b/drivers/ide/pci/it821x.c
index 752a142ca89b..f3391a8698ac 100644
--- a/drivers/ide/pci/it821x.c
+++ b/drivers/ide/pci/it821x.c
@@ -537,10 +537,11 @@ static void __devinit init_hwif_it821x(ide_hwif_t *hwif)
537 struct it821x_dev *idev = kzalloc(sizeof(struct it821x_dev), GFP_KERNEL); 537 struct it821x_dev *idev = kzalloc(sizeof(struct it821x_dev), GFP_KERNEL);
538 u8 conf; 538 u8 conf;
539 539
540 if(idev == NULL) { 540 if (idev == NULL) {
541 printk(KERN_ERR "it821x: out of memory, falling back to legacy behaviour.\n"); 541 printk(KERN_ERR "it821x: out of memory, falling back to legacy behaviour.\n");
542 goto fallback; 542 return;
543 } 543 }
544
544 ide_set_hwifdata(hwif, idev); 545 ide_set_hwifdata(hwif, idev);
545 546
546 hwif->atapi_dma = 1; 547 hwif->atapi_dma = 1;
@@ -589,27 +590,14 @@ static void __devinit init_hwif_it821x(ide_hwif_t *hwif)
589 hwif->drives[0].autotune = 1; 590 hwif->drives[0].autotune = 1;
590 hwif->drives[1].autotune = 1; 591 hwif->drives[1].autotune = 1;
591 592
592 if (!hwif->dma_base) 593 if (hwif->dma_base == 0)
593 goto fallback; 594 return;
594 595
595 hwif->ultra_mask = 0x7f; 596 hwif->ultra_mask = 0x7f;
596 hwif->mwdma_mask = 0x07; 597 hwif->mwdma_mask = 0x07;
597 598
598 if (hwif->cbl != ATA_CBL_PATA40_SHORT) 599 if (hwif->cbl != ATA_CBL_PATA40_SHORT)
599 hwif->cbl = ata66_it821x(hwif); 600 hwif->cbl = ata66_it821x(hwif);
600
601 /*
602 * The BIOS often doesn't set up DMA on this controller
603 * so we always do it.
604 */
605
606 hwif->autodma = 1;
607 hwif->drives[0].autodma = hwif->autodma;
608 hwif->drives[1].autodma = hwif->autodma;
609 return;
610fallback:
611 hwif->autodma = 0;
612 return;
613} 601}
614 602
615static void __devinit it8212_disable_raid(struct pci_dev *dev) 603static void __devinit it8212_disable_raid(struct pci_dev *dev)