brintos

brintos / linux-shallow public Read only

0
0
Text · 3.3 KiB · 14b1a0b Raw
153 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/interconnect/qcom,sm6115.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Qualcomm SM6115 Network-On-Chip interconnect8 9maintainers:10  - Konrad Dybcio <konradybcio@kernel.org>11 12description:13  The Qualcomm SM6115 interconnect providers support adjusting the14  bandwidth requirements between the various NoC fabrics.15 16properties:17  compatible:18    enum:19      - qcom,sm6115-bimc20      - qcom,sm6115-cnoc21      - qcom,sm6115-snoc22 23  reg:24    maxItems: 125 26  clocks:27    minItems: 128    maxItems: 429 30  clock-names:31    minItems: 132    maxItems: 433 34# Child node's properties35patternProperties:36  '^interconnect-[a-z0-9]+$':37    type: object38    description:39      The interconnect providers do not have a separate QoS register space,40      but share parent's space.41 42    $ref: qcom,rpm-common.yaml#43 44    properties:45      compatible:46        enum:47          - qcom,sm6115-clk-virt48          - qcom,sm6115-mmrt-virt49          - qcom,sm6115-mmnrt-virt50 51    required:52      - compatible53 54    unevaluatedProperties: false55 56required:57  - compatible58  - reg59 60allOf:61  - $ref: qcom,rpm-common.yaml#62  - if:63      properties:64        compatible:65          const: qcom,sm6115-cnoc66 67    then:68      properties:69        clocks:70          items:71            - description: USB-NoC AXI clock72 73        clock-names:74          items:75            - const: usb_axi76 77  - if:78      properties:79        compatible:80          const: qcom,sm6115-snoc81 82    then:83      properties:84        clocks:85          items:86            - description: CPU-NoC AXI clock.87            - description: UFS-NoC AXI clock.88            - description: USB-NoC AXI clock.89            - description: IPA clock.90 91        clock-names:92          items:93            - const: cpu_axi94            - const: ufs_axi95            - const: usb_axi96            - const: ipa97 98  - if:99      properties:100        compatible:101          enum:102            - qcom,sm6115-bimc103            - qcom,sm6115-clk-virt104            - qcom,sm6115-mmrt-virt105            - qcom,sm6115-mmnrt-virt106 107    then:108      properties:109        clocks: false110        clock-names: false111 112unevaluatedProperties: false113 114examples:115  - |116    #include <dt-bindings/clock/qcom,gcc-sm6115.h>117    #include <dt-bindings/clock/qcom,rpmcc.h>118 119    snoc: interconnect@1880000 {120        compatible = "qcom,sm6115-snoc";121        reg = <0x01880000 0x60200>;122        clocks = <&gcc GCC_SYS_NOC_CPUSS_AHB_CLK>,123                 <&gcc GCC_SYS_NOC_UFS_PHY_AXI_CLK>,124                 <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>,125                 <&rpmcc RPM_SMD_IPA_CLK>;126        clock-names = "cpu_axi",127                      "ufs_axi",128                      "usb_axi",129                      "ipa";130        #interconnect-cells = <1>;131 132        qup_virt: interconnect-clk {133            compatible = "qcom,sm6115-clk-virt";134            #interconnect-cells = <1>;135        };136 137        mmnrt_virt: interconnect-mmnrt {138            compatible = "qcom,sm6115-mmnrt-virt";139            #interconnect-cells = <1>;140        };141 142        mmrt_virt: interconnect-mmrt {143            compatible = "qcom,sm6115-mmrt-virt";144            #interconnect-cells = <1>;145        };146    };147 148    cnoc: interconnect@1900000 {149        compatible = "qcom,sm6115-cnoc";150        reg = <0x01900000 0x8200>;151        #interconnect-cells = <1>;152    };153