Re: [PATCH 1/4] interconnect: qcom: Support bcm-voter-specific TCS wait behavior

Georgi Djakov
2020-07-02T09:02:33Z

Hi Mike,

On 6/23/20 07:08, Mike Tipton wrote:
> Currently, all bcm-voters set tcs_cmd::wait=true for the last VCD
> command in each TCS (AMC, WAKE, and SLEEP). However, some bcm-voters
> don't need the completion and instead need to optimize for latency. For
> instance, disabling wait-for-completion in the WAKE set can decrease
> resume latency and allow for certain operations to occur in parallel
> with the WAKE TCS triggering. This is only safe in very specific
> situations. Keep the default behavior of always waiting, but allow it to
> be overridden in devicetree.
>
> Signed-off-by: Mike Tipton <mdtipton@codeaurora.org>
> ---
> drivers/interconnect/qcom/bcm-voter.c | 32 ++++++++++++++++++---------
> 1 file changed, 21 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/qcom/bcm-voter.c
[..]
> @@ -336,7 +342,11 @@ static int qcom_icc_bcm_voter_probe(struct platform_device *pdev)
> return -ENOMEM;
>
> voter->dev = &pdev->dev;
> - voter->np = pdev->dev.of_node;
> + voter->np = np;
> +
> + if (of_property_read_u32(np, "qcom,tcs-wait", &voter->tcs_wait))

This DT property needs to be documented.

Thanks,
Georgi