Merge tag 'v3.10.108' into update
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / drivers / ata / libata-transport.c
index c04d393d20c119d970d80d1b73e0e0e628b0f761..08e67285645bbd1cfabf68ed36c84c0ea3550892 100644 (file)
@@ -319,25 +319,25 @@ int ata_tport_add(struct device *parent,
 /*
  * ATA link attributes
  */
+static int noop(int x) { return x; }
 
-
-#define ata_link_show_linkspeed(field)                                 \
+#define ata_link_show_linkspeed(field, format)                         \
 static ssize_t                                                         \
 show_ata_link_##field(struct device *dev,                              \
                      struct device_attribute *attr, char *buf)         \
 {                                                                      \
        struct ata_link *link = transport_class_to_link(dev);           \
                                                                        \
-       return sprintf(buf,"%s\n", sata_spd_string(fls(link->field)));  \
+       return sprintf(buf, "%s\n", sata_spd_string(format(link->field))); \
 }
 
-#define ata_link_linkspeed_attr(field)                                 \
-       ata_link_show_linkspeed(field)                                  \
+#define ata_link_linkspeed_attr(field, format)                         \
+       ata_link_show_linkspeed(field, format)                          \
 static DEVICE_ATTR(field, S_IRUGO, show_ata_link_##field, NULL)
 
-ata_link_linkspeed_attr(hw_sata_spd_limit);
-ata_link_linkspeed_attr(sata_spd_limit);
-ata_link_linkspeed_attr(sata_spd);
+ata_link_linkspeed_attr(hw_sata_spd_limit, fls);
+ata_link_linkspeed_attr(sata_spd_limit, fls);
+ata_link_linkspeed_attr(sata_spd, noop);
 
 
 static DECLARE_TRANSPORT_CLASS(ata_link_class,