From: Esben Haabendal <esben@geanix.com>
To: "Jonathan Cameron" <jic23@kernel.org>
Cc: "Martin Kepplinger" <martink@posteo.de>,
"Lars-Peter Clausen" <lars@metafoo.de>,
"Rob Herring" <robh@kernel.org>,
"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>,
"Sean Nyekjaer" <sean@geanix.com>,
"David Lechner" <dlechner@baylibre.com>,
"Nuno Sá" <nuno.sa@analog.com>,
"Andy Shevchenko" <andy@kernel.org>,
"Martin Kepplinger" <martin.kepplinger@theobroma-systems.com>,
"Christoph Muellner" <christoph.muellner@theobroma-systems.com>,
linux-iio@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v8 9/9] iio: accel: mma8452: Support interrupt sharing
Date: Thu, 17 Sep 2026 08:24:41 +0200 [thread overview]
Message-ID: <871pas8keu.fsf@geanix.com> (raw)
In-Reply-To: <20260917034607.2674781e@jic23-hlaptop>
"Jonathan Cameron" <jic23@kernel.org> writes:
>> >> + if (pm_status == 0)
>> >> + return IRQ_NONE; /* device is powered down */
>> >
>> >> @@ -1784,29 +1796,62 @@ static void mma8452_remove(struct i2c_client *client)
>> >> #ifdef CONFIG_PM
>> >> static int mma8452_runtime_suspend(struct device *dev)
>> >> {
>> >> - struct iio_dev *indio_dev = i2c_get_clientdata(to_i2c_client(dev));
>> >> + struct i2c_client *client = to_i2c_client(dev);
>> >> + struct iio_dev *indio_dev = i2c_get_clientdata(client);
>> >> struct mma8452_data *data = iio_priv(indio_dev);
>> >> int ret;
>> >>
>> >> - scoped_guard(mutex, &data->lock)
>> >> - ret = mma8452_standby(data);
>> >> + guard(mutex)(&data->lock);
>> > Mixing guards...
>>
>> Yes, I know. Resolving that turned out to be a bit more painful than I
>> thought. I do have that resolved in the next series I keep on talking
>> about. But distilling that as a separate patch for adding to this series
>> turned out to be impossible, as it relies on some of the other work,
>> like refactoring of the ACTIVE/STANDBY state handling (synchronization),
>> and most importantly, the switch to using regmap caching to properly
>> handle restoring of register values on resume.
>>
>> I am therefore hoping that we can find some way to agree on things here,
>> and then properly resolve it in the next series...
>
> Ok. It is fine for now. Perhaps add a comment along the lines of
> /* Must be first action in scope that needs to be undone on error */
>
> And hopefully it won't be around long enough for anyone to copy it
> into more code!
Ok. I got a bit trigger happy, so v9 is now sent with a proposed
(temporary) fix for it it instead. If that meets resistance, I will
consider falling back to adding the comment you proposed above.
/Esben
prev parent reply other threads:[~2026-09-17 6:24 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-07 14:50 [PATCH v8 0/9] io: accel: mma8452: Allow open drain interrupt pin configuration Esben Haabendal
2026-09-07 14:50 ` [PATCH v8 1/9] dt-bindings: iio: accel: mma8452: Add drive-open-drain Esben Haabendal
2026-09-07 14:50 ` [PATCH v8 2/9] iio: accel: mma8452: Fix use-after-free bug in error error path Esben Haabendal
2026-09-07 15:04 ` sashiko-bot
2026-09-07 15:08 ` Esben Haabendal
2026-09-13 23:09 ` Jonathan Cameron
2026-09-14 6:49 ` Esben Haabendal
2026-09-07 14:50 ` [PATCH v8 3/9] iio: accel: mma8452: Optimize struct mma8452_data member orders Esben Haabendal
2026-09-07 14:50 ` [PATCH v8 4/9] iio: accel: mma8452: Only apply trigger type when not set by firmware Esben Haabendal
2026-09-07 15:01 ` sashiko-bot
2026-09-07 14:51 ` [PATCH v8 5/9] iio: accel: mma8452: Fix unintended comment indent Esben Haabendal
2026-09-07 15:04 ` Joshua Crofts
2026-09-07 14:51 ` [PATCH v8 6/9] iio: accel: mma8452: Add comment block for struct mma8452_data Esben Haabendal
2026-09-07 14:58 ` sashiko-bot
2026-09-07 15:07 ` Esben Haabendal
2026-09-07 15:14 ` Joshua Crofts
2026-09-07 16:28 ` Esben Haabendal
2026-09-08 10:36 ` Andy Shevchenko
2026-09-13 23:15 ` Jonathan Cameron
2026-09-14 6:50 ` Esben Haabendal
2026-09-07 14:51 ` [PATCH v8 7/9] iio: accel: mma8452: Allow open drain interrupt pin configuration Esben Haabendal
2026-09-07 15:05 ` sashiko-bot
2026-09-07 15:09 ` Esben Haabendal
2026-09-07 14:51 ` [PATCH v8 8/9] iio: accel: mma8452: Use proper error code when missing device model Esben Haabendal
2026-09-07 14:51 ` [PATCH v8 9/9] iio: accel: mma8452: Support interrupt sharing Esben Haabendal
2026-09-07 15:08 ` sashiko-bot
2026-09-07 15:58 ` Esben Haabendal
2026-09-08 9:15 ` Esben Haabendal
2026-09-07 15:10 ` Joshua Crofts
2026-09-07 16:36 ` Esben Haabendal
2026-09-09 9:21 ` Joshua Crofts
2026-09-13 23:22 ` Jonathan Cameron
2026-09-14 7:15 ` Esben Haabendal
2026-09-15 6:21 ` Esben Haabendal
2026-09-17 2:47 ` Jonathan Cameron
2026-09-17 6:34 ` Esben Haabendal
2026-09-17 2:46 ` Jonathan Cameron
2026-09-17 6:24 ` Esben Haabendal [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=871pas8keu.fsf@geanix.com \
--to=esben@geanix.com \
--cc=andy@kernel.org \
--cc=christoph.muellner@theobroma-systems.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dlechner@baylibre.com \
--cc=jic23@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=martin.kepplinger@theobroma-systems.com \
--cc=martink@posteo.de \
--cc=nuno.sa@analog.com \
--cc=robh@kernel.org \
--cc=sean@geanix.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.