| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/iommu/qcom,tbu.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: Qualcomm TBU (Translation Buffer Unit)
- maintainers:
- - Georgi Djakov <quic_c_gdjako@quicinc.com>
- description:
- The Qualcomm SMMU500 implementation consists of TCU and TBU. The TBU contains
- a Translation Lookaside Buffer (TLB) that caches page tables. TBUs provides
- debug features to trace and trigger debug transactions. There are multiple TBU
- instances with each client core.
- properties:
- compatible:
- enum:
- - qcom,sc7280-tbu
- - qcom,sdm845-tbu
- reg:
- maxItems: 1
- clocks:
- maxItems: 1
- interconnects:
- maxItems: 1
- power-domains:
- maxItems: 1
- qcom,stream-id-range:
- description: |
- Phandle of a SMMU device and Stream ID range (address and size) that
- is assigned by the TBU
- $ref: /schemas/types.yaml#/definitions/phandle-array
- items:
- - items:
- - description: phandle of a smmu node
- - description: stream id base address
- - description: stream id size
- required:
- - compatible
- - reg
- - qcom,stream-id-range
- additionalProperties: false
- examples:
- - |
- #include <dt-bindings/clock/qcom,gcc-sdm845.h>
- #include <dt-bindings/interconnect/qcom,icc.h>
- #include <dt-bindings/interconnect/qcom,sdm845.h>
- tbu@150e1000 {
- compatible = "qcom,sdm845-tbu";
- reg = <0x150e1000 0x1000>;
- clocks = <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>;
- interconnects = <&system_noc MASTER_GNOC_SNOC QCOM_ICC_TAG_ACTIVE_ONLY
- &config_noc SLAVE_IMEM_CFG QCOM_ICC_TAG_ACTIVE_ONLY>;
- power-domains = <&gcc HLOS1_VOTE_AGGRE_NOC_MMU_PCIE_TBU_GDSC>;
- qcom,stream-id-range = <&apps_smmu 0x1c00 0x400>;
- };
- ...
|