---
 drivers/scsi/libata-acpi.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- linux-2616-rc3-ata.orig/drivers/scsi/libata-acpi.c
+++ linux-2616-rc3-ata/drivers/scsi/libata-acpi.c
@@ -437,7 +437,7 @@ int do_drive_get_GTF(struct ata_port *ap
 
 	/* Don't continue if device has no _ADR method.
 	 * _GTF is intended for known motherboard devices. */
-	if (ata_id_is_ata(atadev->id)) {
+	if (!ata_id_is_sata(atadev->id)) {
 		err = pata_get_dev_handle(dev, &dev_handle, &pcidevfn);
 		if (err < 0) {
 			if (ata_msg_probe(ap))
@@ -459,7 +459,7 @@ int do_drive_get_GTF(struct ata_port *ap
 
 	/* Get this drive's _ADR info. if not already known. */
 	if (!atadev->obj_handle) {
-		if (ata_id_is_ata(atadev->id)) {
+		if (!ata_id_is_sata(atadev->id)) {
 			/* get child objects of dev_handle == channel objects,
 	 		 * + _their_ children == drive objects */
 			/* channel is ap->hard_port_no */
