diff options
Diffstat (limited to 'dts/Bindings/interconnect/qcom,sdm660.yaml')
-rw-r--r-- | dts/Bindings/interconnect/qcom,sdm660.yaml | 159 |
1 files changed, 41 insertions, 118 deletions
diff --git a/dts/Bindings/interconnect/qcom,sdm660.yaml b/dts/Bindings/interconnect/qcom,sdm660.yaml index bcd41e491f..8f6bc63996 100644 --- a/dts/Bindings/interconnect/qcom,sdm660.yaml +++ b/dts/Bindings/interconnect/qcom,sdm660.yaml @@ -7,16 +7,13 @@ $schema: http://devicetree.org/meta-schemas/core.yaml# title: Qualcomm SDM660 Network-On-Chip interconnect maintainers: - - AngeloGioacchino Del Regno <kholk11@gmail.com> + - Konrad Dybcio <konradybcio@kernel.org> description: | The Qualcomm SDM660 interconnect providers support adjusting the bandwidth requirements between the various NoC fabrics. properties: - reg: - maxItems: 1 - compatible: enum: - qcom,sdm660-a2noc @@ -26,160 +23,86 @@ properties: - qcom,sdm660-mnoc - qcom,sdm660-snoc - '#interconnect-cells': - const: 1 + reg: + maxItems: 1 - clocks: + clock-names: minItems: 1 - maxItems: 7 + maxItems: 5 - clock-names: + clocks: minItems: 1 - maxItems: 7 + maxItems: 5 required: - compatible - reg - - '#interconnect-cells' - - clock-names - - clocks -additionalProperties: false +unevaluatedProperties: false allOf: + - $ref: qcom,rpm-common.yaml# - if: properties: compatible: - contains: - enum: - - qcom,sdm660-mnoc + const: qcom,sdm660-mnoc + then: properties: clocks: items: - - description: Bus Clock. - - description: Bus A Clock. - description: CPU-NoC High-performance Bus Clock. + clock-names: - items: - - const: bus - - const: bus_a - - const: iface + const: iface - if: properties: compatible: - contains: - enum: - - qcom,sdm660-a2noc + const: qcom,sdm660-a2noc + then: properties: clocks: items: - - description: Bus Clock. - - description: Bus A Clock. - description: IPA Clock. - description: UFS AXI Clock. - description: Aggregate2 UFS AXI Clock. - description: Aggregate2 USB3 AXI Clock. - description: Config NoC USB2 AXI Clock. + clock-names: items: - - const: bus - - const: bus_a - const: ipa - const: ufs_axi - const: aggre2_ufs_axi - const: aggre2_usb3_axi - const: cfg_noc_usb2_axi - - if: - properties: - compatible: - contains: - enum: - - qcom,sdm660-bimc - - qcom,sdm660-cnoc - - qcom,sdm660-gnoc - - qcom,sdm660-snoc - then: - properties: - clocks: - items: - - description: Bus Clock. - - description: Bus A Clock. - clock-names: - items: - - const: bus - - const: bus_a - examples: - | - #include <dt-bindings/clock/qcom,rpmcc.h> - #include <dt-bindings/clock/qcom,mmcc-sdm660.h> - #include <dt-bindings/clock/qcom,gcc-sdm660.h> - - bimc: interconnect@1008000 { - compatible = "qcom,sdm660-bimc"; - reg = <0x01008000 0x78000>; - #interconnect-cells = <1>; - clock-names = "bus", "bus_a"; - clocks = <&rpmcc RPM_SMD_BIMC_CLK>, - <&rpmcc RPM_SMD_BIMC_A_CLK>; - }; - - cnoc: interconnect@1500000 { - compatible = "qcom,sdm660-cnoc"; - reg = <0x01500000 0x10000>; - #interconnect-cells = <1>; - clock-names = "bus", "bus_a"; - clocks = <&rpmcc RPM_SMD_CNOC_CLK>, - <&rpmcc RPM_SMD_CNOC_A_CLK>; - }; - - snoc: interconnect@1626000 { - compatible = "qcom,sdm660-snoc"; - reg = <0x01626000 0x7090>; - #interconnect-cells = <1>; - clock-names = "bus", "bus_a"; - clocks = <&rpmcc RPM_SMD_SNOC_CLK>, - <&rpmcc RPM_SMD_SNOC_A_CLK>; - }; - - a2noc: interconnect@1704000 { - compatible = "qcom,sdm660-a2noc"; - reg = <0x01704000 0xc100>; - #interconnect-cells = <1>; - clock-names = "bus", - "bus_a", - "ipa", - "ufs_axi", - "aggre2_ufs_axi", - "aggre2_usb3_axi", - "cfg_noc_usb2_axi"; - clocks = <&rpmcc RPM_SMD_AGGR2_NOC_CLK>, - <&rpmcc RPM_SMD_AGGR2_NOC_A_CLK>, - <&rpmcc RPM_SMD_IPA_CLK>, - <&gcc GCC_UFS_AXI_CLK>, - <&gcc GCC_AGGRE2_UFS_AXI_CLK>, - <&gcc GCC_AGGRE2_USB3_AXI_CLK>, - <&gcc GCC_CFG_NOC_USB2_AXI_CLK>; - }; - - mnoc: interconnect@1745000 { - compatible = "qcom,sdm660-mnoc"; - reg = <0x01745000 0xa010>; - #interconnect-cells = <1>; - clock-names = "bus", "bus_a", "iface"; - clocks = <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK>, - <&rpmcc RPM_SMD_MMSSNOC_AXI_CLK_A>, - <&mmcc AHB_CLK_SRC>; - }; - - gnoc: interconnect@17900000 { - compatible = "qcom,sdm660-gnoc"; - reg = <0x17900000 0xe000>; - #interconnect-cells = <1>; - clock-names = "bus", "bus_a"; - clocks = <&xo_board>, <&xo_board>; - }; + #include <dt-bindings/clock/qcom,gcc-sdm660.h> + #include <dt-bindings/clock/qcom,mmcc-sdm660.h> + #include <dt-bindings/clock/qcom,rpmcc.h> + + bimc: interconnect@1008000 { + compatible = "qcom,sdm660-bimc"; + reg = <0x01008000 0x78000>; + #interconnect-cells = <1>; + }; + + a2noc: interconnect@1704000 { + compatible = "qcom,sdm660-a2noc"; + reg = <0x01704000 0xc100>; + #interconnect-cells = <1>; + clocks = <&rpmcc RPM_SMD_IPA_CLK>, + <&gcc GCC_UFS_AXI_CLK>, + <&gcc GCC_AGGRE2_UFS_AXI_CLK>, + <&gcc GCC_AGGRE2_USB3_AXI_CLK>, + <&gcc GCC_CFG_NOC_USB2_AXI_CLK>; + clock-names = "ipa", + "ufs_axi", + "aggre2_ufs_axi", + "aggre2_usb3_axi", + "cfg_noc_usb2_axi"; + }; |