linux/drivers/ide
Bartlomiej Zolnierkiewicz a08915ba59 ide-cd: use scatterlists for PIO transfers (fs requests)
* Export ide_pio_bytes().

* Add ->last_xfer_len field to struct ide_cmd.

* Add ide_cd_error_cmd() helper to ide-cd.

* Convert ide-cd to use scatterlists also for PIO transfers (fs requests
  only for now) and get rid of partial completions (except when the error
  happens -- which is still subject to change later because looking at
  ATAPI spec it seems that the device is free to error the whole transfer
  with setting the Error bit only on the last transfer chunk).

* Update ide_cd_{prepare_rw,restore_request,do_request}() accordingly.

* Inline ide_cd_restore_request() into cdrom_start_rw().

Cc: Borislav Petkov <petkovbb@gmail.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2009-03-31 20:15:13 +02:00
..
aec62xx.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
ali14xx.c
alim15x3.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
amd74xx.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
at91_ide.c at91_ide: fix ->ftf_flags handling 2009-03-31 20:14:57 +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: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
buddha.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
cmd64x.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
cmd640.c
cs5520.c ide: remove pciirq argument from ide_pci_setup_ports() 2009-03-24 23:22:53 +01:00
cs5530.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
cs5535.c
cs5536.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
cy82c693.c
delkin_cb.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
dtc2278.c ide: add IDE_HFLAG_DTC2278 host flag 2009-03-27 12:46:28 +01:00
falconide.c ide: pass command instead of request to ide_pio_datablock() 2009-03-27 12:46:38 +01:00
gayle.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
hpt366.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
ht6560b.c
icside.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
ide-4drives.c ide: add IDE_HFLAG_4DRIVES host flag 2009-03-27 12:46:28 +01:00
ide-acpi.c ide: remove ide_task_t typedef 2009-03-27 12:46:37 +01:00
ide-atapi.c ide-atapi: start DMA after issuing a packet command 2009-03-31 20:14:58 +02:00
ide-cd.c ide-cd: use scatterlists for PIO transfers (fs requests) 2009-03-31 20:15:13 +02:00
ide-cd.h ide-cd: use ide_drive_t's rq in cdrom_queue_request_sense 2009-03-27 12:46:24 +01:00
ide-cd_ioctl.c
ide-cd_verbose.c
ide-cs.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
ide-devsets.c ide: remove ide_end_request() 2009-03-27 12:46:45 +01:00
ide-disk.c ide: keep track of number of bytes instead of sectors in struct ide_cmd 2009-03-27 12:46:47 +01:00
ide-disk.h
ide-disk_ioctl.c
ide-disk_proc.c ide: use ata_tf_protocols enums 2009-03-27 12:46:39 +01:00
ide-dma-sff.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
ide-dma.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
ide-eh.c ide: set hwif->expiry prior to calling [__]ide_set_handler() 2009-03-27 12:46:46 +01:00
ide-floppy.c ide: keep track of number of bytes instead of sectors in struct ide_cmd 2009-03-27 12:46:47 +01:00
ide-floppy.h
ide-floppy_ioctl.c
ide-floppy_proc.c
ide-gd.c ide: remove ->end_request method 2009-03-27 12:46:36 +01:00
ide-gd.h ide: move ->failed_pc to ide_drive_t 2009-03-27 12:46:34 +01:00
ide-generic.c ide-generic: use struct ide_port_info 2009-03-27 12:46:17 +01:00
ide-h8300.c ide: pass command instead of request to ide_pio_datablock() 2009-03-27 12:46:38 +01:00
ide-io-std.c ide: pass command instead of request to ide_pio_datablock() 2009-03-27 12:46:38 +01:00
ide-io.c ide: Fix code dealing with sleeping devices in do_ide_request() 2009-03-31 20:14:56 +02:00
ide-ioctls.c ide: use ata_tf_protocols enums 2009-03-27 12:46:39 +01:00
ide-iops.c ide: remove ide_execute_pkt_cmd() (v2) 2009-03-27 12:46:47 +01:00
ide-legacy.c
ide-lib.c ide: remove ide_task_t typedef 2009-03-27 12:46:37 +01:00
ide-park.c ide: use ide_complete_cmd() for REQ_UNPARK_HEADS 2009-03-27 12:46:42 +01:00
ide-pci-generic.c ide: remove no longer needed IDE_HFLAG[_FORCE]_LEGACY_IRQS 2009-03-24 23:22:52 +01:00
ide-pio-blacklist.c
ide-pm.c ide: use ata_tf_protocols enums 2009-03-27 12:46:39 +01:00
ide-pnp.c ide-pnp: use struct ide_port_info 2009-03-27 12:46:18 +01:00
ide-probe.c ide: remove ide_task_t typedef 2009-03-27 12:46:37 +01:00
ide-proc.c ide: remove ide_task_t typedef 2009-03-27 12:46:37 +01:00
ide-scan-pci.c
ide-sysfs.c
ide-tape.c ide: use do_rw_taskfile() for ATA_CMD_PACKET commands 2009-03-27 12:46:46 +01:00
ide-taskfile.c ide-cd: use scatterlists for PIO transfers (fs requests) 2009-03-31 20:15:13 +02:00
ide-timings.c
ide-xfer-mode.c ide: move xfer mode tuning code to ide-xfer-mode.c 2009-03-24 23:22:46 +01:00
ide.c ide: move device settings code to ide-devsets.c 2009-03-24 23:22:44 +01:00
ide_arm.c ide_arm: use struct ide_port_info 2009-03-27 12:46:17 +01:00
ide_platform.c
it821x.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
it8172.c
it8213.c
jmicron.c
Kconfig ide: move xfer mode tuning code to ide-xfer-mode.c 2009-03-24 23:22:46 +01:00
macide.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
Makefile ide: move error handling code to ide-eh.c (v2) 2009-03-24 23:22:47 +01:00
ns87415.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
opti621.c
palm_bk3710.c IDE: palm_bk3710: use ioremap instead of arch-specific IO_ADDRESS() 2009-03-27 12:46:23 +01:00
pdc202xx_new.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
pdc202xx_old.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
piix.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
pmac.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
q40ide.c ide: pass command instead of request to ide_pio_datablock() 2009-03-27 12:46:38 +01:00
qd65xx.c
qd65xx.h
rapide.c
rz1000.c
sc1200.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
scc_pata.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
serverworks.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
setup-pci.c ide: allow host drivers to specify IRQ flags 2009-03-27 12:46:27 +01:00
sgiioc4.c ide: pass command to ide_map_sg() 2009-03-27 12:46:46 +01:00
siimage.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
sis5513.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00
sl82c105.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01: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_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
triflex.c
trm290.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
tx4938ide.c ide: pass command instead of request to ide_pio_datablock() 2009-03-27 12:46:38 +01:00
tx4939ide.c ide: add ->dma_timer_expiry method and remove ->dma_exec_cmd one (v2) 2009-03-27 12:46:47 +01:00
umc8672.c
via82cxxx.c ide: fix ->init_chipset method to return 'int' value 2009-03-24 23:22:53 +01:00