Devicetree
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Chris Morgan" <macroalpha82@gmail.com>
Cc: conor+dt@kernel.org, robh@kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v16 07/10] iio: imu: inv_icm42607: Add Accelerometer for icm42607
Date: Mon, 13 Jul 2026 22:16:05 +0000	[thread overview]
Message-ID: <20260713221606.685F21F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260713215842.69097-8-macroalpha82@gmail.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] Missing update of cached sensor state `mode` causes configuration changes to inadvertently power off the sensor and breaks suspend/resume state tracking.
--

--- Patch [7]: [PATCH v16 07/10] iio: imu: inv_icm42607: Add Accelerometer for icm42607 ---
commit 599d6ae3a9166a30d7aae587e26cd1fe820357f4
Author: Chris Morgan <macromorgan@hotmail.com>

iio: imu: inv_icm42607: Add Accelerometer for icm42607
    
Add icm42607 accelerometer sensor for icm42607.

> diff --git a/drivers/iio/imu/inv_icm42607/inv_icm42607_core.c b/drivers/iio/imu/inv_icm42607/inv_icm42607_core.c
> index 303a6a0b1b21e..45e031cefd4ae 100644
> --- a/drivers/iio/imu/inv_icm42607/inv_icm42607_core.c
> +++ b/drivers/iio/imu/inv_icm42607/inv_icm42607_core.c

[ ... ]

> +static void inv_icm42607_update_config(struct inv_icm42607_sensor_conf *conf,
> +				       struct inv_icm42607_sensor_conf *oldconf,
> +				       bool *config0, bool *config1)
> +{
> +	if (conf->mode < 0)
> +		conf->mode = oldconf->mode;

[ ... ]

> +int inv_icm42607_set_sensor_conf(struct inv_icm42607_state *st,
> +				 struct inv_icm42607_sensor_conf *conf,
> +				 enum iio_chan_type chan_type)
> +{
[ ... ]
> +	if (config0) {
[ ... ]
> +		oldconf->fs = conf->fs;
> +		oldconf->odr = conf->odr;
> +	}
> +
> +	if (config1) {
[ ... ]
> +		oldconf->filter = conf->filter;
> +	}
> +
> +	switch (chan_type) {
> +	case IIO_ACCEL:
> +		return inv_icm42607_set_pwr_mgmt0(st, gyro_mode, conf->mode);
> +	case IIO_ANGL_VEL:
> +		return inv_icm42607_set_pwr_mgmt0(st, conf->mode, accel_mode);
> +	default:
> +		return -EINVAL;
> +	}
> +}

[Severity: Medium]
Does this code miss updating the cached mode (e.g., oldconf->mode = conf->mode)?

It looks like fs, odr, and filter are properly cached, but mode is not. If the
cached mode is never updated, it could permanently stay OFF.

When a configuration parameter like scale or ODR is written via sysfs,
inv_icm42607_update_config() merges the requested change with the cached
mode. If the cached mode is incorrectly seen as OFF, it could inadvertently
power off the sensor despite an active runtime PM reference. This might also
break suspend/resume state tracking which relies on this cache.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260713215842.69097-1-macroalpha82@gmail.com?part=7

  reply	other threads:[~2026-07-13 22:16 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-07-13 21:58 [PATCH v16 00/10] Add Invensense ICM42607 Chris Morgan
2026-07-13 21:58 ` [PATCH v16 01/10] dt-bindings: iio: imu: icm42600: Add mount-matrix Chris Morgan
2026-07-13 21:58 ` [PATCH v16 02/10] dt-bindings: iio: imu: icm42600: Remove interrupts from required Chris Morgan
2026-07-13 22:08   ` sashiko-bot
2026-07-13 21:58 ` [PATCH v16 03/10] dt-bindings: iio: imu: icm42600: Add icm42607 Chris Morgan
2026-07-13 21:58 ` [PATCH v16 04/10] iio: imu: inv_icm42607: Add inv_icm42607 Core Driver Chris Morgan
2026-07-13 22:18   ` sashiko-bot
2026-07-14 10:56   ` Andy Shevchenko
2026-07-14 12:18   ` Uwe Kleine-König
2026-07-13 21:58 ` [PATCH v16 05/10] iio: imu: inv_icm42607: Add SPI For icm42607 Chris Morgan
2026-07-14 11:00   ` Andy Shevchenko
2026-07-13 21:58 ` [PATCH v16 06/10] iio: imu: inv_icm42607: Add PM support for icm42607 Chris Morgan
2026-07-13 22:22   ` sashiko-bot
2026-07-14 11:25   ` Andy Shevchenko
2026-07-13 21:58 ` [PATCH v16 07/10] iio: imu: inv_icm42607: Add Accelerometer " Chris Morgan
2026-07-13 22:16   ` sashiko-bot [this message]
2026-07-14 11:20   ` Andy Shevchenko
2026-07-14 11:21     ` Andy Shevchenko
2026-07-13 21:58 ` [PATCH v16 08/10] iio: imu: inv_icm42607: Add Gyroscope to icm42607 Chris Morgan
2026-07-13 21:58 ` [PATCH v16 09/10] iio: imu: inv_icm42607: Add Temp Support in icm42607 Chris Morgan
2026-07-13 22:13   ` sashiko-bot
2026-07-13 21:58 ` [PATCH v16 10/10] arm64: dts: rockchip: Add icm42607p IMU for RG-DS Chris Morgan

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=20260713221606.685F21F000E9@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=macroalpha82@gmail.com \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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