On Fri, Apr 25, 2025 at 06:11:11PM +0400, Alexey Charkov wrote: > Device tree bindings state that the clock is optional for UHCI platform > controllers, and some existing device trees don't provide those - such > as those for VIA/WonderMedia devices. > > The driver however fails to probe now if no clock is provided, because > devm_clk_get returns an error pointer in such case. > > Switch to devm_clk_get_optional instead, so that it could probe again > on those platforms where no clocks are given. > > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 26c502701c52 ("usb: uhci: Add clk support to uhci-platform") > Signed-off-by: Alexey Charkov <alchark@xxxxxxxxx> > --- > drivers/usb/host/uhci-platform.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/host/uhci-platform.c b/drivers/usb/host/uhci-platform.c > index a7c934404ebc7ed74f64265fafa7830809979ba5..62318291f5664c9ec94f24535c71d962e28354f3 100644 > --- a/drivers/usb/host/uhci-platform.c > +++ b/drivers/usb/host/uhci-platform.c > @@ -121,7 +121,7 @@ static int uhci_hcd_platform_probe(struct platform_device *pdev) > } > > /* Get and enable clock if any specified */ > - uhci->clk = devm_clk_get(&pdev->dev, NULL); > + uhci->clk = devm_clk_get_optional(&pdev->dev, NULL); Why does this need to go to all stable trees all of a sudden? This has been "broken" for years, what changed recently to cause this to show up? thanks, greg k-h