Skip to content

Commit

Permalink
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6
Browse files Browse the repository at this point in the history
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6:
  Revert "Revert "ide: try to use PIO Mode 0 during probe if possible""
  sis5513: fix PIO setup for ATAPI devices
  • Loading branch information
torvalds committed Oct 8, 2009
2 parents 385c51d + 032665a commit df87f34
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 4 deletions.
9 changes: 9 additions & 0 deletions drivers/ide/ide-probe.c
Original file line number Diff line number Diff line change
Expand Up @@ -1046,6 +1046,15 @@ static void ide_port_init_devices(ide_hwif_t *hwif)
if (port_ops && port_ops->init_dev)
port_ops->init_dev(drive);
}

ide_port_for_each_dev(i, drive, hwif) {
/*
* default to PIO Mode 0 before we figure out
* the most suited mode for the attached device
*/
if (port_ops && port_ops->set_pio_mode)
port_ops->set_pio_mode(drive, 0);
}
}

static void ide_init_port(ide_hwif_t *hwif, unsigned int port,
Expand Down
10 changes: 6 additions & 4 deletions drivers/ide/sis5513.c
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
* Copyright (C) 1999-2000 Andre Hedrick <[email protected]>
* Copyright (C) 2002 Lionel Bouton <[email protected]>, Maintainer
* Copyright (C) 2003 Vojtech Pavlik <[email protected]>
* Copyright (C) 2007 Bartlomiej Zolnierkiewicz
* Copyright (C) 2007-2009 Bartlomiej Zolnierkiewicz
*
* May be copied or modified under the terms of the GNU General Public License
*
Expand Down Expand Up @@ -281,11 +281,13 @@ static void config_drive_art_rwp(ide_drive_t *drive)

pci_read_config_byte(dev, 0x4b, &reg4bh);

rw_prefetch = reg4bh & ~(0x11 << drive->dn);

if (drive->media == ide_disk)
rw_prefetch = 0x11 << drive->dn;
rw_prefetch |= 0x11 << drive->dn;

if ((reg4bh & (0x11 << drive->dn)) != rw_prefetch)
pci_write_config_byte(dev, 0x4b, reg4bh|rw_prefetch);
if (reg4bh != rw_prefetch)
pci_write_config_byte(dev, 0x4b, rw_prefetch);
}

static void sis_set_pio_mode(ide_drive_t *drive, const u8 pio)
Expand Down

0 comments on commit df87f34

Please sign in to comment.