Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=08573a86c8da1379b4f341ab4781bb7c8685d5b6
Commit:     08573a86c8da1379b4f341ab4781bb7c8685d5b6
Parent:     7ea1fbc2a2449bc034a3d255f36f2e5486d52fe8
Author:     Kristen Carlson Accardi <[EMAIL PROTECTED]>
AuthorDate: Fri Nov 10 16:14:47 2006 -0800
Committer:  Jeff Garzik <[EMAIL PROTECTED]>
CommitDate: Fri Feb 16 13:32:41 2007 -0500

    [PATCH] libata: change order of _SDD/_GTF execution (resend #3)
    
    Make the sdd call come before gtf.  _SDD is used to provide
    input to the _GTF file, so it should be executed first.
    
    Signed-off-by: Kristen Carlson Accardi <[EMAIL PROTECTED]>
    Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]>
    (cherry picked from 89d74215e1e5b79ea084385b5c83d0e33cf2d655 commit)
---
 drivers/ata/libata-core.c |   21 ++++++++++-----------
 1 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 90081e5..e900c5e 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -1568,6 +1568,16 @@ int ata_dev_configure(struct ata_device *dev)
                ata_dev_printk(dev, KERN_DEBUG, "%s: ENTER, host %u, dev %u\n",
                               __FUNCTION__, ap->id, dev->devno);
 
+       /* set _SDD */
+       rc = ata_acpi_push_id(ap, dev->devno);
+       if (rc) {
+               ata_dev_printk(dev, KERN_WARNING, "failed to set _SDD(%d)\n",
+                       rc);
+       }
+
+       /* retrieve and execute the ATA task file of _GTF */
+       ata_acpi_exec_tfs(ap);
+
        /* print device capabilities */
        if (ata_msg_probe(ap))
                ata_dev_printk(dev, KERN_DEBUG,
@@ -1737,14 +1747,6 @@ int ata_dev_configure(struct ata_device *dev)
        if (ap->ops->dev_config)
                ap->ops->dev_config(ap, dev);
 
-       /* set _SDD */
-       rc = ata_acpi_push_id(ap, dev->devno);
-       if (rc) {
-               ata_dev_printk(dev, KERN_WARNING, "failed to set _SDD(%d)\n",
-                       rc);
-               goto err_out_nosup;
-       }
-
        if (ata_msg_probe(ap))
                ata_dev_printk(dev, KERN_DEBUG, "%s: EXIT, drv_stat = 0x%x\n",
                        __FUNCTION__, ata_chk_status(ap));
@@ -1790,9 +1792,6 @@ 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];
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to