diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-01 17:09:30 -0500 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-02-01 17:09:30 -0500 |
commit | 8ac2b42a45896641ed292deaf038a1d2703d85a6 (patch) | |
tree | fb6c193f4a5f454c36b23c4e972fbe57bb1da6b1 /drivers/ide/pci/serverworks.c | |
parent | 993da8f9ea7e00d21af49d0e14a131183288bcf8 (diff) |
ide: add IDE_HFLAG_CLEAR_SIMPLEX host flag
* Rename 'simplex_stat' variable to 'dma_stat' in ide_get_or_set_dma_base().
* Factor out code for forcing host out of "simplex" mode from
ide_get_or_set_dma_base() to ide_pci_clear_simplex() helper.
* Add IDE_HFLAG_CLEAR_SIMPLEX host flag and set it in alim15x3 (for M5229),
amd74xx (for AMD 7409), cmd64x (for CMD643), generic (for Netcell) and
serverworks (for CSB5) host drivers.
* Make ide_get_or_set_dma_base() test for IDE_HFLAG_CLEAR_SIMPLEX host flag
instead of checking dev->device (BTW the code was buggy because it didn't
check for dev->vendor, luckily none of these PCI Device IDs was used by
some other vendor for PCI IDE controller).
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/serverworks.c')
-rw-r--r-- | drivers/ide/pci/serverworks.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/ide/pci/serverworks.c b/drivers/ide/pci/serverworks.c index 877c09bf4829..bf01c387739e 100644 --- a/drivers/ide/pci/serverworks.c +++ b/drivers/ide/pci/serverworks.c | |||
@@ -418,7 +418,9 @@ static int __devinit svwks_init_one(struct pci_dev *dev, const struct pci_device | |||
418 | 418 | ||
419 | d = serverworks_chipsets[idx]; | 419 | d = serverworks_chipsets[idx]; |
420 | 420 | ||
421 | if (idx == 2 || idx == 3) { | 421 | if (idx == 1) |
422 | d.host_flags |= IDE_HFLAG_CLEAR_SIMPLEX; | ||
423 | else if (idx == 2 || idx == 3) { | ||
422 | if ((PCI_FUNC(dev->devfn) & 1) == 0) { | 424 | if ((PCI_FUNC(dev->devfn) & 1) == 0) { |
423 | if (pci_resource_start(dev, 0) != 0x01f1) | 425 | if (pci_resource_start(dev, 0) != 0x01f1) |
424 | d.host_flags &= ~IDE_HFLAG_BOOTABLE; | 426 | d.host_flags &= ~IDE_HFLAG_BOOTABLE; |