diff --git a/.gitignore b/.gitignore
index 126713b..96ffdba 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,6 +51,7 @@
 src/perf/.deps/
 src/process/.deps/
 src/tuning/.deps/
+src/report/.deps/
 m4
 *.dirstamp
 *.lo
diff --git a/src/tuning/tuning.cpp b/src/tuning/tuning.cpp
index ebb4ac8..08d8251 100644
--- a/src/tuning/tuning.cpp
+++ b/src/tuning/tuning.cpp
@@ -57,11 +57,10 @@
 static void init_tuning(void)
 {
 	add_sysfs_tunable(_("Enable Audio codec power management"), "/sys/module/snd_hda_intel/parameters/power_save", "1");
-	add_sysfs_tunable(_("Enable SATA link power management for /dev/sda"), "/sys/class/scsi_host/host0/link_power_management_policy", "min_power");
 	add_sysfs_tunable(_("NMI watchdog should be turned off"), "/proc/sys/kernel/nmi_watchdog", "0");
 	add_sysfs_tunable(_("Power Aware CPU scheduler"), "/sys/devices/system/cpu/sched_mc_power_savings", "1");
 	add_sysfs_tunable(_("VM writeback timeout"), "/proc/sys/vm/dirty_writeback_centisecs", "1500");
-
+	add_sata_tunables();
 	add_usb_tunables();
 	add_runtime_tunables("pci");
 	add_ethernet_tunable();
diff --git a/src/tuning/tuningsysfs.cpp b/src/tuning/tuningsysfs.cpp
index 602d62d..33d3786 100644
--- a/src/tuning/tuningsysfs.cpp
+++ b/src/tuning/tuningsysfs.cpp
@@ -28,9 +28,16 @@
 #include "unistd.h"
 #include "tuningsysfs.h"
 #include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
 #include <utility>
 #include <iostream>
 #include <fstream>
+#include <unistd.h>
+#include <sys/types.h>
+#include <dirent.h>
+
 
 #include "../lib.h"
 
@@ -105,3 +112,38 @@
 
 	all_tunables.push_back(tunable);
 }
+
+void add_sata_tunables(void)
+{
+	struct dirent *entry;
+	DIR *dir;
+	char filename[4096];
+	char msg[4096];
+
+	dir = opendir("/sys/class/scsi_host");
+
+	if (!dir)
+		return;
+
+        while (1) {
+		entry = readdir(dir);
+
+		if (!entry)
+			break;
+
+                if (strcmp(entry->d_name, ".") == 0)
+                        continue;
+
+		if (strcmp(entry->d_name, "..") == 0)
+			continue;
+
+		sprintf(filename, "/sys/class/scsi_host/%s/link_power_management_policy", entry->d_name);
+
+	        sprintf(msg, _("Enable SATA link power Managmenet for %s"),entry->d_name);
+
+		add_sysfs_tunable(msg, filename,"min_power");
+
+        }
+
+        closedir(dir);
+}
diff --git a/src/tuning/tuningsysfs.h b/src/tuning/tuningsysfs.h
index ac7938c..ad89717 100644
--- a/src/tuning/tuningsysfs.h
+++ b/src/tuning/tuningsysfs.h
@@ -47,6 +47,6 @@
 };
 
 extern void add_sysfs_tunable(const char *str, const char *_sysfs_path, const char *_target_content);
-
+extern void add_sata_tunables(void);
 
 #endif
