[PATCH v1 1/3] arm: dts: qcs615-ride: Remove unsupported USB clock reference

Sumit Garg sumit.garg at kernel.org
Tue Jan 20 13:07:34 CET 2026


On Tue, Jan 20, 2026 at 10:00:58AM +0530, Balaji Selvanathan wrote:
> Hi Sumit,
> 
> Thanks for the feedback. Please find reply below.
> 
> On 12/26/2025 3:52 PM, Sumit Garg wrote:
> > On Fri, Nov 14, 2025 at 12:08:02PM +0530, Balaji Selvanathan wrote:
> > > Remove GCC_USB3_PRIM_CLKREF_CLK from the USB controller node as it is
> > > not implemented in the U-Boot clock driver. Keep only the supported
> > > clocks to avoid clock warnings during boot.
> > Rather than overriding DT, why can't this be implmented in U-Boot? And
> > how why it isn't an essential clock for U-Boot operation?
> > 
> > -Sumit
> 
> GCC_USB3_PRIM_CLKREF_CLK seems to be a reference clock that is enabled by
> earlier boot stages before U-Boot starts: The clock is already ON when
> U-Boot starts - verified during boot. This is a reference clock with
> hardware voting mechanism, not typically controlled by software.
> 
> Without this override, we get "Clock 152 not found" warning message (as it
> is not there in the QCS615 clock driver.

Why not implement this clock handling in the U-Boot as it is being
handled in the kernel (see: drivers/clk/qcom/gcc-qcs615.c +2886)? You
can also seek a reference from sdm845, qcm2290 clk drivers in U-Boot
too.

Using DT overrides for missing simple functionality in U-Boot isn't
acceptable since we want to avoid as much overrides as possible.

-Sumit

> 
> Regards,
> 
> Balaji
> 
> 
> > 
> > > Signed-off-by: Balaji Selvanathan <balaji.selvanathan at oss.qualcomm.com>
> > > ---
> > >   arch/arm/dts/qcs615-ride-u-boot.dtsi | 14 ++++++++++++++
> > >   1 file changed, 14 insertions(+)
> > > 
> > > diff --git a/arch/arm/dts/qcs615-ride-u-boot.dtsi b/arch/arm/dts/qcs615-ride-u-boot.dtsi
> > > index 68fffc70fcb..d8af124cc27 100644
> > > --- a/arch/arm/dts/qcs615-ride-u-boot.dtsi
> > > +++ b/arch/arm/dts/qcs615-ride-u-boot.dtsi
> > > @@ -11,4 +11,18 @@
> > >   		      <0x0 0xc0000000 0x0 0xc0000000>,
> > >   		      <0x1 0x80000000 0x1 0x00000000>;
> > >   	};
> > > +	soc at 0 {
> > > +		/* Remove GCC_USB3_PRIM_CLKREF_CLK from usb_1 node to avoid U-Boot clock warnings */
> > > +		usb_1: usb at a6f8800 {
> > > +			/delete-property/ clocks;
> > > +			/delete-property/ clock-names;
> > > +			/* Keep only the clocks that are implemented in U-Boot clock driver */
> > > +			clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
> > > +				 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
> > > +				 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
> > > +				 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
> > > +				 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>;
> > > +			clock-names = "cfg_noc", "core", "iface", "sleep", "mock_utmi";
> > > +		};
> > > +	};
> > >   };
> > > -- 
> > > 2.34.1
> > > 


More information about the U-Boot mailing list