SC8180x comes with interconnects having and missing IO address space, and variable number of clocks, so split it from common file for easier maintenance and to fix warnings like: sc8180x-lenovo-flex-5g.dtb: interconnect-0: 'reg' is a required property Signed-off-by: Vinod Koul <vkoul@xxxxxxxxxx> --- .../bindings/interconnect/qcom,rpmh.yaml | 11 --- .../interconnect/qcom,sc8180x-rpmh.yaml | 76 +++++++++++++++++++ 2 files changed, 76 insertions(+), 11 deletions(-) create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sc8180x-rpmh.yaml diff --git a/Documentation/devicetree/bindings/interconnect/qcom,rpmh.yaml b/Documentation/devicetree/bindings/interconnect/qcom,rpmh.yaml index 4d93ad415e0b..5cbc3be49e99 100644 --- a/Documentation/devicetree/bindings/interconnect/qcom,rpmh.yaml +++ b/Documentation/devicetree/bindings/interconnect/qcom,rpmh.yaml @@ -39,17 +39,6 @@ properties: - qcom,sc7180-npu-noc - qcom,sc7180-qup-virt - qcom,sc7180-system-noc - - qcom,sc8180x-aggre1-noc - - qcom,sc8180x-aggre2-noc - - qcom,sc8180x-camnoc-virt - - qcom,sc8180x-compute-noc - - qcom,sc8180x-config-noc - - qcom,sc8180x-dc-noc - - qcom,sc8180x-gem-noc - - qcom,sc8180x-mc-virt - - qcom,sc8180x-mmss-noc - - qcom,sc8180x-qup-virt - - qcom,sc8180x-system-noc - qcom,sdm670-aggre1-noc - qcom,sdm670-aggre2-noc - qcom,sdm670-config-noc diff --git a/Documentation/devicetree/bindings/interconnect/qcom,sc8180x-rpmh.yaml b/Documentation/devicetree/bindings/interconnect/qcom,sc8180x-rpmh.yaml new file mode 100644 index 000000000000..613af6caa71d --- /dev/null +++ b/Documentation/devicetree/bindings/interconnect/qcom,sc8180x-rpmh.yaml @@ -0,0 +1,76 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/interconnect/qcom,sc8180x-rpmh.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm RPMh Network-On-Chip Interconnect on SC8180X + +maintainers: + - Bjorn Andersson <andersson@xxxxxxxxxx> + - Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> + +description: | + RPMh interconnect providers support system bandwidth requirements through + RPMh hardware accelerators known as Bus Clock Manager (BCM). + + See also:: include/dt-bindings/interconnect/qcom,sc8180x.h + +properties: + compatible: + enum: + - qcom,sc8180x-aggre1-noc + - qcom,sc8180x-aggre1-noc + - qcom,sc8180x-aggre2-noc + - qcom,sc8180x-camnoc-virt + - qcom,sc8180x-compute-noc + - qcom,sc8180x-config-noc + - qcom,sc8180x-dc-noc + - qcom,sc8180x-gem-noc + - qcom,sc8180x-mc-virt + - qcom,sc8180x-mmss-noc + - qcom,sc8180x-qup-virt + - qcom,sc8180x-system-noc + + reg: + maxItems: 1 + + clocks: + minItems: 1 + maxItems: 2 + +allOf: + - $ref: qcom,rpmh-common.yaml# + - if: + properties: + compatible: + contains: + enum: + - qcom,sc8180x-camnoc-virt + - qcom,sc8180x-mc-virt + - qcom,sc8180x-qup-virt + then: + properties: + reg: false + else: + required: + - reg +required: + - compatible + +unevaluatedProperties: false + +examples: + - | + camnoc_virt: interconnect-0{ + compatible = "qcom,sc8180x-camnoc-virt"; + #interconnect-cells = <2>; + qcom,bcm-voters = <&apps_bcm_voter>; + }; + + aggre1_noc: interconnect@16e0000 { + compatible = "qcom,sc8180x-aggre1-noc"; + reg = <0 0x016e0000 0 0xd080>; + #interconnect-cells = <2>; + qcom,bcm-voters = <&apps_bcm_voter>; + }; -- 2.39.2