From: "Alvin Šipraga" <alvin.sipraga@analog.com>
To: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Cc: tomm.merciai@gmail.com, prabhakar.mahadev-lad.rj@bp.renesas.com,
linux-renesas-soc@vger.kernel.org, biju.das.jz@bp.renesas.com,
Peter Rosin <peda@lysator.liu.se>,
Fabrizio Castro <fabrizio.castro.jz@renesas.com>,
Philipp Zabel <p.zabel@pengutronix.de>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] mux: rzv2h-vbenctl: Add suspend and resume support
Date: Tue, 3 Nov 2026 16:12:05 +0100 [thread overview]
Message-ID: <aun5r6ZwsjDnu3_5@analog.com> (raw)
In-Reply-To: <26da5ba32948a30dd70475ad2ece3c84dcab4eed.1791389435.git.tommaso.merciai.xr@bp.renesas.com>
On Thu, Oct 08, 2026 at 09:44:47AM +0200, Tommaso Merciai wrote:
> On deep sleep the USB2PHY block loses power and the VBUS_SEL bit is
> cleared. The mux state is read during suspend and stored in the private
> memory of the mux_chip. Then the state is restored during resume.
>
> Signed-off-by: Tommaso Merciai <tommaso.merciai.xr@bp.renesas.com>
Reviewed-by: Alvin Šipraga <alvin.sipraga@analog.com>
> ---
> drivers/mux/rzv2h-vbenctl.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/drivers/mux/rzv2h-vbenctl.c b/drivers/mux/rzv2h-vbenctl.c
> index 2699458045f3..d088ac3cab2a 100644
> --- a/drivers/mux/rzv2h-vbenctl.c
> +++ b/drivers/mux/rzv2h-vbenctl.c
> @@ -15,6 +15,7 @@
>
> struct mux_rzv2h_vbenctl_priv {
> struct regmap_field *field;
> + unsigned int hardware_state;
> };
>
> static int mux_rzv2h_vbenctl_set(struct mux_control *mux, int state)
> @@ -60,9 +61,29 @@ static int mux_rzv2h_vbenctl_probe(struct auxiliary_device *adev,
> if (ret < 0)
> return dev_err_probe(dev, ret, "Failed to register mux chip\n");
>
> + auxiliary_set_drvdata(adev, priv);
> +
> return 0;
> }
>
> +static int mux_rzv2h_vbenctl_suspend(struct device *dev)
> +{
> + struct mux_rzv2h_vbenctl_priv *priv = dev_get_drvdata(dev);
> +
> + return regmap_field_read(priv->field, &priv->hardware_state);
> +}
> +
> +static int mux_rzv2h_vbenctl_resume(struct device *dev)
> +{
> + struct mux_rzv2h_vbenctl_priv *priv = dev_get_drvdata(dev);
> +
> + return regmap_field_write(priv->field, priv->hardware_state);
> +}
> +
> +static DEFINE_SIMPLE_DEV_PM_OPS(mux_rzv2h_vbenctl_pm_ops,
> + mux_rzv2h_vbenctl_suspend,
> + mux_rzv2h_vbenctl_resume);
> +
> static const struct auxiliary_device_id mux_rzv2h_vbenctl_ids[] = {
> { .name = "rzv2h_usb2phy_reset.vbenctl" },
> { /* sentinel */ }
> @@ -73,6 +94,9 @@ static struct auxiliary_driver mux_rzv2h_vbenctl_driver = {
> .name = "vbenctl",
> .probe = mux_rzv2h_vbenctl_probe,
> .id_table = mux_rzv2h_vbenctl_ids,
> + .driver = {
> + .pm = pm_sleep_ptr(&mux_rzv2h_vbenctl_pm_ops),
> + },
> };
> module_auxiliary_driver(mux_rzv2h_vbenctl_driver);
>
> --
> 2.54.0
>
next prev parent reply other threads:[~2026-11-03 15:12 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-08 7:44 [PATCH 0/2] Restore RZ/V2H(P) USB2PHY reset and VBENCTL mux state on resume Tommaso Merciai
2026-10-08 7:44 ` [PATCH 1/2] reset: rzv2h-usb2phy: Add suspend/resume support Tommaso Merciai
2026-11-03 11:05 ` Philipp Zabel
2026-11-03 12:06 ` Tommaso Merciai
2026-10-08 7:44 ` [PATCH 2/2] mux: rzv2h-vbenctl: Add suspend and resume support Tommaso Merciai
2026-11-03 15:12 ` Alvin Šipraga [this message]
2026-11-02 14:35 ` [PATCH 0/2] Restore RZ/V2H(P) USB2PHY reset and VBENCTL mux state on resume Tommaso Merciai
2026-11-03 12:37 ` Philipp Zabel
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=aun5r6ZwsjDnu3_5@analog.com \
--to=alvin.sipraga@analog.com \
--cc=biju.das.jz@bp.renesas.com \
--cc=fabrizio.castro.jz@renesas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=p.zabel@pengutronix.de \
--cc=peda@lysator.liu.se \
--cc=prabhakar.mahadev-lad.rj@bp.renesas.com \
--cc=tomm.merciai@gmail.com \
--cc=tommaso.merciai.xr@bp.renesas.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.