[PATCH] libata: ACPI and _GTF support

_GTF is an acpi method that is used to reinitialize the drive.  It returns
a task file containing ata commands that are sent back to the drive to restore
it to boot up defaults.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
(cherry picked from 9c69cab24b51a89664f4c0dfaf8a436d32117624 commit)
This commit is contained in:
Kristen Carlson Accardi
2006-09-28 11:29:01 -07:00
committed by Jeff Garzik
parent 8a03d9a498
commit 11ef697b37
7 changed files with 643 additions and 1 deletions

View File

@@ -93,6 +93,10 @@ static int ata_probe_timeout = ATA_TMOUT_INTERNAL / HZ;
module_param(ata_probe_timeout, int, 0444);
MODULE_PARM_DESC(ata_probe_timeout, "Set ATA probing timeout (seconds)");
int noacpi;
module_param(noacpi, int, 0444);
MODULE_PARM_DESC(noacpi, "Disables the use of ACPI in suspend/resume when set");
MODULE_AUTHOR("Jeff Garzik");
MODULE_DESCRIPTION("Library module for ATA devices");
MODULE_LICENSE("GPL");
@@ -1778,6 +1782,9 @@ int ata_bus_probe(struct ata_port *ap)
/* reset and determine device classes */
ap->ops->phy_reset(ap);
/* retrieve and execute the ATA task file of _GTF */
ata_acpi_exec_tfs(ap);
for (i = 0; i < ATA_MAX_DEVICES; i++) {
dev = &ap->device[i];