aboutsummaryrefslogtreecommitdiff
path: root/drivers/staging/speakup/kobjects.c
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2013-03-28 11:02:44 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-03-29 08:41:15 -0700
commit6a48f88b528fef7c4b6ad609111a8acfb5d65335 (patch)
tree58f4551121772dc7fcea13e96428ff4837bcce4d /drivers/staging/speakup/kobjects.c
parent1627ab92b2e6307525f43f775aaeac54407981ef (diff)
staging: speakup: use native error codes
The mapping as follows: E_RANGE -> ERANGE E_UNDEF -> ENODATA E_TOOLONG -> E2BIG SET_DEFAULT -> ERESTART As a side effect it fixes a bug in spk_var_store() where return code was mistakenly compared to negative value instead of positive. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/speakup/kobjects.c')
-rw-r--r--drivers/staging/speakup/kobjects.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/staging/speakup/kobjects.c b/drivers/staging/speakup/kobjects.c
index d0f660baa4a..d6d9264e4ca 100644
--- a/drivers/staging/speakup/kobjects.c
+++ b/drivers/staging/speakup/kobjects.c
@@ -619,7 +619,7 @@ ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr,
len = E_SET;
value = simple_strtol(cp, NULL, 10);
ret = spk_set_num_var(value, param, len);
- if (ret == E_RANGE) {
+ if (ret == -ERANGE) {
var_data = param->data;
pr_warn("value for %s out of range, expect %d to %d\n",
attr->attr.name,
@@ -637,7 +637,7 @@ ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr,
cp = (char *) buf;
cp[len] = '\0';
ret = spk_set_string_var(buf, param, len);
- if (ret == E_TOOLONG)
+ if (ret == -E2BIG)
pr_warn("value too long for %s\n",
attr->attr.name);
break;
@@ -670,7 +670,7 @@ ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr,
}
spk_unlock(flags);
- if (ret == SET_DEFAULT)
+ if (ret == -ERESTART)
pr_info("%s reset to default value\n", attr->attr.name);
return count;
}