mfd: replace strict_strtoul() with kstrtoul()
Subsystems (2)
PATCH v3 1/1 mfd: replace strict_strtoul() with kstrtoul()
The usage of strict_strtoul() is not preferred, because strict_strtoul() is obsolete. Thus, kstrtoul() should be used.
---
Changes since v1:
- Removed redundant variables 'u8 reg'.
- Changed the type of 'user_value' from 'unsigned long' to 'u8'.
- Replaced kstrtoul() with kstrtou8() to handle u8 variable.
- Added Andy Shevchenko's Reviewed-by.
Changes since v1:
- Used return code from kstrtoul().
- Changed the type of 'user_reg' from 'unsigned long' to 'u8'.
- Replaced kstrtoul() with kstrtou8() to handle u8 variable.
drivers/mfd/aat2870-core.c | 5 +++-- drivers/mfd/ab3100-core.c | 28 ++++++++++------------------ drivers/mfd/ab8500-debugfs.c | 2 +- 3 files changed, 14 insertions(+), 21 deletions(-)
drivers/mfd/aat2870-core.c +3 -2
@@ -312,8 +312,9 @@ static ssize_t aat2870_reg_write_file(struct file *file,while (*start ==' ' ) start++; -if (strict_strtoul (start,16 , &val)) -return -EINVAL ; + ret =kstrtoul (start,16 , &val); +if (ret) +return ret; ret = aat2870->write (aat2870, (u8 )addr, (u8 )val);if (ret)
drivers/mfd/ab3100-core.c +10 -18
@@ -491,7 +491,7 @@ static ssize_t ab3100_get_set_reg(struct file *file,char buf[32 ];ssize_t buf_size;int regp; -unsigned long user_reg; +u8 user_reg;int err;int i =0 ;
@@ -514,34 +514,29 @@ static ssize_t ab3100_get_set_reg(struct file *file,/* * Advance pointer to end of string then terminate * the register string. This is needed to satisfy -* the strict_strtoul() function. +* the kstrtou8() function. */ while ((i < buf_size) && (buf[i] !=' ' )) i++; buf[i] ='\0' ; - err =strict_strtoul (&buf[regp],16 , &user_reg); + err =kstrtou8 (&buf[regp],16 , &user_reg);if (err)return err; -if (user_reg >0xff ) -return -EINVAL ;/* Either we read or we write a register here */ if (!priv->mode) {/* Reading */ -u8 reg = (u8 ) user_reg;u8 regvalue; -ab3100_get_register_interruptible (ab3100, reg, ®value); +ab3100_get_register_interruptible (ab3100, user_reg, ®value);dev_info (ab3100->dev,"debug read AB3100 reg[0x%02x]: 0x%02x\n" , - reg, regvalue); + user_reg, regvalue); }else {int valp; -unsigned long user_value; -u8 reg = (u8 ) user_reg; -u8 value; +u8 user_value;u8 regvalue;/*
@@ -557,20 +552,17 @@ static ssize_t ab3100_get_set_reg(struct file *file, i++; buf[i] ='\0' ; - err =strict_strtoul (&buf[valp],16 , &user_value); + err =kstrtou8 (&buf[valp],16 , &user_value);if (err)return err; -if (user_reg >0xff ) -return -EINVAL ; - value = (u8 ) user_value; -ab3100_set_register_interruptible (ab3100, reg, value); -ab3100_get_register_interruptible (ab3100, reg, ®value); +ab3100_set_register_interruptible (ab3100, user_reg, user_value); +ab3100_get_register_interruptible (ab3100, user_reg, ®value);dev_info (ab3100->dev,"debug write reg[0x%02x] with 0x%02x, " "after readback: 0x%02x\n" , - reg, value, regvalue); + user_reg, user_value, regvalue); }return buf_size; }
drivers/mfd/ab8500-debugfs.c +1 -1
@@ -2757,7 +2757,7 @@ static ssize_t show_irq(struct device *dev,unsigned int irq_index;int err; - err =strict_strtoul (attr->attr.name,0 , &name); + err =kstrtoul (attr->attr.name,0 , &name);if (err)return err;
Signature · 1 line
1.7.10.4
Lee Jones
AppliedQuoted 18 lines · Jingoo Han
The usage of
strict_strtoul()is not preferred, becausestrict_strtoul()is obsolete. Thus,kstrtoul()should be used.Signed-off-by Jingoo Han <[email protected]>Reviewed-by Andy Shevchenko <[email protected]>---
Changes since v1:
- Removed redundant variables 'u8 reg'.
- Changed the type of 'user_value' from 'unsigned long' to 'u8'.
- Replacedkstrtoul()withkstrtou8()to handle u8 variable.
- Added Andy Shevchenko's Reviewed-by.Changes since v1:
- Used return code fromkstrtoul().
- Changed the type of 'user_reg' from 'unsigned long' to 'u8'.
- Replacedkstrtoul()withkstrtou8()to handle u8 variable.
Quoted 4 lines
drivers/mfd/aat2870-core.c | 5 +++-- drivers/mfd/ab3100-core.c | 28 ++++++++++------------------ drivers/mfd/ab8500-debugfs.c | 2 +- 3 files changed, 14 insertions(+), 21 deletions(-)
Applied.
If Andy has any further comments, I'll replace the applied version with any v3 patch which you send.
Signature · 4 lines
Lee Jones Linaro ST-Ericsson Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog