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: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
This commit is contained in:
parent
c0f61c51b7
commit
7640cd0b12
@ -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;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user