Skip to content

Commit

Permalink
platform/x86: hp-wmi: Refactor postcode_store() to follow standard pa…
Browse files Browse the repository at this point in the history
…tterns

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

While at it, switch to use kstrtobool().

Signed-off-by: Andy Shevchenko <[email protected]>
  • Loading branch information
andy-shev committed May 30, 2020
1 parent c0f61c5 commit 7640cd0
Showing 1 changed file with 7 additions and 9 deletions.
16 changes: 7 additions & 9 deletions drivers/platform/x86/hp-wmi.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down

0 comments on commit 7640cd0

Please sign in to comment.