On 30/07/2022 12:17, Akhil P Oommen wrote:
Some clients like adreno gpu driver would like to ensure that its gdsc is collapsed at hardware during a gpu reset sequence. This is because it has a votable gdsc which could be ON due to a vote from another subsystem like tz, hyp etc or due to an internal hardware signal.
If this is votable, do we have any guarantee that the gdsc will collapse at all? How can we proceed if it did not collapse?
To allow this, gpucc driver can expose an interface to the client driver using reset framework. Using this the client driver can trigger a polling within the gdsc driver.
Trigger the polling made me think initially that we will actually trigger something in the HW. Instead the client uses reset framework to poll for the gdsc to be reset.
This series is rebased on top of linus's master branch. Related discussion: https://patchwork.freedesktop.org/patch/493144/ Akhil P Oommen (5): dt-bindings: clk: qcom: Support gpu cx gdsc reset clk: qcom: Allow custom reset ops clk: qcom: gpucc-sc7280: Add cx collapse reset support clk: qcom: gdsc: Add a reset op to poll gdsc collapse arm64: dts: qcom: sc7280: Add Reset support for gpu arch/arm64/boot/dts/qcom/sc7280.dtsi | 3 +++ drivers/clk/qcom/gdsc.c | 23 +++++++++++++++++++---- drivers/clk/qcom/gdsc.h | 7 +++++++ drivers/clk/qcom/gpucc-sc7280.c | 6 ++++++ drivers/clk/qcom/reset.c | 6 ++++++ drivers/clk/qcom/reset.h | 2 ++ include/dt-bindings/clock/qcom,gpucc-sc7280.h | 3 +++ 7 files changed, 46 insertions(+), 4 deletions(-)
-- With best wishes Dmitry