In show_available_cpufv, show_cpufv, and store_cpufv, errors from
get_cpufv are mapped to -ENODEV. To paint a clear picture to callers,
propagate the errors instead.

Signed-off-by: Frans Klaver <[email protected]>
---
 drivers/platform/x86/eeepc-laptop.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/platform/x86/eeepc-laptop.c 
b/drivers/platform/x86/eeepc-laptop.c
index 828db56..732b012 100644
--- a/drivers/platform/x86/eeepc-laptop.c
+++ b/drivers/platform/x86/eeepc-laptop.c
@@ -351,8 +351,9 @@ static ssize_t show_available_cpufv(struct device *dev,
        int i;
        ssize_t len = 0;
 
-       if (get_cpufv(eeepc, &c))
-               return -ENODEV;
+       i = get_cpufv(eeepc, &c);
+       if (i)
+               return i;
        for (i = 0; i < c.num; i++)
                len += sprintf(buf + len, "%d ", i);
        len += sprintf(buf + len, "\n");
@@ -365,9 +366,11 @@ static ssize_t show_cpufv(struct device *dev,
 {
        struct eeepc_laptop *eeepc = dev_get_drvdata(dev);
        struct eeepc_cpufv c;
+       int rv;
 
-       if (get_cpufv(eeepc, &c))
-               return -ENODEV;
+       rv = get_cpufv(eeepc, &c);
+       if (rv)
+               return rv;
        return sprintf(buf, "%#x\n", (c.num << 8) | c.cur);
 }
 
@@ -381,8 +384,9 @@ static ssize_t store_cpufv(struct device *dev,
 
        if (eeepc->cpufv_disabled)
                return -EPERM;
-       if (get_cpufv(eeepc, &c))
-               return -ENODEV;
+       rv = get_cpufv(eeepc, &c);
+       if (rv)
+               return rv;
        rv = parse_arg(buf, &value);
        if (rv < 0)
                return rv;
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" 
in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to