linux/drivers/ide
Sergei Shtylyov 1221e241e3 pdc202xx_old: don't call pdc202xx_reset() on IRQ timeout
The driver's dma_lost_irq() and dma_clear() methods call pdc202xx_reset()
which resets both channels at once -- most probably by driving RESET- on them.
Not only such reset can severely disturb concurrent operations on another
channel, it is also a clear overkill (especially in the first case) and is
completely unexpected and thus not properly handled by the IDE core in this
context (in the second case the usual SRST reset would most probably ensue
anyway though); it also causes quite arbitrary 2-second delay. Hence, use the
standard ide_dma_lost_irq() method and don't install the optional dma_clear()
method at all -- the driver should do well without this age-old cruft...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2009-06-07 15:37:04 +02:00
..
aec62xx.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
ali14xx.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
alim15x3.c alim15x3: Remove historical hacks, re-enable init_hwif for PowerPC 2009-04-30 18:38:01 +02:00
amd74xx.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
at91_ide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
atiixp.c ide: remove no longer needed IDE_HFLAG[_FORCE]_LEGACY_IRQS 2009-03-24 23:22:52 +01:00
au1xxx-ide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
buddha.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
cmd64x.c ide: set/clear drive->waiting_for_dma flag in the core code 2009-03-31 20:15:22 +02:00
cmd640.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
cs5520.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
cs5530.c ide: identify data word 53 bit 1 doesn't cover words 62 and 63 (take 3) 2009-03-31 20:15:27 +02:00
cs5535.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
cs5536.c cs5536: define dma_sff_read_status() method 2009-04-18 17:42:20 +02:00
cy82c693.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
delkin_cb.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
dtc2278.c ide: add IDE_HFLAG_DTC2278 host flag 2009-03-27 12:46:28 +01:00
falconide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
gayle.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
hpt366.c hpt366: use ATA_DMA_* constants 2009-04-18 17:42:19 +02:00
ht6560b.c ide: turn selectproc() method into dev_select() method (take 5) 2009-03-31 20:15:32 +02:00
icside.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-4drives.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-acpi.c ide: simplify 'struct ide_taskfile' 2009-04-08 14:13:02 +02:00
ide-atapi.c ide-atapi: kill unused fields and callbacks 2009-04-19 08:46:03 +09:00
ide-cd.c Merge branch 'for-linus' into for-next 2009-04-30 18:28:35 +02:00
ide-cd.h ide-cd: convert to using generic sense request 2009-04-19 07:00:42 +09:00
ide-cd_ioctl.c ide: remove IDE_AFLAG_NO_DOORLOCKING 2008-10-17 18:09:11 +02:00
ide-cd_verbose.c block: replace sizeof(rq->cmd) with BLK_MAX_CDB 2008-04-29 14:48:55 +02:00
ide-cs.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-devsets.c ide: remove ide_end_request() 2009-03-27 12:46:45 +01:00
ide-disk.c Merge branch 'for-linus' into for-next 2009-06-07 14:27:11 +02:00
ide-disk.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-disk_ioctl.c [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-disk_proc.c ide: replace IDE_TFLAG_* flags by IDE_VALID_* 2009-04-08 14:13:01 +02:00
ide-dma-sff.c ide: remove wmb() from ide-dma-sff.c and scc_pata.c 2009-04-08 14:12:49 +02:00
ide-dma.c ide-dma: don't reset request fields on dma_timeout_retry() 2009-04-21 12:16:56 +09:00
ide-eh.c ide: replace special_t typedef by IDE_SFLAG_* flags 2009-05-17 19:12:21 +02:00
ide-floppy.c ide-atapi,tape,floppy: allow ->pc_callback() to change rq->data_len 2009-04-19 08:46:02 +09:00
ide-floppy.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
ide-floppy_ioctl.c ide: decrease size of ->pc_buf field in struct ide_atapi_pc 2009-03-31 20:15:25 +02:00
ide-floppy_proc.c ide: NULL noise: drivers/ide/ide-*.c 2009-03-05 16:10:56 +01:00
ide-gd.c ide-gd: implement block device ->set_capacity method (v2) 2009-06-07 13:52:52 +02:00
ide-gd.h ide: move ->failed_pc to ide_drive_t 2009-03-27 12:46:34 +01:00
ide-generic.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-h8300.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-io-std.c ide: refactor tf_read() method 2009-04-08 14:13:03 +02:00
ide-io.c Merge branch 'for-linus' into for-next 2009-05-22 17:10:55 +02:00
ide-ioctls.c ide: don't set REQ_SOFTBARRIER 2009-04-19 07:00:41 +09:00
ide-iops.c ide: fix 40-wire cable detection for TSST SH-S202* ATAPI devices (v2) 2009-05-22 16:23:36 +02:00
ide-legacy.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-lib.c ide: improve failed opcode reporting 2009-05-22 16:23:38 +02:00
ide-park.c ide: use blk_run_queue() instead of blk_start_queueing() 2009-04-19 07:00:41 +09:00
ide-pci-generic.c ide_pci_generic: add quirk for Netcell ATA RAID 2009-05-30 20:06:54 +02:00
ide-pio-blacklist.c ide: move PIO blacklist to ide-pio-blacklist.c 2008-07-16 20:33:39 +02:00
ide-pm.c ide-pm: don't abuse rq->data 2009-04-19 07:00:43 +09:00
ide-pnp.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
ide-probe.c Merge branch 'for-linus' into for-next 2009-05-22 17:10:55 +02:00
ide-proc.c ide: replace IDE_TFLAG_* flags by IDE_VALID_* 2009-04-08 14:13:01 +02:00
ide-scan-pci.c ide: replace remaining __FUNCTION__ occurrences 2008-04-26 22:25:20 +02:00
ide-sysfs.c ide: move sysfs support to ide-sysfs.c 2009-01-02 16:12:48 +01:00
ide-tape.c ide-tape: fix debug call 2009-05-17 17:22:53 +02:00
ide-taskfile.c ide: replace special_t typedef by IDE_SFLAG_* flags 2009-05-17 19:12:21 +02:00
ide-timings.c ide: add support for CFA specified transfer modes (take 3) 2009-03-31 20:15:28 +02:00
ide-xfer-mode.c ide: add support for CFA specified transfer modes (take 3) 2009-03-31 20:15:28 +02:00
ide.c ide: preserve Host Protected Area by default (v2) 2009-06-07 13:52:52 +02:00
ide_platform.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
it821x.c ide: add ->dma_clear method and remove ->dma_timeout one 2009-03-31 20:15:19 +02:00
it8172.c Resurrect IT8172 IDE controller driver 2009-01-06 17:21:01 +01:00
it8213.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
jmicron.c ide: Switch to a common address 2008-11-02 21:40:08 +01:00
Kconfig ide: be able to build pmac driver without IDE built-in 2009-03-31 20:15:34 +02:00
macide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
Makefile ide: merge ide_arm and ide_generic host drivers 2009-03-31 20:15:24 +02:00
ns87415.c ide: refactor tf_read() method 2009-04-08 14:13:03 +02:00
opti621.c ide: remove useless subdirs from drivers/ide/ 2008-10-21 20:57:23 +02:00
palm_bk3710.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
pdc202xx_new.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
pdc202xx_old.c pdc202xx_old: don't call pdc202xx_reset() on IRQ timeout 2009-06-07 15:37:04 +02:00
piix.c piix: The Sony TZ90 needs the cable type hardcoding 2009-05-16 19:03:36 +02:00
pmac.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
q40ide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
qd65xx.c ide: turn selectproc() method into dev_select() method (take 5) 2009-03-31 20:15:32 +02:00
qd65xx.h Fix my email address in qd65xx.[ch]/pata_qdi.c 2009-02-03 16:53:56 -08:00
rapide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
rz1000.c rz1000: apply chipset quirks early (v2) 2008-12-29 20:27:33 +01:00
sc1200.c ide: identify data word 53 bit 1 doesn't cover words 62 and 63 (take 3) 2009-03-31 20:15:27 +02:00
scc_pata.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
serverworks.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
setup-pci.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
sgiioc4.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
siimage.c ide: replace special_t typedef by IDE_SFLAG_* flags 2009-05-17 19:12:21 +02:00
sis5513.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
sl82c105.c ide: add support for CFA specified transfer modes (take 3) 2009-03-31 20:15:28 +02:00
slc90e66.c ide: remove no longer needed IDE_HFLAG[_FORCE]_LEGACY_IRQS 2009-03-24 23:22:52 +01:00
tc86c001.c ide: add ->dma_clear method and remove ->dma_timeout one 2009-03-31 20:15:19 +02:00
triflex.c ide: remove HWIF() macro 2009-01-06 17:20:52 +01:00
trm290.c ide: turn selectproc() method into dev_select() method (take 5) 2009-03-31 20:15:32 +02:00
tx4938ide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
tx4939ide.c ide: remove hw_regs_t typedef 2009-05-17 19:12:25 +02:00
umc8672.c ide: merge ide_hwgroup_t with ide_hwif_t (v2) 2009-01-06 17:20:50 +01:00
via82cxxx.c via82cxxx: Add VIA VX855 PCI Device ID 2009-05-22 16:23:39 +02:00