summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrans Klaver <fransklaver@gmail.com>2014-09-17 23:47:24 +0200
committerDarren Hart <dvhart@linux.intel.com>2014-09-19 09:42:11 -0700
commit28ac85f71ad1e55199302a59757ed21e082b88b1 (patch)
treee0e08c2e186cc4de9ea3d01868ecc5619d3c80d1
parent6fe3a77f6296a6c995eb08d564bafec028c15a18 (diff)
downloadop-kernel-dev-28ac85f71ad1e55199302a59757ed21e082b88b1.zip
op-kernel-dev-28ac85f71ad1e55199302a59757ed21e082b88b1.tar.gz
eeepc-laptop: pull out SENSOR_STORE_FUNC and SENSOR_SHOW_FUNC macros
Pull out EEEPC_SENSOR_STORE_FUNC and EEEPC_SENSOR_SHOW_FUNC. These macros define functions that call store_sys_hwmon() and show_sys_hwmon() respectively. This helps prevent duplication later on. Signed-off-by: Frans Klaver <fransklaver@gmail.com> Signed-off-by: Darren Hart <dvhart@linux.intel.com>
-rw-r--r--drivers/platform/x86/eeepc-laptop.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/platform/x86/eeepc-laptop.c b/drivers/platform/x86/eeepc-laptop.c
index a85da4f..ba251bb 100644
--- a/drivers/platform/x86/eeepc-laptop.c
+++ b/drivers/platform/x86/eeepc-laptop.c
@@ -1038,19 +1038,25 @@ static ssize_t show_sys_hwmon(int (*get)(void), char *buf)
return sprintf(buf, "%d\n", get());
}
-#define EEEPC_CREATE_SENSOR_ATTR(_name, _mode, _get, _set) \
+#define EEEPC_SENSOR_SHOW_FUNC(_name, _get) \
static ssize_t show_##_name(struct device *dev, \
struct device_attribute *attr, \
char *buf) \
{ \
return show_sys_hwmon(_get, buf); \
- } \
+ }
+
+#define EEEPC_SENSOR_STORE_FUNC(_name, _set) \
static ssize_t store_##_name(struct device *dev, \
struct device_attribute *attr, \
const char *buf, size_t count) \
{ \
return store_sys_hwmon(_set, buf, count); \
- } \
+ }
+
+#define EEEPC_CREATE_SENSOR_ATTR(_name, _mode, _get, _set) \
+ EEEPC_SENSOR_SHOW_FUNC(_name, _get) \
+ EEEPC_SENSOR_STORE_FUNC(_name, _set) \
static DEVICE_ATTR(_name, _mode, show_##_name, store_##_name)
EEEPC_CREATE_SENSOR_ATTR(fan1_input, S_IRUGO, eeepc_get_fan_rpm, NULL);
OpenPOWER on IntegriCloud