Re: [PATCH 2/2] clk: qcom: add IPQ9574 interconnect clocks support
From: Konrad Dybcio
Date: Fri Mar 22 2024 - 20:29:13 EST
On 21.03.2024 05:31, Varadarajan Narayanan wrote:
> Unlike MSM platforms that manage NoC related clocks and scaling
> from RPM, IPQ SoCs dont involve RPM in managing NoC related
> clocks and there is no NoC scaling.
>
> However, there is a requirement to enable some NoC interface
> clocks for accessing the peripheral controllers present on
> these NoCs.
>
> Hence adding a minimalistic interconnect driver that can enable
> the relevant clocks. This is similar to msm8996-cbf's usage of
> icc-clk framework.
>
> Signed-off-by: Varadarajan Narayanan <quic_varada@xxxxxxxxxxx>
> ---
[...]
> @@ -9,9 +9,16 @@
> #include <linux/of.h>
> #include <linux/platform_device.h>
> #include <linux/regmap.h>
> +#if IS_ENABLED(CONFIG_INTERCONNECT)
This is bad practice, especially given the reasoning for your changes.
It's best if you add a dependency on interconnect to this driver,
otherwise things will go into uncountable EPROBE_DEFERs if there are
nodes consuming icc handles, but the supplier never registers.
[...]
>
> static int gcc_ipq9574_probe(struct platform_device *pdev)
.and that approach could save the probe func from the absolute mess it
has become with this patch
Konrad