Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

staging: iio: ad5933: use sysfs_emit() in show functions

Replace sprintf() with sysfs_emit() in all sysfs attribute show
functions. sysfs_emit() is the preferred API for sysfs callbacks as
it is aware of the PAGE_SIZE buffer limit.

Also remove the unnecessary (int) cast in ad5933_show_frequency()
and use the correct format specifier %llu for the unsigned long long
freqreg variable.

Signed-off-by: Gabriel Rondon <grondon@gmail.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

authored by

Gabriel Rondon and committed by
Jonathan Cameron
f6192780 773a5dc6

+12 -12
+12 -12
drivers/staging/iio/impedance-analyzer/ad5933.c
··· 285 285 freqreg = (u64)freqreg * (u64)(st->mclk_hz / 4); 286 286 do_div(freqreg, BIT(27)); 287 287 288 - return sprintf(buf, "%d\n", (int)freqreg); 288 + return sysfs_emit(buf, "%llu\n", freqreg); 289 289 } 290 290 291 291 static ssize_t ad5933_store_frequency(struct device *dev, ··· 338 338 mutex_lock(&st->lock); 339 339 switch ((u32)this_attr->address) { 340 340 case AD5933_OUT_RANGE: 341 - len = sprintf(buf, "%u\n", 342 - st->range_avail[(st->ctrl_hb >> 1) & 0x3]); 341 + len = sysfs_emit(buf, "%u\n", 342 + st->range_avail[(st->ctrl_hb >> 1) & 0x3]); 343 343 break; 344 344 case AD5933_OUT_RANGE_AVAIL: 345 - len = sprintf(buf, "%u %u %u %u\n", st->range_avail[0], 346 - st->range_avail[3], st->range_avail[2], 347 - st->range_avail[1]); 345 + len = sysfs_emit(buf, "%u %u %u %u\n", st->range_avail[0], 346 + st->range_avail[3], st->range_avail[2], 347 + st->range_avail[1]); 348 348 break; 349 349 case AD5933_OUT_SETTLING_CYCLES: 350 - len = sprintf(buf, "%d\n", st->settling_cycles); 350 + len = sysfs_emit(buf, "%d\n", st->settling_cycles); 351 351 break; 352 352 case AD5933_IN_PGA_GAIN: 353 - len = sprintf(buf, "%s\n", 354 - (st->ctrl_hb & AD5933_CTRL_PGA_GAIN_1) ? 355 - "1" : "0.2"); 353 + len = sysfs_emit(buf, "%s\n", 354 + (st->ctrl_hb & AD5933_CTRL_PGA_GAIN_1) ? 355 + "1" : "0.2"); 356 356 break; 357 357 case AD5933_IN_PGA_GAIN_AVAIL: 358 - len = sprintf(buf, "1 0.2\n"); 358 + len = sysfs_emit(buf, "1 0.2\n"); 359 359 break; 360 360 case AD5933_FREQ_POINTS: 361 - len = sprintf(buf, "%d\n", st->freq_points); 361 + len = sysfs_emit(buf, "%d\n", st->freq_points); 362 362 break; 363 363 default: 364 364 ret = -EINVAL;