From: Qianfeng Rong <rongqianfeng@vivo.com>
To: "David Lechner" <dlechner@baylibre.com>,
"Jean-Baptiste Maneyrol" <jean-baptiste.maneyrol@tdk.com>,
"Jonathan Cameron" <jic23@kernel.org>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] iio: imu: use min() to improve code
Date: Sat, 16 Aug 2025 15:29:10 +0800 [thread overview]
Message-ID: <61dbf3f6-6b45-4823-a7ce-794c3ad5aca2@vivo.com> (raw)
In-Reply-To: <8b739044-2854-441d-b744-b014deea4eea@baylibre.com>
在 2025/8/15 22:25, David Lechner 写道:
> On 8/15/25 3:06 AM, Qianfeng Rong wrote:
>> Use min() to reduce code in inv_icm42600_buffer_update_fifo_period()
>> and inv_icm42600_buffer_update_watermark(), and improve readability.
>>
>> Signed-off-by: Qianfeng Rong <rongqianfeng@vivo.com>
>> ---
>> drivers/iio/imu/inv_icm42600/inv_icm42600_buffer.c | 11 +++--------
>> 1 file changed, 3 insertions(+), 8 deletions(-)
>>
>> diff --git a/drivers/iio/imu/inv_icm42600/inv_icm42600_buffer.c b/drivers/iio/imu/inv_icm42600/inv_icm42600_buffer.c
>> index 7c4ed981db04..91d166de1231 100644
>> --- a/drivers/iio/imu/inv_icm42600/inv_icm42600_buffer.c
>> +++ b/drivers/iio/imu/inv_icm42600/inv_icm42600_buffer.c
>> @@ -9,6 +9,7 @@
>> #include <linux/pm_runtime.h>
>> #include <linux/regmap.h>
>> #include <linux/delay.h>
>> +#include <linux/minmax.h>
> Would be nice to put this in alphabetical order the best we can.
Thanks! Good to know this detail.
>
>>
>> #include <linux/iio/buffer.h>
>> #include <linux/iio/common/inv_sensors_timestamp.h>
>> @@ -112,10 +113,7 @@ void inv_icm42600_buffer_update_fifo_period(struct inv_icm42600_state *st)
>> else
>> period_accel = U32_MAX;
>>
>> - if (period_gyro <= period_accel)
>> - period = period_gyro;
>> - else
>> - period = period_accel;
>> + period = min(period_gyro, period_accel);
>>
>> st->fifo.period = period;
> Might as well just drop the local variable in this one and save
> another line (and a blank line).
It is indeed better to drop the local variable.
>
>> }
>> @@ -238,10 +236,7 @@ int inv_icm42600_buffer_update_watermark(struct inv_icm42600_state *st)
>> else
>> latency = latency_accel - (latency_gyro % latency_accel);
>> /* use the shortest period */
> We could remove the comment as well since it should be
> obvious from the code.
ok :)
>
>> - if (period_gyro <= period_accel)
>> - period = period_gyro;
>> - else
>> - period = period_accel;
>> + period = min(period_gyro, period_accel);
>> /* all this works because periods are multiple of each others */
>> watermark = latency / period;
> Could probably also drop the local variable here and still fit everything on one line.
I will try to do this in the next version.
>
>> if (watermark < 1)
Best regards,
Qianfeng
prev parent reply other threads:[~2025-08-16 7:29 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-15 8:06 Qianfeng Rong
2025-08-15 14:25 ` David Lechner
2025-08-16 7:29 ` Qianfeng Rong [this message]
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=61dbf3f6-6b45-4823-a7ce-794c3ad5aca2@vivo.com \
--to=rongqianfeng@vivo.com \
--cc=andy@kernel.org \
--cc=dlechner@baylibre.com \
--cc=jean-baptiste.maneyrol@tdk.com \
--cc=jic23@kernel.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--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
all inboxes | Powered by JetHome®