Re: [PATCH] arm64: dts: qcom: ipq6018: add #power-domain-cells for gcc node

From: Fenglin Wu
Date: Thu Jan 04 2024 - 05:55:36 EST




On 1/4/2024 6:49 PM, Dmitry Baryshkov wrote:
On Thu, 4 Jan 2024 at 12:41, Fenglin Wu <quic_fenglinw@xxxxxxxxxxx> wrote:



On 1/4/2024 6:32 PM, Robert Marko wrote:

On 04. 01. 2024. 11:16, Konrad Dybcio wrote:
On 4.01.2024 11:13, Fenglin Wu wrote:

On 1/4/2024 5:53 PM, Dmitry Baryshkov wrote:
On Thu, 4 Jan 2024 at 10:06, Fenglin Wu via B4 Relay
<devnull+quic_fenglinw.quicinc.com@xxxxxxxxxx> wrote:
From: Fenglin Wu <quic_fenglinw@xxxxxxxxxxx>

Property '#power-domain-cells' is required as per defined in
qcom,gcc.yaml
so add it for ipq6018 gcc device node to eliminate following
warning in
dtbs_check:

arch/arm64/boot/dts/qcom/ipq6018-cp01-c1.dtb: gcc@1800000:
'#power-domain-cells' is a required property
from schema $id:
http://devicetree.org/schemas/clock/qcom,gcc-ipq6018.yaml#
But ipq6018 doesn't implement GDSC support. So for the sake of fixing
the warning you are adding a bogus property.

I agree. However, there are also some gcc drivers not implementing
GDSC support but the bindings are adding '#power-domain-cells' in the
DT example, such as: qcom,gcc-apq8064.yaml, qcom,gcc-ipq4019.yaml,
qcom,gcc-ipq6018.yaml, qcom,gcc-ipq8064.yaml, qcom,gcc-msm8660.yaml.

Actually I thought that maybe we should do a clean up by removing
'#power-domain-cells' out of the qcom,gcc.yaml binding and only
adding it into individual qcom,gcc-xxx.yaml for the driver which has
implemented GDSC support. I checked this with Taniya offline, but she
prefers only fixing it in ipq6018.dtsi as it doesn't hurt anything by
adding the property, and she expects the GDSC support should be
existing in most of qcom,gcc drivers especially the newer Qcom chipsets.
Before we start changing anything, we should assess whether these
platforms actually have GDSCs within this clock controller block,
even if they are (currently) not described in the clk driver.
Hi,
IPQ6018 has GDSC-s, at least for the USB-s.
I tried configuring them a while ago, but the USB2.0 GDSC seems to
either have a HW bug or
it uses some special configuration as its status bits never show that
its ON [1].

[1]
https://patchwork.kernel.org/project/linux-arm-msm/patch/20231025104457.628109-2-robimarko@xxxxxxxxx/

Thanks for the link! I checked the spec internal, and I did see GDSC
device for USB0/USB1 controller is present in GCC clock controller.
So considering there is a patch ongoing to add GDSC device for ipq6018
gcc driver, can the DT commit which adds '#power-domain-cells' be accepted?

What for?
Maria (quic_aiquny@xxxxxxxxxxx, copied) is working on automation tool in Qcom internally to check dt_binding and dtbs and she expects all the warnings/errors reported on Qcom board files can be fixed. She can help to comment further.