Re: [PATCH V2 1/2] soc: qcom-geni-se: Cleanup the code to remove proxy votes

From: rojay
Date: Mon Mar 22 2021 - 07:03:25 EST


On 2021-03-18 22:43, Matthias Kaehlcke wrote:
On Thu, Mar 18, 2021 at 04:40:08PM +0530, Roja Rani Yarubandi wrote:
ICC core and platforms drivers supports sync_state feature, which
ensures that the default ICC BW votes from the bootloader is not
removed until all it's consumers are probes.

The proxy votes were needed in case other QUP child drivers
I2C, SPI probes before UART, they can turn off the QUP-CORE clock
which is shared resources for all QUP driver, this causes unclocked
access to HW from earlycon.

Given above support from ICC there is no longer need to maintain
proxy votes on QUP-CORE ICC node from QUP wrapper driver for early
console usecase, the default votes won't be removed until real
console is probed.

Signed-off-by: Roja Rani Yarubandi <rojay@xxxxxxxxxxxxxx>
Signed-off-by: Akash Asthana <akashast@xxxxxxxxxxxxxx>

I suggest to mention that this is essentially a revert of commit
048eb908a1f2 ("soc: qcom-geni-se: Add interconnect support to fix
earlycon crash"). This makes the life of reviewers easier and it's
also good to have the reference in the git history.


Ok.

You could also mention commit 7d3b0b0d8184 ("interconnect: qcom:
Use icc_sync_state") in the intro.


Ok.

I tried to test by first reproducing the original issue without
'sync_state' in the ICC, but wasn't successful, probably something
changed in the boot/ICC timing in the meantime ¯\_(ツ)_/¯.


Need to remove runtime auto suspend support from SPI/I2C as well, as it was
masking the issue by delaying to turn off the resources by 250ms.

Reviewed-by: Matthias Kaehlcke <mka@xxxxxxxxxxxx>