summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristen Accardi <kristen.c.accardi@intel.com>2007-03-09 18:15:33 -0500
committerLen Brown <len.brown@intel.com>2007-03-09 18:15:33 -0500
commitdf33c77e3981e71afc8727ee5c432ba1a1bba68c (patch)
tree414f7c4392a14b70f114c2d10dcd6f1477dd61a0
parent908e0a8a265fe8057604a9a30aec3f0be7bb5ebb (diff)
libata-acpi: allow _GTF on SATA, but disable on PATA for now
The ACPI specification states, and BIOS implementations depend on, _STM being called before _GTF. SATA does this, but PATA does not. So for now, simply prevent execution of _GTF on PATA devices. Longer term we should implement ACPI support for PATA devices in libata. Signed-off-by: Kristen Accardi <kristen.c.accardi@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r--drivers/ata/libata-acpi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/ata/libata-acpi.c b/drivers/ata/libata-acpi.c
index d14a48e75f1b..89aaf749cd10 100644
--- a/drivers/ata/libata-acpi.c
+++ b/drivers/ata/libata-acpi.c
@@ -561,6 +561,13 @@ int ata_acpi_exec_tfs(struct ata_port *ap)
if (noacpi)
return 0;
+ /*
+ * TBD - implement PATA support. For now,
+ * we should not run GTF on PATA devices since some
+ * PATA require execution of GTM/STM before GTF.
+ */
+ if (!(ap->cbl == ATA_CBL_SATA))
+ return 0;
for (ix = 0; ix < ATA_MAX_DEVICES; ix++) {
if (!ata_dev_enabled(&ap->device[ix]))