Commit 7640cd0b authored by Andy Shevchenko's avatar Andy Shevchenko

platform/x86: hp-wmi: Refactor postcode_store() to follow standard patterns

Refactor postcode_store() to follow standard patterns of error handling.

While at it, switch to use kstrtobool().
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent c0f61c51
......@@ -473,22 +473,20 @@ static ssize_t als_store(struct device *dev, struct device_attribute *attr,
static ssize_t postcode_store(struct device *dev, struct device_attribute *attr,
const char *buf, size_t count)
{
long unsigned int tmp2;
u32 tmp = 1;
bool clear;
int ret;
u32 tmp;
ret = kstrtoul(buf, 10, &tmp2);
if (!ret && tmp2 != 1)
ret = -EINVAL;
ret = kstrtobool(buf, &clear);
if (ret)
goto out;
return ret;
if (clear == false)
return -EINVAL;
/* Clear the POST error code. It is kept until until cleared. */
tmp = (u32) tmp2;
ret = hp_wmi_perform_query(HPWMI_POSTCODEERROR_QUERY, HPWMI_WRITE, &tmp,
sizeof(tmp), sizeof(tmp));
out:
if (ret)
return ret < 0 ? ret : -EINVAL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment