diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-18 18:30:10 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-18 18:30:10 -0400 |
commit | 6a7f62af60fe903e74a8f8d530c2d5bfea1121bb (patch) | |
tree | 083cecadb2771c216f71b844b1dbafe39bd40b58 /drivers | |
parent | 942278ef6424c5d661ad0a8202ef60dc0f268a95 (diff) |
aec62xx: no need to disable UDMA in ->init_hwif method for ATP850UF
* No need to disable UDMA in ->init_hwif method for ATP850UF (and since we
now always tune PIO it will be disabled by ->set_pio_mode calls anyway).
* Bump driver version.
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/ide/pci/aec62xx.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/ide/pci/aec62xx.c b/drivers/ide/pci/aec62xx.c index 3f03acea5987..be0d077dbbdf 100644 --- a/drivers/ide/pci/aec62xx.c +++ b/drivers/ide/pci/aec62xx.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * linux/drivers/ide/pci/aec62xx.c Version 0.25 Aug 1, 2007 | 2 | * linux/drivers/ide/pci/aec62xx.c Version 0.26 Sep 1, 2007 |
3 | * | 3 | * |
4 | * Copyright (C) 1999-2002 Andre Hedrick <andre@linux-ide.org> | 4 | * Copyright (C) 1999-2002 Andre Hedrick <andre@linux-ide.org> |
5 | * Copyright (C) 2007 MontaVista Software, Inc. <source@mvista.com> | 5 | * Copyright (C) 2007 MontaVista Software, Inc. <source@mvista.com> |
@@ -184,8 +184,6 @@ static unsigned int __devinit init_chipset_aec62xx(struct pci_dev *dev, const ch | |||
184 | static void __devinit init_hwif_aec62xx(ide_hwif_t *hwif) | 184 | static void __devinit init_hwif_aec62xx(ide_hwif_t *hwif) |
185 | { | 185 | { |
186 | struct pci_dev *dev = hwif->pci_dev; | 186 | struct pci_dev *dev = hwif->pci_dev; |
187 | u8 reg54 = 0, mask = hwif->channel ? 0xf0 : 0x0f; | ||
188 | unsigned long flags; | ||
189 | 187 | ||
190 | hwif->set_pio_mode = &aec_set_pio_mode; | 188 | hwif->set_pio_mode = &aec_set_pio_mode; |
191 | 189 | ||
@@ -203,12 +201,10 @@ static void __devinit init_hwif_aec62xx(ide_hwif_t *hwif) | |||
203 | 201 | ||
204 | hwif->dma_lost_irq = &aec62xx_dma_lost_irq; | 202 | hwif->dma_lost_irq = &aec62xx_dma_lost_irq; |
205 | 203 | ||
206 | if (dev->device == PCI_DEVICE_ID_ARTOP_ATP850UF) { | 204 | if (dev->device == PCI_DEVICE_ID_ARTOP_ATP850UF) |
207 | spin_lock_irqsave(&ide_lock, flags); | 205 | return; |
208 | pci_read_config_byte (dev, 0x54, ®54); | 206 | |
209 | pci_write_config_byte(dev, 0x54, (reg54 & ~mask)); | 207 | if (hwif->cbl != ATA_CBL_PATA40_SHORT) { |
210 | spin_unlock_irqrestore(&ide_lock, flags); | ||
211 | } else if (hwif->cbl != ATA_CBL_PATA40_SHORT) { | ||
212 | u8 ata66 = 0, mask = hwif->channel ? 0x02 : 0x01; | 208 | u8 ata66 = 0, mask = hwif->channel ? 0x02 : 0x01; |
213 | 209 | ||
214 | pci_read_config_byte(hwif->pci_dev, 0x49, &ata66); | 210 | pci_read_config_byte(hwif->pci_dev, 0x49, &ata66); |