Re: [PATCH v1 1/1] drivers: remoteproc: Add bus scaling capability during bootup

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux