linux/drivers/ide
Jonas Stare 8266105b15 ide: skip ide_wait_not_busy() on noprobe-disks
There is a problem in some hardware where the kernel will stall for
35 seconds waiting for disks that don't exist. This patch will skip
waiting for the BSY-bit on IDE drives to go away if you set "hdx=noprobe"
as a kernel option and the disk is not marked as 'present' (like when
you set the geometry by hand).

If no noprobe-option is set the code will work (more or less) as the
original but if set the code will skip the ide_wait_not_busy() for
that drive. Even if there would be a drive there and it is still busy
afterwards it should not matter since it isn't probed for later.

The code also honors the MAX_DRIVES variable instead of assuming that
there will be two harddrives on the bus.

Bart: minor cleanups

Signed-off-by: Jonas Stare <jonas.stare@purplescout.se>
CC: Andrew Morton <akpm@linux-foundation.org>,
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
2007-11-27 21:35:53 +01:00
..
arm ide/arm/icside: fallout from commit 86f3a492bb 2007-10-27 22:18:11 -07:00
cris ide: don't BUG() on unsupported transfer modes 2007-11-13 22:09:15 +01:00
h8300 icside: use ec->dma directly 2007-10-20 00:32:32 +02:00
legacy Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
mips [SG] Update drivers to use sg helpers 2007-10-22 21:19:53 +02:00
pci siimage: remove resetproc() method 2007-11-27 21:35:53 +01:00
ppc ide-pmac: skip conservative PIO "downgrade" 2007-11-13 22:09:15 +01:00
Kconfig ide: BLK_DEV_IDECD help: remove outdated note 2007-11-13 22:09:14 +01:00
Makefile ide: make /proc/ide/ optional 2007-05-10 00:01:09 +02:00
ide-acpi.c ide: fix ->data_phase in taskfile_load_raw() 2007-10-20 00:32:37 +02:00
ide-cd.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
ide-cd.h ide-cd: replace C code with call to ARRAY_SIZE() macro 2007-07-09 23:17:57 +02:00
ide-disk.c ide-disk: add get_smart_data() helper 2007-10-20 00:32:37 +02:00
ide-dma.c ide: fix IDE_HFLAG_NO_ATAPI_DMA handling in config_drive_for_dma() 2007-11-05 21:42:30 +01:00
ide-floppy.c Fixup rq_for_each_segment() indentation 2007-10-10 09:25:56 +02:00
ide-generic.c ide: add ide_proc_register_port() 2007-05-10 00:01:11 +02:00
ide-io.c ide: use drive->select.all for REQ_TYPE_ATA_TASK in execute_drive_cmd() 2007-11-13 22:09:15 +01:00
ide-iops.c ide: don't set PIO mode on pre-EIDE drives 2007-11-27 21:35:52 +01:00
ide-lib.c ide: add missing HOB bit clearing to ide_dump_ata_status() 2007-11-13 22:09:15 +01:00
ide-pnp.c icside: use ec->dma directly 2007-10-20 00:32:32 +02:00
ide-probe.c ide: skip ide_wait_not_busy() on noprobe-disks 2007-11-27 21:35:53 +01:00
ide-proc.c ide: add ide_device_add() 2007-10-20 00:32:31 +02:00
ide-tape.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2007-10-19 20:36:17 -07:00
ide-taskfile.c ide: add missing #ifdef/#endif CONFIG_IDE_TASK_IOCTL 2007-11-05 21:42:27 +01:00
ide-timing.h ide: remove ide_find_best_pio_mode() 2007-07-20 01:11:58 +02:00
ide.c ide: remove write-only hwif->hw 2007-10-20 00:32:33 +02:00
setup-pci.c ide: remove stale/incorrect comment from setup-pci.c 2007-11-13 22:09:16 +01:00