Commit 05123e32 authored by Raviteja Laggyshetty's avatar Raviteja Laggyshetty Committed by Georgi Djakov
Browse files

interconnect: qcom: icc-rpmh: probe defer incase of missing QoS clock dependency



Return -EPROBE_DEFER from interconnect provider incase probe defer is
received from devm_clk_bulk_get_all(). This would help in reattempting
the inteconnect driver probe, once the required QoS clocks are
available.

Suggested-by: default avatarBjorn Andersson <andersson@kernel.org>
Signed-off-by: default avatarRaviteja Laggyshetty <quic_rlaggysh@quicinc.com>
Reviewed-by: default avatarKonrad Dybcio <konradybcio@kernel.org>
Fixes: 0a7be6b3 ("interconnect: qcom: icc-rpmh: Add QoS configuration support")
Link: https://lore.kernel.org/r/20240911094516.16901-1-quic_rlaggysh@quicinc.com


Signed-off-by: default avatarGeorgi Djakov <djakov@kernel.org>
parent 9852d85e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -311,6 +311,9 @@ int qcom_icc_rpmh_probe(struct platform_device *pdev)
		}

		qp->num_clks = devm_clk_bulk_get_all(qp->dev, &qp->clks);
		if (qp->num_clks == -EPROBE_DEFER)
			return dev_err_probe(dev, qp->num_clks, "Failed to get QoS clocks\n");

		if (qp->num_clks < 0 || (!qp->num_clks && desc->qos_clks_required)) {
			dev_info(dev, "Skipping QoS, failed to get clk: %d\n", qp->num_clks);
			goto skip_qos_config;