On Tue, Feb 18, 2025, Heiko Stübner <heiko@xxxxxxxxx> wrote: > I was more thinking about fixing the correct thing, with something like: > > ----------- 8< ---------- > diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c > index cf7720b9172f..50faafbf5dda 100644 > --- a/drivers/clk/clk.c > +++ b/drivers/clk/clk.c > @@ -5258,6 +5258,10 @@ of_clk_get_hw_from_clkspec(struct of_phandle_args *clkspec) > if (!clkspec) > return ERR_PTR(-EINVAL); > > + /* Check if node in clkspec is in disabled/fail state */ > + if (!of_device_is_available(clkspec->np)) > + return ERR_PTR(-ENOENT); > + > mutex_lock(&of_clk_mutex); > list_for_each_entry(provider, &of_clk_providers, link) { > if (provider->node == clkspec->np) { > ----------- 8< ---------- > > Because right now the clk framework does not handle nodes in > failed/disabled state and would defer indefinitly. I've been testing the recent patches Jimmy Hon has posted to add the Orange Pi 5 Ultra DT and I ran into this bug. The Ultra uses HDMI1 for the HDMI TX. This patch successfully fixes the issue I was seeing. JE