1*ae5de77eSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause 2*ae5de77eSEmmanuel Vadot 3*ae5de77eSEmmanuel Vadot/* 4*ae5de77eSEmmanuel Vadot * x1 specific modifications required to boot in EL2. 5*ae5de77eSEmmanuel Vadot */ 6*ae5de77eSEmmanuel Vadot 7*ae5de77eSEmmanuel Vadot/dts-v1/; 8*ae5de77eSEmmanuel Vadot/plugin/; 9*ae5de77eSEmmanuel Vadot 10*ae5de77eSEmmanuel Vadot/* We can't and don't need to use zap shader in EL2 as linux can zap the gpu on it's own. */ 11*ae5de77eSEmmanuel Vadot&gpu_zap_shader { 12*ae5de77eSEmmanuel Vadot status = "disabled"; 13*ae5de77eSEmmanuel Vadot}; 14*ae5de77eSEmmanuel Vadot 15*ae5de77eSEmmanuel Vadot/* 16*ae5de77eSEmmanuel Vadot * When running under Gunyah, this IOMMU is controlled by the firmware, 17*ae5de77eSEmmanuel Vadot * however when we take ownership of it in EL2, we need to configure 18*ae5de77eSEmmanuel Vadot * it properly to use PCIe. 19*ae5de77eSEmmanuel Vadot * 20*ae5de77eSEmmanuel Vadot * Additionally, it seems like ITS emulation in Gunyah is broken so we 21*ae5de77eSEmmanuel Vadot * can't use MSI on some PCIe controllers in EL1. But we can add them 22*ae5de77eSEmmanuel Vadot * here for EL2. 23*ae5de77eSEmmanuel Vadot */ 24*ae5de77eSEmmanuel Vadot&pcie3 { 25*ae5de77eSEmmanuel Vadot iommu-map = <0 &pcie_smmu 0x30000 0x10000>; 26*ae5de77eSEmmanuel Vadot msi-map = <0 &gic_its 0xb0000 0x10000>; 27*ae5de77eSEmmanuel Vadot}; 28*ae5de77eSEmmanuel Vadot 29*ae5de77eSEmmanuel Vadot&pcie4 { 30*ae5de77eSEmmanuel Vadot iommu-map = <0 &pcie_smmu 0x40000 0x10000>; 31*ae5de77eSEmmanuel Vadot}; 32*ae5de77eSEmmanuel Vadot 33*ae5de77eSEmmanuel Vadot&pcie5 { 34*ae5de77eSEmmanuel Vadot iommu-map = <0 &pcie_smmu 0x50000 0x10000>; 35*ae5de77eSEmmanuel Vadot msi-map = <0 &gic_its 0xd0000 0x10000>; 36*ae5de77eSEmmanuel Vadot}; 37*ae5de77eSEmmanuel Vadot 38*ae5de77eSEmmanuel Vadot&pcie6a { 39*ae5de77eSEmmanuel Vadot iommu-map = <0 &pcie_smmu 0x60000 0x10000>; 40*ae5de77eSEmmanuel Vadot}; 41*ae5de77eSEmmanuel Vadot 42*ae5de77eSEmmanuel Vadot&pcie_smmu { 43*ae5de77eSEmmanuel Vadot status = "okay"; 44*ae5de77eSEmmanuel Vadot}; 45*ae5de77eSEmmanuel Vadot 46*ae5de77eSEmmanuel Vadot/* 47*ae5de77eSEmmanuel Vadot * The "SBSA watchdog" is implemented in software in Gunyah 48*ae5de77eSEmmanuel Vadot * and can't be used when running in EL2. 49*ae5de77eSEmmanuel Vadot */ 50*ae5de77eSEmmanuel Vadot&sbsa_watchdog { 51*ae5de77eSEmmanuel Vadot status = "disabled"; 52*ae5de77eSEmmanuel Vadot}; 53