Loading arch/arm64/boot/dts/qcom/msm-arm-smmu-8953.dtsi 0 → 100644 +103 −0 Original line number Diff line number Diff line /* *Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include <dt-bindings/clock/msm-clocks-8953.h> &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 = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>; qcom,dynamic; qcom,use-3-lvl-tables; qcom,enable-static-cb; qcom,enable-smmu-halt; qcom,skip-init; vdd-supply = <&gdsc_oxili_cx>; qcom,regulator-names = "vdd"; clocks = <&clock_gcc_gfx clk_gcc_oxili_ahb_clk>, <&clock_gcc_gfx clk_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 { 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 = "disabled"; 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; #global-interrupts = <0>; #size-cells = <1>; #address-cells = <1>; ranges; interrupts = <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clock_gcc clk_gcc_smmu_cfg_clk>, <&clock_gcc clk_gcc_apss_tcu_async_clk>; clock-names = "iface_clk", "core_clk"; }; }; #include "msm-arm-smmu-impl-defs-8953.dtsi" arch/arm64/boot/dts/qcom/msm-arm-smmu-impl-defs-8953.dtsi 0 → 100644 +25 −0 Original line number Diff line number Diff line /* * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ &kgsl_smmu { attach-impl-defs = <0x6000 0x270>, <0x6060 0x1055>, <0x6800 0x6>, <0x6900 0x3ff>, <0x6924 0x204>, <0x6928 0x10800>, <0x6930 0x400>, <0x6960 0xffffffff>, <0x6b64 0xa0000>, <0x6b68 0xaaab92a>; }; arch/arm64/boot/dts/qcom/msm8953.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,7 @@ #include "msm8953-pm.dtsi" #include "msm8953-bus.dtsi" #include "msm8953-coresight.dtsi" #include "msm-arm-smmu-8953.dtsi" &soc { #address-cells = <1>; Loading Loading
arch/arm64/boot/dts/qcom/msm-arm-smmu-8953.dtsi 0 → 100644 +103 −0 Original line number Diff line number Diff line /* *Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ #include <dt-bindings/clock/msm-clocks-8953.h> &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 = <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>; qcom,dynamic; qcom,use-3-lvl-tables; qcom,enable-static-cb; qcom,enable-smmu-halt; qcom,skip-init; vdd-supply = <&gdsc_oxili_cx>; qcom,regulator-names = "vdd"; clocks = <&clock_gcc_gfx clk_gcc_oxili_ahb_clk>, <&clock_gcc_gfx clk_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 { 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 = "disabled"; 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; #global-interrupts = <0>; #size-cells = <1>; #address-cells = <1>; ranges; interrupts = <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>; clocks = <&clock_gcc clk_gcc_smmu_cfg_clk>, <&clock_gcc clk_gcc_apss_tcu_async_clk>; clock-names = "iface_clk", "core_clk"; }; }; #include "msm-arm-smmu-impl-defs-8953.dtsi"
arch/arm64/boot/dts/qcom/msm-arm-smmu-impl-defs-8953.dtsi 0 → 100644 +25 −0 Original line number Diff line number Diff line /* * Copyright (c) 2015-2017, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ &kgsl_smmu { attach-impl-defs = <0x6000 0x270>, <0x6060 0x1055>, <0x6800 0x6>, <0x6900 0x3ff>, <0x6924 0x204>, <0x6928 0x10800>, <0x6930 0x400>, <0x6960 0xffffffff>, <0x6b64 0xa0000>, <0x6b68 0xaaab92a>; };
arch/arm64/boot/dts/qcom/msm8953.dtsi +1 −0 Original line number Diff line number Diff line Loading @@ -134,6 +134,7 @@ #include "msm8953-pm.dtsi" #include "msm8953-bus.dtsi" #include "msm8953-coresight.dtsi" #include "msm-arm-smmu-8953.dtsi" &soc { #address-cells = <1>; Loading