mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-09-20 18:15:29 +00:00
Use ide_config_drive_speed() instead of pmac_ide_do_setfeature() and remove
the latter, also ide-iops.c::__ide_wait_stat() could be static again.
Since for IDE PMAC host driver IDE_CONTROL_REG is always true, device's
->quirk_list is always zero and ->ide_dma_host_{on,off} are nops than
the only changes in behavior are:
* if PIO mode is set then ->dma_off_queitly is called to disable DMA
* if setting transfer mode fails ide_dump_status() is called to dump status
v2:
* IDE PMAC controllers allow separate PIO and DMA timings and PPC userland
depends on this fact, and calls "hdparm -p" without calling "hdparm -d".
Therefore to compensate for DMA being disabled by ide_config_drive_speed()
for PIO modes:
- add IDE_HFLAG_SET_PIO_MODE_KEEP_DMA flag and set it in PMAC host driver
- add handling of the new flag to ide-io.c::do_special()
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
|
History
|
|
|---|---|---|
| .. | ||
| arm | ||
| cris | ||
| h8300 | ||
| legacy | ||
| mips | ||
| pci | ||
| ppc | ||
| ide-acpi.c | ||
| ide-cd.c | ||
| ide-cd.h | ||
| ide-disk.c | ||
| ide-dma.c | ||
| ide-floppy.c | ||
| ide-generic.c | ||
| ide-io.c | ||
| ide-iops.c | ||
| ide-lib.c | ||
| ide-pnp.c | ||
| ide-probe.c | ||
| ide-proc.c | ||
| ide-tape.c | ||
| ide-taskfile.c | ||
| ide-timing.h | ||
| ide.c | ||
| Kconfig | ||
| Makefile | ||
| setup-pci.c | ||