Linux kernel staging patches
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Gabriel Rondon <grondon@gmail.com>
Cc: lars@metafoo.de, Michael.Hennerich@analog.com,
	gregkh@linuxfoundation.org, andriy.shevchenko@intel.com,
	dlechner@baylibre.com, nuno.sa@analog.com, andy@kernel.org,
	linux-iio@vger.kernel.org, linux-staging@lists.linux.dev,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 2/3] staging: iio: ad5933: use sysfs_emit() in show functions
Date: Sat, 21 Mar 2026 13:14:19 +0000	[thread overview]
Message-ID: <20260321131419.559ce8c2@jic23-huawei> (raw)
In-Reply-To: <20260320222424.53294-3-grondon@gmail.com>

On Fri, 20 Mar 2026 22:24:23 +0000
Gabriel Rondon <grondon@gmail.com> wrote:

> 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>

You should have replied to Andy's comments to say why you aren't
doing the more substantial refactors he asked for.

From my point of view, this driver is far enough from compliant ABI
that the changes suggested need major rewrites of the driver.
So it is very likely all this code will get ripped out before this
leaves staging.  No particular reason you should know that though
unless you've looked much more closely at what is needed.

Hence my main motivation in picking this up is we won't take other
people's time converting these. I doubt anyone is using staging
drivers as a source of information so the usual point of ensuring
best practice in code that might get copied doesn't apply.

Anyhow with all that in mind. Applied to the testing branch of iio.git.

Thanks,

Jonathan

> ---
>  .../staging/iio/impedance-analyzer/ad5933.c   | 24 +++++++++----------
>  1 file changed, 12 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/staging/iio/impedance-analyzer/ad5933.c b/drivers/staging/iio/impedance-analyzer/ad5933.c
> index 85a422329..e5a4f8d7a 100644
> --- a/drivers/staging/iio/impedance-analyzer/ad5933.c
> +++ b/drivers/staging/iio/impedance-analyzer/ad5933.c
> @@ -285,7 +285,7 @@ static ssize_t ad5933_show_frequency(struct device *dev,
>  	freqreg = (u64)freqreg * (u64)(st->mclk_hz / 4);
>  	do_div(freqreg, BIT(27));
>  
> -	return sprintf(buf, "%d\n", (int)freqreg);
> +	return sysfs_emit(buf, "%llu\n", freqreg);
>  }
>  
>  static ssize_t ad5933_store_frequency(struct device *dev,
> @@ -338,27 +338,27 @@ static ssize_t ad5933_show(struct device *dev,
>  	mutex_lock(&st->lock);
>  	switch ((u32)this_attr->address) {
>  	case AD5933_OUT_RANGE:
> -		len = sprintf(buf, "%u\n",
> -			      st->range_avail[(st->ctrl_hb >> 1) & 0x3]);
> +		len = sysfs_emit(buf, "%u\n",
> +				 st->range_avail[(st->ctrl_hb >> 1) & 0x3]);
>  		break;
>  	case AD5933_OUT_RANGE_AVAIL:
> -		len = sprintf(buf, "%u %u %u %u\n", st->range_avail[0],
> -			      st->range_avail[3], st->range_avail[2],
> -			      st->range_avail[1]);
> +		len = sysfs_emit(buf, "%u %u %u %u\n", st->range_avail[0],
> +				 st->range_avail[3], st->range_avail[2],
> +				 st->range_avail[1]);
>  		break;
>  	case AD5933_OUT_SETTLING_CYCLES:
> -		len = sprintf(buf, "%d\n", st->settling_cycles);
> +		len = sysfs_emit(buf, "%d\n", st->settling_cycles);
>  		break;
>  	case AD5933_IN_PGA_GAIN:
> -		len = sprintf(buf, "%s\n",
> -			      (st->ctrl_hb & AD5933_CTRL_PGA_GAIN_1) ?
> -			      "1" : "0.2");
> +		len = sysfs_emit(buf, "%s\n",
> +				 (st->ctrl_hb & AD5933_CTRL_PGA_GAIN_1) ?
> +				 "1" : "0.2");
>  		break;
>  	case AD5933_IN_PGA_GAIN_AVAIL:
> -		len = sprintf(buf, "1 0.2\n");
> +		len = sysfs_emit(buf, "1 0.2\n");
>  		break;
>  	case AD5933_FREQ_POINTS:
> -		len = sprintf(buf, "%d\n", st->freq_points);
> +		len = sysfs_emit(buf, "%d\n", st->freq_points);
>  		break;
>  	default:
>  		ret = -EINVAL;


  reply	other threads:[~2026-03-21 13:14 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-19 22:57 [PATCH 0/3] staging: iio: replace sprintf() with sysfs_emit() Gabriel Rondon
2026-03-19 22:57 ` [PATCH 1/3] staging: iio: ad7816: use sysfs_emit() in show functions Gabriel Rondon
2026-03-19 22:57 ` [PATCH 2/3] staging: iio: ad5933: " Gabriel Rondon
2026-03-20  8:11   ` Andy Shevchenko
2026-03-21 16:53     ` Gabriel Rondon
2026-03-23 10:17       ` Andy Shevchenko
2026-03-19 22:57 ` [PATCH 3/3] staging: iio: ad9834: " Gabriel Rondon
2026-03-20  8:15   ` Andy Shevchenko
2026-03-21 13:15     ` Jonathan Cameron
2026-03-20 22:24 ` [PATCH v2 0/3] staging: iio: replace sprintf() with sysfs_emit() Gabriel Rondon
2026-03-20 22:24   ` [PATCH v2 1/3] staging: iio: ad7816: use sysfs_emit() in show functions Gabriel Rondon
2026-03-21 13:09     ` Jonathan Cameron
2026-03-20 22:24   ` [PATCH v2 2/3] staging: iio: ad5933: " Gabriel Rondon
2026-03-21 13:14     ` Jonathan Cameron [this message]
2026-03-20 22:24   ` [PATCH v2 3/3] staging: iio: ad9834: use sysfs_emit() and simplify " Gabriel Rondon
2026-03-21 13:16     ` Jonathan Cameron
2026-03-21 13:03   ` [PATCH v2 0/3] staging: iio: replace sprintf() with sysfs_emit() Jonathan Cameron
2026-03-21 15:32     ` Dan Carpenter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260321131419.559ce8c2@jic23-huawei \
    --to=jic23@kernel.org \
    --cc=Michael.Hennerich@analog.com \
    --cc=andriy.shevchenko@intel.com \
    --cc=andy@kernel.org \
    --cc=dlechner@baylibre.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=grondon@gmail.com \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=nuno.sa@analog.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox