All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Stein <alexander.stein@ew.tq-group.com>
To: Wolfram Sang <wsa@kernel.org>,
	Alexander Stein <alexander.stein@ew.tq-group.com>,
	Marc Kleine-Budde <mkl@pengutronix.de>,
	NXP Linux Team <linux-imx@nxp.com>,
	"A. Sverdlin" <alexander.sverdlin@siemens.com>,
	Dong Aisheng <aisheng.dong@nxp.com>,
	Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	linux-i2c@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3] i2c: lpi2c: cache peripheral clock rate
Date: Tue, 02 May 2023 08:50:06 +0200	[thread overview]
Message-ID: <2143344.irdbgypaU6@steina-w> (raw)
In-Reply-To: <ZE4TU0rCw9MSwrmB@sai>

Hello Wolfgang,

Am Sonntag, 30. April 2023, 09:05:55 CEST schrieb Wolfram Sang:
> * PGP Signed by an unknown key
> 
> > > IIRC this is a general problem^w limitation of the clock framework,
> > > clock providers cannot use clocks themselves in certain callback, e.g.
> > > set_rate.
> > 
> > Well, that's essentially impossible when this clock provider is attached
> > via i2c. i2c transfers potentially need to change or prepare clocks.
> 
> So, as I get it, this is not a specific lpi2c problem but affecting any
> I2C controller driver which uses get_rate() to setup a transfer to a
> remote I2C clock provider? And this lockdep warning is a false-positive?

Yes, IMHO this could potentially occur on every I2C controller driver, if a 
clock provider while holding the clk_prepare_lock, e.g. during registration, 
issues an i2c transfer.
I'm not so sure if this is a false-positive, but more like trying to do a 
nested lock.

Best regards
Alexander
-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/



WARNING: multiple messages have this Message-ID (diff)
From: Alexander Stein <alexander.stein@ew.tq-group.com>
To: Wolfram Sang <wsa@kernel.org>,
	Alexander Stein <alexander.stein@ew.tq-group.com>,
	Marc Kleine-Budde <mkl@pengutronix.de>,
	NXP Linux Team <linux-imx@nxp.com>,
	"A. Sverdlin" <alexander.sverdlin@siemens.com>,
	Dong Aisheng <aisheng.dong@nxp.com>,
	Shawn Guo <shawnguo@kernel.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Pengutronix Kernel Team <kernel@pengutronix.de>,
	Fabio Estevam <festevam@gmail.com>,
	linux-i2c@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3] i2c: lpi2c: cache peripheral clock rate
Date: Tue, 02 May 2023 08:50:06 +0200	[thread overview]
Message-ID: <2143344.irdbgypaU6@steina-w> (raw)
In-Reply-To: <ZE4TU0rCw9MSwrmB@sai>

Hello Wolfgang,

Am Sonntag, 30. April 2023, 09:05:55 CEST schrieb Wolfram Sang:
> * PGP Signed by an unknown key
> 
> > > IIRC this is a general problem^w limitation of the clock framework,
> > > clock providers cannot use clocks themselves in certain callback, e.g.
> > > set_rate.
> > 
> > Well, that's essentially impossible when this clock provider is attached
> > via i2c. i2c transfers potentially need to change or prepare clocks.
> 
> So, as I get it, this is not a specific lpi2c problem but affecting any
> I2C controller driver which uses get_rate() to setup a transfer to a
> remote I2C clock provider? And this lockdep warning is a false-positive?

Yes, IMHO this could potentially occur on every I2C controller driver, if a 
clock provider while holding the clk_prepare_lock, e.g. during registration, 
issues an i2c transfer.
I'm not so sure if this is a false-positive, but more like trying to do a 
nested lock.

Best regards
Alexander
-- 
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2023-05-02  6:50 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-10 13:08 [PATCH v3] i2c: lpi2c: cache peripheral clock rate A. Sverdlin
2023-03-10 13:08 ` A. Sverdlin
2023-04-21 13:48 ` Alexander Stein
2023-04-21 13:48   ` Alexander Stein
2023-04-21 13:59   ` Marc Kleine-Budde
2023-04-21 13:59     ` Marc Kleine-Budde
2023-04-24  7:03     ` Alexander Stein
2023-04-24  7:03       ` Alexander Stein
2023-04-30  7:05       ` Wolfram Sang
2023-04-30  7:05         ` Wolfram Sang
2023-05-02  6:50         ` Alexander Stein [this message]
2023-05-02  6:50           ` Alexander Stein
2023-05-02  7:03           ` Marc Kleine-Budde
2023-05-02  7:03             ` Marc Kleine-Budde
2023-04-21 14:10   ` Sverdlin, Alexander
2023-04-21 14:10     ` Sverdlin, Alexander
2023-05-15  9:11   ` Alexander Stein
2023-05-15  9:11     ` Alexander Stein
2023-05-15 12:04     ` Sverdlin, Alexander
2023-05-15 12:04       ` Sverdlin, Alexander
2023-05-15 12:32       ` Alexander Stein
2023-05-15 12:32         ` Alexander Stein
2023-05-15 12:37         ` Sverdlin, Alexander
2023-05-15 12:37           ` Sverdlin, Alexander
2023-05-15 13:11   ` Sverdlin, Alexander
2023-05-15 13:11     ` Sverdlin, Alexander
2023-04-24  8:08 ` Alexander Stein
2023-04-24  8:08   ` Alexander Stein

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=2143344.irdbgypaU6@steina-w \
    --to=alexander.stein@ew.tq-group.com \
    --cc=aisheng.dong@nxp.com \
    --cc=alexander.sverdlin@siemens.com \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mkl@pengutronix.de \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    --cc=wsa@kernel.org \
    /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.