clk: qcom: gdsc: Handle GDSC regulator supplies
authorBjorn Andersson <bjorn.andersson@linaro.org>
Fri, 17 Apr 2020 07:00:41 +0000 (00:00 -0700)
committerStephen Boyd <sboyd@kernel.org>
Thu, 14 May 2020 21:23:38 +0000 (14:23 -0700)
commit37416e554961b34451f3a160acd1e27656103e9f
treed8db74f65ba1b265c5be8dcd855cc0eeaa42e6c3
parentf47ab3c2f5338828a67e89d5f688d2cef9605245
clk: qcom: gdsc: Handle GDSC regulator supplies

Certain GDSCs, such as the GPU_GX on MSM8996, requires that the upstream
regulator supply is powered in order to be turned on.

It's not guaranteed that the bootloader will leave these supplies on and
the driver core will attempt to enable any GDSCs before allowing the
individual drivers to probe defer on the PMIC regulator driver not yet
being present.

So the gdsc driver needs to be made aware of supplying regulators and
probe defer on their absence, and it needs to enable and disable the
regulator accordingly.

Voltage adjustments of the supplying regulator are deferred to the
client drivers themselves.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lkml.kernel.org/r/20200417070044.1376212-2-bjorn.andersson@linaro.org
Reviewed-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/qcom/gdsc.c
drivers/clk/qcom/gdsc.h