1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2c66ec88fSEmmanuel Vadot/* 3c66ec88fSEmmanuel Vadot * ARM Ltd. Fast Models 4c66ec88fSEmmanuel Vadot * 5c66ec88fSEmmanuel Vadot * Architecture Envelope Model (AEM) ARMv8-A 6c66ec88fSEmmanuel Vadot * ARMAEMv8AMPCT 7c66ec88fSEmmanuel Vadot * 8c66ec88fSEmmanuel Vadot * RTSM_VE_AEMv8A.lisa 9c66ec88fSEmmanuel Vadot */ 10c66ec88fSEmmanuel Vadot 11c66ec88fSEmmanuel Vadot/dts-v1/; 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h> 14c66ec88fSEmmanuel Vadot 15c66ec88fSEmmanuel Vadot/memreserve/ 0x80000000 0x00010000; 16c66ec88fSEmmanuel Vadot 17c66ec88fSEmmanuel Vadot#include "rtsm_ve-motherboard.dtsi" 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel Vadot/ { 20c66ec88fSEmmanuel Vadot model = "RTSM_VE_AEMv8A"; 21c66ec88fSEmmanuel Vadot compatible = "arm,rtsm_ve,aemv8a", "arm,vexpress"; 22c66ec88fSEmmanuel Vadot interrupt-parent = <&gic>; 23c66ec88fSEmmanuel Vadot #address-cells = <2>; 24c66ec88fSEmmanuel Vadot #size-cells = <2>; 25c66ec88fSEmmanuel Vadot 26c66ec88fSEmmanuel Vadot chosen { }; 27c66ec88fSEmmanuel Vadot 28c66ec88fSEmmanuel Vadot aliases { 29c66ec88fSEmmanuel Vadot serial0 = &v2m_serial0; 30c66ec88fSEmmanuel Vadot serial1 = &v2m_serial1; 31c66ec88fSEmmanuel Vadot serial2 = &v2m_serial2; 32c66ec88fSEmmanuel Vadot serial3 = &v2m_serial3; 33c66ec88fSEmmanuel Vadot }; 34c66ec88fSEmmanuel Vadot 35c66ec88fSEmmanuel Vadot cpus { 36c66ec88fSEmmanuel Vadot #address-cells = <2>; 37c66ec88fSEmmanuel Vadot #size-cells = <0>; 38c66ec88fSEmmanuel Vadot 39c66ec88fSEmmanuel Vadot cpu@0 { 40c66ec88fSEmmanuel Vadot device_type = "cpu"; 41c66ec88fSEmmanuel Vadot compatible = "arm,armv8"; 42c66ec88fSEmmanuel Vadot reg = <0x0 0x0>; 43c66ec88fSEmmanuel Vadot enable-method = "spin-table"; 44c66ec88fSEmmanuel Vadot cpu-release-addr = <0x0 0x8000fff8>; 45c66ec88fSEmmanuel Vadot next-level-cache = <&L2_0>; 46c66ec88fSEmmanuel Vadot }; 47c66ec88fSEmmanuel Vadot cpu@1 { 48c66ec88fSEmmanuel Vadot device_type = "cpu"; 49c66ec88fSEmmanuel Vadot compatible = "arm,armv8"; 50c66ec88fSEmmanuel Vadot reg = <0x0 0x1>; 51c66ec88fSEmmanuel Vadot enable-method = "spin-table"; 52c66ec88fSEmmanuel Vadot cpu-release-addr = <0x0 0x8000fff8>; 53c66ec88fSEmmanuel Vadot next-level-cache = <&L2_0>; 54c66ec88fSEmmanuel Vadot }; 55c66ec88fSEmmanuel Vadot cpu@2 { 56c66ec88fSEmmanuel Vadot device_type = "cpu"; 57c66ec88fSEmmanuel Vadot compatible = "arm,armv8"; 58c66ec88fSEmmanuel Vadot reg = <0x0 0x2>; 59c66ec88fSEmmanuel Vadot enable-method = "spin-table"; 60c66ec88fSEmmanuel Vadot cpu-release-addr = <0x0 0x8000fff8>; 61c66ec88fSEmmanuel Vadot next-level-cache = <&L2_0>; 62c66ec88fSEmmanuel Vadot }; 63c66ec88fSEmmanuel Vadot cpu@3 { 64c66ec88fSEmmanuel Vadot device_type = "cpu"; 65c66ec88fSEmmanuel Vadot compatible = "arm,armv8"; 66c66ec88fSEmmanuel Vadot reg = <0x0 0x3>; 67c66ec88fSEmmanuel Vadot enable-method = "spin-table"; 68c66ec88fSEmmanuel Vadot cpu-release-addr = <0x0 0x8000fff8>; 69c66ec88fSEmmanuel Vadot next-level-cache = <&L2_0>; 70c66ec88fSEmmanuel Vadot }; 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot L2_0: l2-cache0 { 73c66ec88fSEmmanuel Vadot compatible = "cache"; 748bab661aSEmmanuel Vadot cache-level = <2>; 75*fac71e4eSEmmanuel Vadot cache-unified; 76c66ec88fSEmmanuel Vadot }; 77c66ec88fSEmmanuel Vadot }; 78c66ec88fSEmmanuel Vadot 79c66ec88fSEmmanuel Vadot memory@80000000 { 80c66ec88fSEmmanuel Vadot device_type = "memory"; 81c66ec88fSEmmanuel Vadot reg = <0x00000000 0x80000000 0 0x80000000>, 82c66ec88fSEmmanuel Vadot <0x00000008 0x80000000 0 0x80000000>; 83c66ec88fSEmmanuel Vadot }; 84c66ec88fSEmmanuel Vadot 85c66ec88fSEmmanuel Vadot reserved-memory { 86c66ec88fSEmmanuel Vadot #address-cells = <2>; 87c66ec88fSEmmanuel Vadot #size-cells = <2>; 88c66ec88fSEmmanuel Vadot ranges; 89c66ec88fSEmmanuel Vadot 90c66ec88fSEmmanuel Vadot /* Chipselect 2,00000000 is physically at 0x18000000 */ 91c66ec88fSEmmanuel Vadot vram: vram@18000000 { 92c66ec88fSEmmanuel Vadot /* 8 MB of designated video RAM */ 93c66ec88fSEmmanuel Vadot compatible = "shared-dma-pool"; 94c66ec88fSEmmanuel Vadot reg = <0x00000000 0x18000000 0 0x00800000>; 95c66ec88fSEmmanuel Vadot no-map; 96c66ec88fSEmmanuel Vadot }; 97c66ec88fSEmmanuel Vadot }; 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadot gic: interrupt-controller@2c001000 { 100c66ec88fSEmmanuel Vadot compatible = "arm,gic-400", "arm,cortex-a15-gic"; 101c66ec88fSEmmanuel Vadot #interrupt-cells = <3>; 102c66ec88fSEmmanuel Vadot #address-cells = <0>; 103c66ec88fSEmmanuel Vadot interrupt-controller; 104c66ec88fSEmmanuel Vadot reg = <0x0 0x2c001000 0 0x1000>, 105c66ec88fSEmmanuel Vadot <0x0 0x2c002000 0 0x2000>, 106c66ec88fSEmmanuel Vadot <0x0 0x2c004000 0 0x2000>, 107c66ec88fSEmmanuel Vadot <0x0 0x2c006000 0 0x2000>; 108c66ec88fSEmmanuel Vadot interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 109c66ec88fSEmmanuel Vadot }; 110c66ec88fSEmmanuel Vadot 111c66ec88fSEmmanuel Vadot timer { 112c66ec88fSEmmanuel Vadot compatible = "arm,armv8-timer"; 113c66ec88fSEmmanuel Vadot interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 114c66ec88fSEmmanuel Vadot <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 115c66ec88fSEmmanuel Vadot <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 116c66ec88fSEmmanuel Vadot <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 117c66ec88fSEmmanuel Vadot clock-frequency = <100000000>; 118c66ec88fSEmmanuel Vadot }; 119c66ec88fSEmmanuel Vadot 120c66ec88fSEmmanuel Vadot pmu { 121c66ec88fSEmmanuel Vadot compatible = "arm,armv8-pmuv3"; 122c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, 123c66ec88fSEmmanuel Vadot <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, 124c66ec88fSEmmanuel Vadot <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>, 125c66ec88fSEmmanuel Vadot <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 126c66ec88fSEmmanuel Vadot }; 127c66ec88fSEmmanuel Vadot 128c66ec88fSEmmanuel Vadot panel { 129c66ec88fSEmmanuel Vadot compatible = "arm,rtsm-display"; 130c66ec88fSEmmanuel Vadot port { 131c66ec88fSEmmanuel Vadot panel_in: endpoint { 132c66ec88fSEmmanuel Vadot remote-endpoint = <&clcd_pads>; 133c66ec88fSEmmanuel Vadot }; 134c66ec88fSEmmanuel Vadot }; 135c66ec88fSEmmanuel Vadot }; 136c66ec88fSEmmanuel Vadot 137c66ec88fSEmmanuel Vadot bus@8000000 { 138c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 139c66ec88fSEmmanuel Vadot interrupt-map-mask = <0 0 63>; 140c66ec88fSEmmanuel Vadot interrupt-map = <0 0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>, 141c66ec88fSEmmanuel Vadot <0 0 1 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>, 142c66ec88fSEmmanuel Vadot <0 0 2 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 143c66ec88fSEmmanuel Vadot <0 0 3 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 144c66ec88fSEmmanuel Vadot <0 0 4 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 145c66ec88fSEmmanuel Vadot <0 0 5 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>, 146c66ec88fSEmmanuel Vadot <0 0 6 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 147c66ec88fSEmmanuel Vadot <0 0 7 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>, 148c66ec88fSEmmanuel Vadot <0 0 8 &gic GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 149c66ec88fSEmmanuel Vadot <0 0 9 &gic GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>, 150c66ec88fSEmmanuel Vadot <0 0 10 &gic GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>, 151c66ec88fSEmmanuel Vadot <0 0 11 &gic GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 152c66ec88fSEmmanuel Vadot <0 0 12 &gic GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 153c66ec88fSEmmanuel Vadot <0 0 13 &gic GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>, 154c66ec88fSEmmanuel Vadot <0 0 14 &gic GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>, 155c66ec88fSEmmanuel Vadot <0 0 15 &gic GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>, 156c66ec88fSEmmanuel Vadot <0 0 16 &gic GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>, 157c66ec88fSEmmanuel Vadot <0 0 17 &gic GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, 158c66ec88fSEmmanuel Vadot <0 0 18 &gic GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, 159c66ec88fSEmmanuel Vadot <0 0 19 &gic GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 160c66ec88fSEmmanuel Vadot <0 0 20 &gic GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 161c66ec88fSEmmanuel Vadot <0 0 21 &gic GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 162c66ec88fSEmmanuel Vadot <0 0 22 &gic GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 163c66ec88fSEmmanuel Vadot <0 0 23 &gic GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>, 164c66ec88fSEmmanuel Vadot <0 0 24 &gic GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 165c66ec88fSEmmanuel Vadot <0 0 25 &gic GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 166c66ec88fSEmmanuel Vadot <0 0 26 &gic GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 167c66ec88fSEmmanuel Vadot <0 0 27 &gic GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>, 168c66ec88fSEmmanuel Vadot <0 0 28 &gic GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 169c66ec88fSEmmanuel Vadot <0 0 29 &gic GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>, 170c66ec88fSEmmanuel Vadot <0 0 30 &gic GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 171c66ec88fSEmmanuel Vadot <0 0 31 &gic GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>, 172c66ec88fSEmmanuel Vadot <0 0 32 &gic GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>, 173c66ec88fSEmmanuel Vadot <0 0 33 &gic GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>, 174c66ec88fSEmmanuel Vadot <0 0 34 &gic GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>, 175c66ec88fSEmmanuel Vadot <0 0 35 &gic GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 176c66ec88fSEmmanuel Vadot <0 0 36 &gic GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>, 177c66ec88fSEmmanuel Vadot <0 0 37 &gic GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>, 178c66ec88fSEmmanuel Vadot <0 0 38 &gic GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>, 179c66ec88fSEmmanuel Vadot <0 0 39 &gic GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 180c66ec88fSEmmanuel Vadot <0 0 40 &gic GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 181c66ec88fSEmmanuel Vadot <0 0 41 &gic GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 182c66ec88fSEmmanuel Vadot <0 0 42 &gic GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 183c66ec88fSEmmanuel Vadot }; 184c66ec88fSEmmanuel Vadot}; 185