Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] minor cleanup for dwc3-xilinx glue driver
@ 2026-05-23  7:08 Radhey Shyam Pandey
  2026-05-23  7:08 ` [PATCH v2 1/2] usb: dwc3: xilinx: fix missing space before closing comment delimiter Radhey Shyam Pandey
  2026-05-23  7:08 ` [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init Radhey Shyam Pandey
  0 siblings, 2 replies; 4+ messages in thread
From: Radhey Shyam Pandey @ 2026-05-23  7:08 UTC (permalink / raw)
  To: Thinh.Nguyen, gregkh, michal.simek, p.zabel
  Cc: linux-usb, linux-arm-kernel, linux-kernel, git,
	Radhey Shyam Pandey

Minor cleanups for the dwc3-xilinx glue driver:

- Fix a comment style violation (missing space before closing delimiter).
- Use reset_control_reset in versal init.

Changes for v2:
- Rephrased commit description for 2/2 patch.
- Drop functional fix (usb: dwc3: xilinx: fix error handling in zynqmp
  init error paths) from this series.

Radhey Shyam Pandey (2):
  usb: dwc3: xilinx: fix missing space before closing comment delimiter
  usb: dwc3: xilinx: use reset_control_reset() in versal init

 drivers/usb/dwc3/dwc3-xilinx.c | 18 +++++-------------
 1 file changed, 5 insertions(+), 13 deletions(-)


base-commit: c1ecb239fa3456529a32255359fc78b69eb9d847
-- 
2.43.0



^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2 1/2] usb: dwc3: xilinx: fix missing space before closing comment delimiter
  2026-05-23  7:08 [PATCH v2 0/2] minor cleanup for dwc3-xilinx glue driver Radhey Shyam Pandey
