Commit 84d8e80b authored by Andy Shevchenko's avatar Andy Shevchenko
Browse files

platform/x86: asus-wmi: Refactor charge_threshold_store()



There are few issues with the current code:
 - the error code from kstrtouint() is shadowed
 - the error code from asus_wmi_set_devstate() is ignored
 - the extra check against 0 for count (this is guaranteed by sysfs)

Fix these issues by doing a slight refactoring of charge_threshold_store().

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent d507a54f
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -2086,13 +2086,15 @@ static ssize_t charge_threshold_store(struct device *dev,
	int value, ret, rv;

	ret = kstrtouint(buf, 10, &value);
	if (ret)
		return ret;

	if (!count || ret != 0)
		return -EINVAL;
	if (value < 0 || value > 100)
		return -EINVAL;

	asus_wmi_set_devstate(ASUS_WMI_CHARGE_THRESHOLD, value, &rv);
	ret = asus_wmi_set_devstate(ASUS_WMI_CHARGE_THRESHOLD, value, &rv);
	if (!ret)
		return ret;

	if (rv != 1)
		return -EIO;