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

Mike Tipton
2020-07-02T21:01:33Z

On 7/2/2020 2:02 AM, Georgi Djakov wrote:
> 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.
Whoops, will do.

>
> Thanks,
> Georgi
>