libata: test major version in ata_id_is_sata()
authorTejun Heo <htejun@gmail.com>
Wed, 21 Feb 2007 11:25:08 +0000 (20:25 +0900)
committerJeff Garzik <jeff@garzik.org>
Fri, 23 Feb 2007 10:37:11 +0000 (05:37 -0500)
Test major version in ata_id_is_sata() not separately.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
include/linux/ata.h

index 272736e37990b7d96b71d7f4b0972ee2d7033d77..c331da2da5f7af3c90b783efac81e2184a27b7c7 100644 (file)
@@ -282,7 +282,6 @@ struct ata_taskfile {
 };
 
 #define ata_id_is_ata(id)      (((id)[0] & (1 << 15)) == 0)
-#define ata_id_is_sata(id)     ((id)[93] == 0)
 #define ata_id_rahead_enabled(id) ((id)[85] & (1 << 6))
 #define ata_id_wcache_enabled(id) ((id)[85] & (1 << 5))
 #define ata_id_hpa_enabled(id) ((id)[85] & (1 << 10))
@@ -324,6 +323,11 @@ static inline unsigned int ata_id_major_version(const u16 *id)
        return mver;
 }
 
+static inline int ata_id_is_sata(const u16 *id)
+{
+       return ata_id_major_version(id) >= 5 && id[93] == 0;
+}
+
 static inline int ata_id_current_chs_valid(const u16 *id)
 {
        /* For ATA-1 devices, if the INITIALIZE DEVICE PARAMETERS command
@@ -350,7 +354,7 @@ static inline int ata_id_is_cfa(const u16 *id)
 
 static inline int ata_drive_40wire(const u16 *dev_id)
 {
-       if (ata_id_major_version(dev_id) >= 5 && ata_id_is_sata(dev_id))
+       if (ata_id_is_sata(dev_id))
                return 0;       /* SATA */
        if ((dev_id[93] & 0xE000) == 0x6000)
                return 0;       /* 80 wire */