All of lore.kernel.org
 help / color / mirror / Atom feed
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
> 

  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.