Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 872b86be authored by Shuah Khan's avatar Shuah Khan Committed by Linus Torvalds
Browse files

leds: simple_strtoul() cleanup



led-class.c and ledtrig-timer.c still use simple_strtoul().  Change them
to use kstrtoul() instead of obsolete simple_strtoul().

Also fix the existing int ret declaration to be ssize_t to match the
return type for _store functions in ledtrig-timer.c.

Signed-off-by: default avatarShuah Khan <shuahkhan@gmail.com>
Cc: Joe Perches <joe@perches.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Bryan Wu <bryan.wu@canonical.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 5ba73631
Loading
Loading
Loading
Loading
+8 −13
Original line number Diff line number Diff line
@@ -44,23 +44,18 @@ static ssize_t led_brightness_store(struct device *dev,
		struct device_attribute *attr, const char *buf, size_t size)
{
	struct led_classdev *led_cdev = dev_get_drvdata(dev);
	unsigned long state;
	ssize_t ret = -EINVAL;
	char *after;
	unsigned long state = simple_strtoul(buf, &after, 10);
	size_t count = after - buf;

	if (isspace(*after))
		count++;

	if (count == size) {
		ret = count;
	ret = kstrtoul(buf, 10, &state);
	if (ret)
		return ret;

	if (state == LED_OFF)
		led_trigger_remove(led_cdev);
	led_set_brightness(led_cdev, state);
	}

	return ret;
	return size;
}

static ssize_t led_max_brightness_show(struct device *dev,
+20 −28
Original line number Diff line number Diff line
@@ -31,21 +31,17 @@ static ssize_t led_delay_on_store(struct device *dev,
		struct device_attribute *attr, const char *buf, size_t size)
{
	struct led_classdev *led_cdev = dev_get_drvdata(dev);
	int ret = -EINVAL;
	char *after;
	unsigned long state = simple_strtoul(buf, &after, 10);
	size_t count = after - buf;
	unsigned long state;
	ssize_t ret = -EINVAL;

	if (isspace(*after))
		count++;
	ret = kstrtoul(buf, 10, &state);
	if (ret)
		return ret;

	if (count == size) {
	led_blink_set(led_cdev, &state, &led_cdev->blink_delay_off);
	led_cdev->blink_delay_on = state;
		ret = count;
	}

	return ret;
	return size;
}

static ssize_t led_delay_off_show(struct device *dev,
@@ -60,21 +56,17 @@ static ssize_t led_delay_off_store(struct device *dev,
		struct device_attribute *attr, const char *buf, size_t size)
{
	struct led_classdev *led_cdev = dev_get_drvdata(dev);
	int ret = -EINVAL;
	char *after;
	unsigned long state = simple_strtoul(buf, &after, 10);
	size_t count = after - buf;
	unsigned long state;
	ssize_t ret = -EINVAL;

	if (isspace(*after))
		count++;
	ret = kstrtoul(buf, 10, &state);
	if (ret)
		return ret;

	if (count == size) {
	led_blink_set(led_cdev, &led_cdev->blink_delay_on, &state);
	led_cdev->blink_delay_off = state;
		ret = count;
	}

	return ret;
	return size;
}

static DEVICE_ATTR(delay_on, 0644, led_delay_on_show, led_delay_on_store);