[PATCH] USB: pxa27x_udc: check return value of clk_enable
From: Zhaoyang Yu
Date: Sun Mar 01 2026 - 11:56:49 EST
clk_enable() may fail according to the API contract.
Previously, udc_enable() ignored its return value.
This patch checks the return value and logs an error
without continuing initialization if clk_enable fails.
Signed-off-by: Zhaoyang Yu <2426767509@xxxxxx>
---
drivers/usb/gadget/udc/pxa27x_udc.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/gadget/udc/pxa27x_udc.c b/drivers/usb/gadget/udc/pxa27x_udc.c
index 897f53601b5b..006d6d0a5f9a 100644
--- a/drivers/usb/gadget/udc/pxa27x_udc.c
+++ b/drivers/usb/gadget/udc/pxa27x_udc.c
@@ -1693,10 +1693,16 @@ static void udc_init_data(struct pxa_udc *dev)
*/
static void udc_enable(struct pxa_udc *udc)
{
+ int ret;
+
if (udc->enabled)
return;
- clk_enable(udc->clk);
+ ret = clk_enable(udc->clk);
+ if (ret) {
+ dev_err(udc->dev, "clk_enable failed: %d\n", ret);
+ return;
+ }
udc_writel(udc, UDCICR0, 0);
udc_writel(udc, UDCICR1, 0);
udc_clear_mask_UDCCR(udc, UDCCR_UDE);
--
2.34.1