&soc { kgsl_smmu: arm,smmu-kgsl@1c40000 { status = "ok"; compatible = "qcom,smmu-v2"; qcom,tz-device-id = "GPU"; reg = <0x1c40000 0x10000>; #iommu-cells = <1>; #global-interrupts = <0>; interrupts = , , , ; qcom,dynamic; qcom,use-3-lvl-tables; qcom,enable-smmu-halt; qcom,skip-init; vdd-supply = <&gdsc_oxili_cx>; qcom,regulator-names = "vdd"; clocks = <&gcc GCC_OXILI_AHB_CLK>, <&gcc GCC_BIMC_GFX_CLK>; clock-names = "gpu_ahb_clk", "gcc_bimc_gfx_clk"; }; /* A test device to test the SMMU operation */ kgsl_iommu_test_device0 { status = "disabled"; compatible = "iommu-debug-test"; /* The SID should be valid one to get the proper *SMR,S2CR indices. */ iommus = <&kgsl_smmu 0x0>; }; apps_iommu: qcom,iommu@1e00000 { status = "okay"; compatible = "qcom,qsmmu-v500"; reg = <0x1e00000 0x40000>, <0x1ee2000 0x20>; reg-names = "base", "tcu-base"; #iommu-cells = <2>; qcom,tz-device-id = "APPS"; qcom,skip-init; qcom,enable-static-cb; qcom,use-3-lvl-tables; qcom,disable-atos; qcom,regulator-names = "vdd"; #global-interrupts = <0>; #size-cells = <1>; #address-cells = <1>; ranges; interrupts = , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ; clocks = <&gcc GCC_SMMU_CFG_CLK>, <&gcc GCC_APSS_TCU_CLK>; clock-names = "iface_clk", "core_clk"; }; }; #include "msm-arm-smmu-impl-defs-8937.dtsi"