#include &soc { apps_smmu: apps-smmu@15000000 { compatible = "qcom,qsmmu-v500"; reg = <0x15000000 0x100000>, <0x151A2000 0x28>; reg-names = "base", "tcu-base"; #iommu-cells = <2>; qcom,skip-init; qcom,use-3-lvl-tables; #global-interrupts = <2>; #size-cells = <1>; #address-cells = <1>; ranges; interrupts = , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ; anoc_1_tbu: anoc_1_tbu@15189000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151A9000 0x1000>, <0x151A2200 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x0 0x400>; qcom,iova-width = <36>; }; anoc_2_tbu: anoc_2_tbu@15191000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151B1000 0x1000>, <0x151A2208 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x400 0x400>; qcom,iova-width = <36>; }; mnoc_sf_0_tbu: mnoc_sf_0_tbu@15199000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151B9000 0x1000>, <0x151A2210 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x800 0x400>; qcom,iova-width = <36>; }; mnoc_sf_1_tbu: mnoc_sf_1_tbu@0x151a1000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151C1000 0x1000>, <0x151A2218 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0xC00 0x400>; qcom,iova-width = <36>; }; mdp_00_tbu: mdp_00_tbu@0x151a9000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151C9000 0x1000>, <0x151A2220 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x1000 0x400>; qcom,iova-width = <32>; }; mdp_01_tbu: mdp_01_tbu@0x151b1000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151D1000 0x1000>, <0x151A2228 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x1400 0x400>; qcom,iova-width = <32>; }; nsp_00_tbu: nsp_00_tbu@151c9000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151D9000 0x1000>, <0x151A2230 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x1900 0x400>; qcom,iova-width = <32>; }; nsp_01_tbu: nsp_01_tbu@151d1000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151E1000 0x1000>, <0x151A2238 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x1D00 0x200>; qcom,iova-width = <32>; }; lpass_tbu: lpass_tbu@151e9000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151E9000 0x1000>, <0x151A2240 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x2000 0x400>; qcom,iova-width = <32>; }; cam_tbu: cam_tbu@151f1000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151F1000 0x1000>, <0x151A2248 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x2400 0x400>; qcom,iova-width = <32>; }; gpdsp_sail_ss_tbu: gpdsp_sail_ss_tbu@151f9000 { compatible = "qcom,qsmmuv500-tbu"; reg = <0x151F9000 0x1000>, <0x151A2250 0x8>; reg-names = "base", "status-reg"; qcom,stream-id-range = <0x2800 0x400>; qcom,iova-width = <32>; }; }; iommu_test_device { compatible = "qcom,iommu-debug-test"; usecase0_apps { compatible = "qcom,iommu-debug-usecase"; iommus = <&apps_smmu 0x580 0>; }; usecase1_apps_fastmap { compatible = "qcom,iommu-debug-usecase"; iommus = <&apps_smmu 0x580 0>; qcom,iommu-dma = "fastmap"; }; usecase2_apps_atomic { compatible = "qcom,iommu-debug-usecase"; iommus = <&apps_smmu 0x580 0>; qcom,iommu-dma = "atomic"; }; usecase3_apps_dma { compatible = "qcom,iommu-debug-usecase"; iommus = <&apps_smmu 0x581 0>; dma-coherent; }; }; };