Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit df87f344 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 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
parents 385c51d6 032665a2
Loading
Loading
Loading
Loading
+9 −0
Original line number Original line Diff line number Diff line
@@ -1046,6 +1046,15 @@ static void ide_port_init_devices(ide_hwif_t *hwif)
		if (port_ops && port_ops->init_dev)
		if (port_ops && port_ops->init_dev)
			port_ops->init_dev(drive);
			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,
static void ide_init_port(ide_hwif_t *hwif, unsigned int port,
+6 −4
Original line number Original line Diff line number Diff line
@@ -2,7 +2,7 @@
 * Copyright (C) 1999-2000	Andre Hedrick <andre@linux-ide.org>
 * Copyright (C) 1999-2000	Andre Hedrick <andre@linux-ide.org>
 * Copyright (C) 2002		Lionel Bouton <Lionel.Bouton@inet6.fr>, Maintainer
 * Copyright (C) 2002		Lionel Bouton <Lionel.Bouton@inet6.fr>, Maintainer
 * Copyright (C) 2003		Vojtech Pavlik <vojtech@suse.cz>
 * Copyright (C) 2003		Vojtech Pavlik <vojtech@suse.cz>
 * 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
 * May be copied or modified under the terms of the GNU General Public License
 *
 *
@@ -281,11 +281,13 @@ static void config_drive_art_rwp(ide_drive_t *drive)


	pci_read_config_byte(dev, 0x4b, &reg4bh);
	pci_read_config_byte(dev, 0x4b, &reg4bh);


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

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


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


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