[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <faf716a9-8dc3-424e-2f16-3e4d66b3246c@linaro.org>
Date: Tue, 18 Oct 2022 21:55:57 -0400
From: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
To: Gokul krishna Krishnakumar <quic_gokukris@...cinc.com>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konrad.dybcio@...ainline.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>
Cc: linux-arm-msm@...r.kernel.org, linux-remoteproc@...r.kernel.org,
linux-kernel@...r.kernel.org, Trilok Soni <quic_tsoni@...cinc.com>,
Satya Durga Srinivasu Prabhala <quic_satyap@...cinc.com>,
Rajendra Nayak <quic_rjendra@...cinc.com>,
Elliot Berman <quic_eberman@...cinc.com>,
Guru Das Srinagesh <quic_gurus@...cinc.com>
Subject: Re: [PATCH v1 1/1] drivers: remoteproc: Add bus scaling capability
during bootup
On 18/10/2022 17:10, Gokul krishna Krishnakumar wrote:
> During bootup since remote processors cannot request for
> additional bus bandwidth from the interconect framework,
> platform driver should provide the proxy resources. Make
> a proxy vote for maximizing the bus bandwidth during bootup
> for a remote processor and remove it once processor is up.
>
(...)
>
> @@ -265,6 +340,7 @@ static void qcom_pas_handover(struct qcom_q6v5 *q6v5)
> clk_disable_unprepare(adsp->aggre2_clk);
> clk_disable_unprepare(adsp->xo);
> adsp_pds_disable(adsp, adsp->proxy_pds, adsp->proxy_pd_count);
> + do_bus_scaling(adsp, false);
> }
>
> static int adsp_stop(struct rproc *rproc)
> @@ -383,6 +459,22 @@ static int adsp_init_regulator(struct qcom_adsp *adsp)
> return 0;
> }
>
> +static void adsp_init_bus_scaling(struct qcom_adsp *adsp)
> +{
> + if (scm_perf_client)
> + goto get_rproc_client;
> +
> + scm_perf_client = of_icc_get(adsp->dev, "crypto_ddr");
Aren't you adding here new DT properties to the device? If so, this
requires updating bindings.
> + if (IS_ERR(scm_perf_client))
> + dev_warn(adsp->dev, "Crypto scaling not setup\n");
> +
> +get_rproc_client:
> + adsp->bus_client = of_icc_get(adsp->dev, "rproc_ddr");
> + if (IS_ERR(adsp->bus_client))
> + dev_warn(adsp->dev, "%s: No bus client\n", __func__);
> +
> +}
Best regards,
Krzysztof
Powered by blists - more mailing lists