summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Gu <ustc.gu@gmail.com>2026-03-16 18:30:06 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2026-03-18 18:18:22 +0300
commit1a122198ee26d2f328edae802b2ca4fa0518a20a (patch)
treefae64f039863bf2dc66cc0f42623a4f9c637754e
parentf97e96c303d689708f7f713d8f3afcc31f1237e9 (diff)
downloadlinux-1a122198ee26d2f328edae802b2ca4fa0518a20a.tar.xz
dwc3: google: Fix PM domain leak in dwc3_google_probe()
When syscon_regmap_lookup_by_phandle_args() fails, the function was returning directly without cleaning up the power domain initialized earlier by dwc3_google_pm_domain_init(). Fix by jumping to err_deinit_pdom to properly clean up resources. Fixes: 8995a37371bf4 ("usb: dwc3: Add Google Tensor SoC DWC3 glue driver") Signed-off-by: Felix Gu <ustc.gu@gmail.com> Acked-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com> Link: https://patch.msgid.link/20260316-dwc3-google-v1-1-c9bde1b02f62@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/dwc3/dwc3-google.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/usb/dwc3/dwc3-google.c b/drivers/usb/dwc3/dwc3-google.c
index 2105c72af753..4ca567ec01d0 100644
--- a/drivers/usb/dwc3/dwc3-google.c
+++ b/drivers/usb/dwc3/dwc3-google.c
@@ -385,8 +385,9 @@ static int dwc3_google_probe(struct platform_device *pdev)
"google,usb-cfg-csr",
ARRAY_SIZE(args), args);
if (IS_ERR(google->usb_cfg_regmap)) {
- return dev_err_probe(dev, PTR_ERR(google->usb_cfg_regmap),
- "invalid usb cfg csr\n");
+ ret = dev_err_probe(dev, PTR_ERR(google->usb_cfg_regmap),
+ "invalid usb cfg csr\n");
+ goto err_deinit_pdom;
}
google->host_cfg_offset = args[0];