[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250614121329.7720ff33@kernel.org>
Date: Sat, 14 Jun 2025 12:13:29 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Kory Maincent <kory.maincent@...tlin.com>
Cc: Andrew Lunn <andrew@...n.ch>, Oleksij Rempel <o.rempel@...gutronix.de>,
"David S. Miller" <davem@...emloft.net>, Eric Dumazet
<edumazet@...gle.com>, Paolo Abeni <pabeni@...hat.com>, Jonathan Corbet
<corbet@....net>, Donald Hunter <donald.hunter@...il.com>, Rob Herring
<robh@...nel.org>, Andrew Lunn <andrew+netdev@...n.ch>, Simon Horman
<horms@...nel.org>, Heiner Kallweit <hkallweit1@...il.com>, Russell King
<linux@...linux.org.uk>, Krzysztof Kozlowski <krzk+dt@...nel.org>, Conor
Dooley <conor+dt@...nel.org>, Liam Girdwood <lgirdwood@...il.com>, Mark
Brown <broonie@...nel.org>, Thomas Petazzoni
<thomas.petazzoni@...tlin.com>, netdev@...r.kernel.org,
linux-doc@...r.kernel.org, Kyle Swenson <kyle.swenson@....tech>, Dent
Project <dentproject@...uxfoundation.org>, kernel@...gutronix.de, Maxime
Chevallier <maxime.chevallier@...tlin.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next v13 04/13] net: pse-pd: Add support for PSE
power domains
On Tue, 10 Jun 2025 10:11:38 +0200 Kory Maincent wrote:
> +static void __pse_pw_d_release(struct kref *kref)
> +{
> + struct pse_power_domain *pw_d = container_of(kref,
> + struct pse_power_domain,
> + refcnt);
> +
> + regulator_put(pw_d->supply);
> + xa_erase(&pse_pw_d_map, pw_d->id);
> +}
> +
> +/**
> + * pse_flush_pw_ds - flush all PSE power domains of a PSE
> + * @pcdev: a pointer to the initialized PSE controller device
> + */
> +static void pse_flush_pw_ds(struct pse_controller_dev *pcdev)
> +{
> + struct pse_power_domain *pw_d;
> + int i;
> +
> + for (i = 0; i < pcdev->nr_lines; i++) {
> + if (!pcdev->pi[i].pw_d)
> + continue;
> +
> + pw_d = xa_load(&pse_pw_d_map, pcdev->pi[i].pw_d->id);
> + if (!pw_d)
> + continue;
> +
> + kref_put_mutex(&pw_d->refcnt, __pse_pw_d_release,
> + &pse_pw_d_mutex);
> + }
> +}
AFAIU the release function (__pse_pw_d_release) is supposed to release
the mutex.
Powered by blists - more mailing lists