@ 2026-05-23  7:08 ` Radhey Shyam Pandey
  2026-05-23  7:08 ` [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init Radhey Shyam Pandey
  1 sibling, 0 replies; 4+ messages in thread
From: Radhey Shyam Pandey @ 2026-05-23  7:08 UTC (permalink / raw)
  To: Thinh.Nguyen, gregkh, michal.simek, p.zabel
  Cc: linux-usb, linux-arm-kernel, linux-kernel, git,
	Radhey Shyam Pandey

Add missing space before '*/' in an inline comment to follow
the kernel coding style.

Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>
Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
---
Changes for v2:
- Add Thinh Nguyen acked by tag.
---
 drivers/usb/dwc3/dwc3-xilinx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/dwc3/dwc3-xilinx.c b/drivers/usb/dwc3/dwc3-xilinx.c
index 9b9525592a85..02dc35e110b9 100644
--- a/drivers/usb/dwc3/dwc3-xilinx.c
+++ b/drivers/usb/dwc3/dwc3-xilinx.c
@@ -194,7 +194,7 @@ static int dwc3_xlnx_init_zynqmp(struct dwc3_xlnx *priv_data)
 	}
 
 	if (priv_data->usb3_phy) {
-		/* Set PIPE Power Present signal in FPD Power Present Register*/
+		/* Set PIPE Power Present signal in FPD Power Present Register */
 		writel(FPD_POWER_PRSNT_OPTION, priv_data->regs + XLNX_USB_FPD_POWER_PRSNT);
 		/* Set the PIPE Clock Select bit in FPD PIPE Clock register */
 		writel(PIPE_CLK_SELECT, priv_data->regs + XLNX_USB_FPD_PIPE_CLK);
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init
  2026-05-23  7:08 [PATCH v2 0/2] minor cleanup for dwc3-xilinx glue driver Radhey Shyam Pandey
  2026-05-23  7:08 ` [PATCH v2 1/2] usb: dwc3: xilinx: fix missing space before closing comment delimiter Radhey Shyam Pandey
@ 2026-05-23  7:08 ` Radhey Shyam Pandey
  2026-05-27 23:23   ` Thinh Nguyen
  1 sibling, 1 reply; 4+ messages in thread
From: Radhey Shyam Pandey @ 2026-05-23  7:08 UTC (permalink / raw)
  To: Thinh.Nguyen, gregkh, michal.simek, p.zabel
  Cc: linux-usb, linux-arm-kernel, linux-kernel, git,
	Radhey Shyam Pandey

Replace reset_control_assert()/deassert() with reset_control_reset().
For dwc3-xilinx, reset_control_reset() routes via the zynqmp reset
driver and uses PM_RESET_ACTION_PULSE, which performs assert and
deassert in firmware. This results in a single SMC call issuing a
reset pulse and taking the IP out of reset.

Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
---
Changes for v2:
- As suggested by Thinh rephrased commit description to explain
  firmware driven reset sequence.
---
 drivers/usb/dwc3/dwc3-xilinx.c | 16 ++++------------
 1 file changed, 4 insertions(+), 12 deletions(-)

diff --git a/drivers/usb/dwc3/dwc3-xilinx.c b/drivers/usb/dwc3/dwc3-xilinx.c
index 02dc35e110b9..b832505e1b04 100644
--- a/drivers/usb/dwc3/dwc3-xilinx.c
+++ b/drivers/usb/dwc3/dwc3-xilinx.c
@@ -98,18 +98,10 @@ static int dwc3_xlnx_init_versal(struct dwc3_xlnx *priv_data)
 
 	dwc3_xlnx_mask_phy_rst(priv_data, false);
 
-	/* Assert and De-assert reset */
-	ret = reset_control_assert(crst);
-	if (ret < 0) {
-		dev_err_probe(dev, ret, "failed to assert Reset\n");
-		return ret;
-	}
-
-	ret = reset_control_deassert(crst);
-	if (ret < 0) {
-		dev_err_probe(dev, ret, "failed to De-assert Reset\n");
-		return ret;
-	}
+	/* assert and deassert reset */
+	ret = reset_control_reset(crst);
+	if (ret)
+		return dev_err_probe(dev, ret, "failed to assert and deassert reset\n");
 
 	dwc3_xlnx_mask_phy_rst(priv_data, true);
 	dwc3_xlnx_set_coherency(priv_data, XLNX_USB2_TRAFFIC_ROUTE_CONFIG);
-- 
2.43.0



^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init
  2026-05-23  7:08 ` [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init Radhey Shyam Pandey
@ 2026-05-27 23:23   ` Thinh Nguyen
  0 siblings, 0 replies; 4+ messages in thread
From: Thinh Nguyen @ 2026-05-27 23:23 UTC (permalink / raw)
  To: Radhey Shyam Pandey
  Cc: Thinh Nguyen, gregkh@linuxfoundation.org, michal.simek@amd.com,
	p.zabel@pengutronix.de, linux-usb@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, git@amd.com

On Sat, May 23, 2026, Radhey Shyam Pandey wrote:
> Replace reset_control_assert()/deassert() with reset_control_reset().
> For dwc3-xilinx, reset_control_reset() routes via the zynqmp reset
> driver and uses PM_RESET_ACTION_PULSE, which performs assert and
> deassert in firmware. This results in a single SMC call issuing a
> reset pulse and taking the IP out of reset.
> 
> Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
> ---
> Changes for v2:
> - As suggested by Thinh rephrased commit description to explain
>   firmware driven reset sequence.
> ---
>  drivers/usb/dwc3/dwc3-xilinx.c | 16 ++++------------
>  1 file changed, 4 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/usb/dwc3/dwc3-xilinx.c b/drivers/usb/dwc3/dwc3-xilinx.c
> index 02dc35e110b9..b832505e1b04 100644
> --- a/drivers/usb/dwc3/dwc3-xilinx.c
> +++ b/drivers/usb/dwc3/dwc3-xilinx.c
> @@ -98,18 +98,10 @@ static int dwc3_xlnx_init_versal(struct dwc3_xlnx *priv_data)
>  
>  	dwc3_xlnx_mask_phy_rst(priv_data, false);
>  
> -	/* Assert and De-assert reset */
> -	ret = reset_control_assert(crst);
> -	if (ret < 0) {
> -		dev_err_probe(dev, ret, "failed to assert Reset\n");
> -		return ret;
> -	}
> -
> -	ret = reset_control_deassert(crst);
> -	if (ret < 0) {
> -		dev_err_probe(dev, ret, "failed to De-assert Reset\n");
> -		return ret;
> -	}
> +	/* assert and deassert reset */
> +	ret = reset_control_reset(crst);
> +	if (ret)
> +		return dev_err_probe(dev, ret, "failed to assert and deassert reset\n");
>  
>  	dwc3_xlnx_mask_phy_rst(priv_data, true);
>  	dwc3_xlnx_set_coherency(priv_data, XLNX_USB2_TRAFFIC_ROUTE_CONFIG);
> -- 
> 2.43.0
> 

Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com>

Thanks,
Thinh

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-05-27 23:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-23  7:08 [PATCH v2 0/2] minor cleanup for dwc3-xilinx glue driver Radhey Shyam Pandey
2026-05-23  7:08 ` [PATCH v2 1/2] usb: dwc3: xilinx: fix missing space before closing comment delimiter Radhey Shyam Pandey
2026-05-23  7:08 ` [PATCH v2 2/2] usb: dwc3: xilinx: use reset_control_reset() in versal init Radhey Shyam Pandey
2026-05-27 23:23   ` Thinh Nguyen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox