Skip to content

Commit

Permalink
serverworks: fix DMA
Browse files Browse the repository at this point in the history
The driver used to depend on BIOS settings for deciding whether it is OK
to use DMA.  However it seems that BIOS doesn't always handle all cases
correctly so just let IDE core to decide about this.  It should be a safe
thing to do now, after the driver went through heavy bugfixing.

Thanks for bugreport and testing the patch goes out to Sven Niedner.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
  • Loading branch information
Bartlomiej Zolnierkiewicz committed Jul 19, 2007
1 parent 1880a8d commit 1c164ac
Showing 1 changed file with 2 additions and 6 deletions.
8 changes: 2 additions & 6 deletions drivers/ide/pci/serverworks.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* linux/drivers/ide/pci/serverworks.c Version 0.21 Jun 16 2007
* linux/drivers/ide/pci/serverworks.c Version 0.22 Jun 27 2007
*
* Copyright (C) 1998-2000 Michel Aubry
* Copyright (C) 1998-2000 Andrzej Krzysztofowicz
Expand Down Expand Up @@ -387,8 +387,6 @@ static u8 __devinit ata66_svwks(ide_hwif_t *hwif)

static void __devinit init_hwif_svwks (ide_hwif_t *hwif)
{
u8 dma_stat = 0;

if (!hwif->irq)
hwif->irq = hwif->channel ? 15 : 14;

Expand Down Expand Up @@ -419,9 +417,7 @@ static void __devinit init_hwif_svwks (ide_hwif_t *hwif)
if (!noautodma)
hwif->autodma = 1;

dma_stat = inb(hwif->dma_status);
hwif->drives[0].autodma = (dma_stat & 0x20);
hwif->drives[1].autodma = (dma_stat & 0x40);
hwif->drives[0].autodma = hwif->drives[1].autodma = 1;
}

static int __devinit init_setup_svwks (struct pci_dev *dev, ide_pci_device_t *d)
Expand Down

0 comments on commit 1c164ac

Please sign in to comment.