Revert "ide: try to use PIO Mode 0 during probe if possible"
authorDavid S. Miller <davem@davemloft.net>
Fri, 6 Nov 2009 12:52:50 +0000 (04:52 -0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 6 Nov 2009 12:52:50 +0000 (04:52 -0800)
commit0fb18c4777ff424c1db694af98443a201fa4fc30
tree21451127e368e53ee95557d5cf35f5f012f8ec52
parent9bd7496f5dd488e109e91d9d5743915fb4dfbfde
Revert "ide: try to use PIO Mode 0 during probe if possible"

This reverts commit 6029336426a2b43e4bc6f4a84be8789a047d139e.

Ok, we really do need to revert this, even with Bart's sis5513.c
fix in there.

The problem is that several driver's ->set_pio_mode() method
depends upon the drive->media type being set properly.  Most
of them use this to enable prefetching, which can only be done
for disk media.

But the commit being reverted here calls ->set_pio_mode() before
it's setup.  Actually it considers everything disk because that
is the default media type set by ide_port_init_devices_data().

The set of drivers that depend upon the media type in their
->set_pio_method() are:

drivers/ide/alim15x3.c
drivers/ide/it8172.c
drivers/ide/it8213.c
drivers/ide/pdc202xx_old.c
drivers/ide/piix.c
drivers/ide/qd65xx.c
drivers/ide/sis5513.c
drivers/ide/slc90e66.c

And it is possible that we could fix this by guarding the prefetching
and other media dependent setting changes with a test on
IDE_PFLAG_PROBING in hwif->port_flags, that's simply too risky for
2.6.32-rcX and -stable.

Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/ide/ide-probe.c