summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChengrui Liu <OrangeBlack0765@outlook.com>2026-07-16 09:04:35 +0800
committerJonathan Cameron <jonathan.cameron@oss.qualcomm.com>2026-07-19 23:16:22 +0100
commit0777fb25ed35cbb1d0f10625e3b0362a139f8f46 (patch)
tree2e7b471b8a7b0f0bd705b50d68ce239ddc4b13f0
parent23f66b58b14bd5068ece70c118755cc24ff75baf (diff)
downloadlinux-0777fb25ed35cbb1d0f10625e3b0362a139f8f46.tar.gz
linux-0777fb25ed35cbb1d0f10625e3b0362a139f8f46.zip
iio: light: tsl2583: migrate to sysfs_emit() and sysfs_emit_at()
Replace sprintf() with sysfs_emit() for single-value sysfs show functions, and use sysfs_emit_at() for lux_table_show() which concatenates multiple values. This ensures buffer safety and follows the modern kernel sysfs API. Signed-off-by: Chengrui Liu <OrangeBlack0765@outlook.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com> Signed-off-by: Jonathan Cameron <jonathan.cameron@oss.qualcomm.com>
-rw-r--r--drivers/iio/light/tsl2583.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/iio/light/tsl2583.c b/drivers/iio/light/tsl2583.c
index a0dd122af2cf..a210d87a1519 100644
--- a/drivers/iio/light/tsl2583.c
+++ b/drivers/iio/light/tsl2583.c
@@ -475,7 +475,7 @@ static ssize_t in_illuminance_input_target_show(struct device *dev,
int ret;
mutex_lock(&chip->als_mutex);
- ret = sprintf(buf, "%d\n", chip->als_settings.als_cal_target);
+ ret = sysfs_emit(buf, "%d\n", chip->als_settings.als_cal_target);
mutex_unlock(&chip->als_mutex);
return ret;
@@ -533,10 +533,10 @@ static ssize_t in_illuminance_lux_table_show(struct device *dev,
int offset = 0;
for (i = 0; i < ARRAY_SIZE(chip->als_settings.als_device_lux); i++) {
- offset += sprintf(buf + offset, "%u,%u,%u,",
- chip->als_settings.als_device_lux[i].ratio,
- chip->als_settings.als_device_lux[i].ch0,
- chip->als_settings.als_device_lux[i].ch1);
+ offset += sysfs_emit_at(buf, offset, "%u,%u,%u,",
+ chip->als_settings.als_device_lux[i].ratio,
+ chip->als_settings.als_device_lux[i].ch0,
+ chip->als_settings.als_device_lux[i].ch1);
if (chip->als_settings.als_device_lux[i].ratio == 0) {
/*
* We just printed the first "0" entry.
@@ -547,7 +547,7 @@ static ssize_t in_illuminance_lux_table_show(struct device *dev,
}
}
- offset += sprintf(buf + offset, "\n");
+ offset += sysfs_emit_at(buf, offset, "\n");
return offset;
}