From 5c4b24be8799f03a3aacae5d00bd384bbcdd32e5 Mon Sep 17 00:00:00 2001 From: Bartlomiej Zolnierkiewicz Date: Sat, 2 Feb 2008 19:56:30 +0100 Subject: [PATCH] --- yaml --- r: 82523 b: refs/heads/master c: bf77c5317168eb73894bcc9a455429c4589a179d h: refs/heads/master i: 82521: 1b898976b71284e9cd23b9d8b4893e0dc56c55f9 82519: bad9a73d1be44c3f73cf84b8612dadcccf31a76f v: v3 --- [refs] | 2 +- trunk/drivers/ide/setup-pci.c | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index b075be084063..9dfe87f2c271 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d4e6d4eb164bc0a110e2e0ba031e713e6226a27a +refs/heads/master: bf77c5317168eb73894bcc9a455429c4589a179d diff --git a/trunk/drivers/ide/setup-pci.c b/trunk/drivers/ide/setup-pci.c index 05db429a7da8..acef85d1c581 100644 --- a/trunk/drivers/ide/setup-pci.c +++ b/trunk/drivers/ide/setup-pci.c @@ -558,10 +558,15 @@ void ide_pci_setup_ports(struct pci_dev *dev, const struct ide_port_info *d, int hwif->drives[1].unmask = 1; } - if (hwif->dma_base) { - hwif->swdma_mask = d->swdma_mask; - hwif->mwdma_mask = d->mwdma_mask; - hwif->ultra_mask = d->udma_mask; + hwif->swdma_mask = d->swdma_mask; + hwif->mwdma_mask = d->mwdma_mask; + hwif->ultra_mask = d->udma_mask; + + if ((d->host_flags && IDE_HFLAG_NO_DMA) == 0 && + hwif->dma_base == 0) { + hwif->swdma_mask = 0; + hwif->mwdma_mask = 0; + hwif->ultra_mask = 0; } hwif->drives[0].autotune = 1;