summaryrefslogtreecommitdiff
path: root/drivers/leds
diff options
context:
space:
mode:
authorChristian Marangi <ansuelsmth@gmail.com>2024-06-27 01:15:11 +0300
committerLee Jones <lee@kernel.org>2024-07-04 18:44:45 +0300
commit6f2fdde9096f3c4d35a7711c91a78c086be66aed (patch)
tree1f7397e506eb173b3d06f6d227f20e354448e72e /drivers/leds
parent940b27161afc6ec53fc66245a4fb3518394cdc92 (diff)
downloadlinux-6f2fdde9096f3c4d35a7711c91a78c086be66aed.tar.xz
leds: leds-lp5569: Convert to sysfs_emit API
Convert sprintf to the much safer sysfs_emit API to handle output for sysfs. Also better handle situation where on the same chip there may be LED open and shorted at the same time. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Link: https://lore.kernel.org/r/20240626221520.2846-1-ansuelsmth@gmail.com Signed-off-by: Lee Jones <lee@kernel.org>
Diffstat (limited to 'drivers/leds')
-rw-r--r--drivers/leds/leds-lp5569.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/leds/leds-lp5569.c b/drivers/leds/leds-lp5569.c
index 7ccd8dd6026a..e5e7e61c8916 100644
--- a/drivers/leds/leds-lp5569.c
+++ b/drivers/leds/leds-lp5569.c
@@ -268,8 +268,8 @@ static ssize_t lp5569_led_open_test(struct lp55xx_led *led, char *buf)
led_tmp = led;
for (i = 0; i < pdata->num_channels; i++) {
if (leds_fault[led_tmp->chan_nr])
- pos += sprintf(buf + pos, "LED %d OPEN FAIL\n",
- led_tmp->chan_nr);
+ pos += sysfs_emit_at(buf, pos, "LED %d OPEN FAIL\n",
+ led_tmp->chan_nr);
led_tmp++;
}
@@ -366,8 +366,8 @@ static ssize_t lp5569_led_short_test(struct lp55xx_led *led, char *buf)
led_tmp = led;
for (i = 0; i < pdata->num_channels; i++) {
if (leds_fault[led_tmp->chan_nr])
- pos += sprintf(buf + pos, "LED %d SHORTED FAIL\n",
- led_tmp->chan_nr);
+ pos += sysfs_emit_at(buf, pos, "LED %d SHORTED FAIL\n",
+ led_tmp->chan_nr);
led_tmp++;
}
@@ -404,7 +404,7 @@ static ssize_t lp5569_selftest(struct device *dev,
goto fail;
/* Test LED Shorted */
- pos = lp5569_led_short_test(led, buf);
+ pos += lp5569_led_short_test(led, buf);
if (pos < 0)
goto fail;
@@ -420,10 +420,10 @@ static ssize_t lp5569_selftest(struct device *dev,
}
if (pos == 0)
- pos = sprintf(buf, "OK\n");
+ pos = sysfs_emit(buf, "OK\n");
goto release_lock;
fail:
- pos = sprintf(buf, "FAIL\n");
+ pos = sysfs_emit(buf, "FAIL\n");
release_lock:
mutex_unlock(&chip->lock);