1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * Copyright 2016 Linaro Ltd 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Permission is hereby granted, free of charge, to any person obtaining a copy 5*4882a593Smuzhiyun * of this software and associated documentation files (the "Software"), to deal 6*4882a593Smuzhiyun * in the Software without restriction, including without limitation the rights 7*4882a593Smuzhiyun * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8*4882a593Smuzhiyun * copies of the Software, and to permit persons to whom the Software is 9*4882a593Smuzhiyun * furnished to do so, subject to the following conditions: 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun * The above copyright notice and this permission notice shall be included in 12*4882a593Smuzhiyun * all copies or substantial portions of the Software. 13*4882a593Smuzhiyun * 14*4882a593Smuzhiyun * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 15*4882a593Smuzhiyun * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16*4882a593Smuzhiyun * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17*4882a593Smuzhiyun * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 18*4882a593Smuzhiyun * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 19*4882a593Smuzhiyun * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 20*4882a593Smuzhiyun * THE SOFTWARE. 21*4882a593Smuzhiyun */ 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun/dts-v1/; 24*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 25*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 26*4882a593Smuzhiyun#include "arm-realview-eb.dtsi" 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun/ { 29*4882a593Smuzhiyun model = "ARM RealView Emulation Baseboard"; 30*4882a593Smuzhiyun compatible = "arm,realview-eb"; 31*4882a593Smuzhiyun arm,hbi = <0x140>; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun /* 34*4882a593Smuzhiyun * This is the core tile with the CPU and GIC etc for the 35*4882a593Smuzhiyun * ARM926EJ-S, ARM1136, ARM1176 that does not have L2 cache 36*4882a593Smuzhiyun * or PMU. 37*4882a593Smuzhiyun * 38*4882a593Smuzhiyun * To run this machine with QEMU, specify the following: 39*4882a593Smuzhiyun * qemu-system-arm -M realview-eb 40*4882a593Smuzhiyun * Unless specified, QEMU will emulate an ARM926EJ-S core tile. 41*4882a593Smuzhiyun * Switches -cpu arm1136 or -cpu arm1176 emulates the other 42*4882a593Smuzhiyun * core tiles. 43*4882a593Smuzhiyun */ 44*4882a593Smuzhiyun soc { 45*4882a593Smuzhiyun #address-cells = <1>; 46*4882a593Smuzhiyun #size-cells = <1>; 47*4882a593Smuzhiyun compatible = "arm,realview-eb-soc", "simple-bus"; 48*4882a593Smuzhiyun regmap = <&syscon>; 49*4882a593Smuzhiyun ranges; 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun intc: interrupt-controller@10040000 { 52*4882a593Smuzhiyun compatible = "arm,pl390"; 53*4882a593Smuzhiyun #interrupt-cells = <3>; 54*4882a593Smuzhiyun #address-cells = <1>; 55*4882a593Smuzhiyun interrupt-controller; 56*4882a593Smuzhiyun reg = <0x10041000 0x1000>, 57*4882a593Smuzhiyun <0x10040000 0x100>; 58*4882a593Smuzhiyun }; 59*4882a593Smuzhiyun }; 60*4882a593Smuzhiyun}; 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun/* 63*4882a593Smuzhiyun * This adapts all the peripherals to the interrupt routing 64*4882a593Smuzhiyun * to the GIC on the core tile. 65*4882a593Smuzhiyun */ 66*4882a593Smuzhiyun 67*4882a593Smuzhiyunðernet { 68*4882a593Smuzhiyun interrupt-parent = <&intc>; 69*4882a593Smuzhiyun interrupts = <0 28 IRQ_TYPE_LEVEL_HIGH>; 70*4882a593Smuzhiyun}; 71*4882a593Smuzhiyun 72*4882a593Smuzhiyun&usb { 73*4882a593Smuzhiyun interrupt-parent = <&intc>; 74*4882a593Smuzhiyun interrupts = <0 29 IRQ_TYPE_LEVEL_HIGH>; 75*4882a593Smuzhiyun}; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun&aaci { 78*4882a593Smuzhiyun interrupt-parent = <&intc>; 79*4882a593Smuzhiyun interrupts = <0 19 IRQ_TYPE_LEVEL_HIGH>; 80*4882a593Smuzhiyun}; 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun&mmc { 83*4882a593Smuzhiyun interrupt-parent = <&intc>; 84*4882a593Smuzhiyun interrupts = <0 17 IRQ_TYPE_LEVEL_HIGH>, 85*4882a593Smuzhiyun <0 18 IRQ_TYPE_LEVEL_HIGH>; 86*4882a593Smuzhiyun}; 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun&kmi0 { 89*4882a593Smuzhiyun interrupt-parent = <&intc>; 90*4882a593Smuzhiyun interrupts = <0 20 IRQ_TYPE_LEVEL_HIGH>; 91*4882a593Smuzhiyun}; 92*4882a593Smuzhiyun 93*4882a593Smuzhiyun&kmi1 { 94*4882a593Smuzhiyun interrupt-parent = <&intc>; 95*4882a593Smuzhiyun interrupts = <0 21 IRQ_TYPE_LEVEL_HIGH>; 96*4882a593Smuzhiyun}; 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun&charlcd { 99*4882a593Smuzhiyun interrupt-parent = <&intc>; 100*4882a593Smuzhiyun interrupts = <0 22 IRQ_TYPE_LEVEL_HIGH>; 101*4882a593Smuzhiyun}; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun&serial0 { 104*4882a593Smuzhiyun interrupt-parent = <&intc>; 105*4882a593Smuzhiyun interrupts = <0 12 IRQ_TYPE_LEVEL_HIGH>; 106*4882a593Smuzhiyun}; 107*4882a593Smuzhiyun 108*4882a593Smuzhiyun&serial1 { 109*4882a593Smuzhiyun interrupt-parent = <&intc>; 110*4882a593Smuzhiyun interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>; 111*4882a593Smuzhiyun}; 112*4882a593Smuzhiyun 113*4882a593Smuzhiyun&serial2 { 114*4882a593Smuzhiyun interrupt-parent = <&intc>; 115*4882a593Smuzhiyun interrupts = <0 14 IRQ_TYPE_LEVEL_HIGH>; 116*4882a593Smuzhiyun}; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun&serial3 { 119*4882a593Smuzhiyun interrupt-parent = <&intc>; 120*4882a593Smuzhiyun interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>; 121*4882a593Smuzhiyun}; 122*4882a593Smuzhiyun 123*4882a593Smuzhiyun&ssp { 124*4882a593Smuzhiyun interrupt-parent = <&intc>; 125*4882a593Smuzhiyun interrupts = <0 11 IRQ_TYPE_LEVEL_HIGH>; 126*4882a593Smuzhiyun}; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun&wdog { 129*4882a593Smuzhiyun interrupt-parent = <&intc>; 130*4882a593Smuzhiyun interrupts = <0 0 IRQ_TYPE_LEVEL_HIGH>; 131*4882a593Smuzhiyun}; 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun&timer01 { 134*4882a593Smuzhiyun interrupt-parent = <&intc>; 135*4882a593Smuzhiyun interrupts = <0 4 IRQ_TYPE_LEVEL_HIGH>; 136*4882a593Smuzhiyun}; 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun&timer23 { 139*4882a593Smuzhiyun interrupt-parent = <&intc>; 140*4882a593Smuzhiyun interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>; 141*4882a593Smuzhiyun}; 142*4882a593Smuzhiyun 143*4882a593Smuzhiyun&gpio0 { 144*4882a593Smuzhiyun interrupt-parent = <&intc>; 145*4882a593Smuzhiyun interrupts = <0 6 IRQ_TYPE_LEVEL_HIGH>; 146*4882a593Smuzhiyun}; 147*4882a593Smuzhiyun 148*4882a593Smuzhiyun&gpio1 { 149*4882a593Smuzhiyun interrupt-parent = <&intc>; 150*4882a593Smuzhiyun interrupts = <0 7 IRQ_TYPE_LEVEL_HIGH>; 151*4882a593Smuzhiyun}; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun&gpio2 { 154*4882a593Smuzhiyun interrupt-parent = <&intc>; 155*4882a593Smuzhiyun interrupts = <0 8 IRQ_TYPE_LEVEL_HIGH>; 156*4882a593Smuzhiyun}; 157*4882a593Smuzhiyun 158*4882a593Smuzhiyun&rtc { 159*4882a593Smuzhiyun interrupt-parent = <&intc>; 160*4882a593Smuzhiyun interrupts = <0 10 IRQ_TYPE_LEVEL_HIGH>; 161*4882a593Smuzhiyun}; 162*4882a593Smuzhiyun 163*4882a593Smuzhiyun&clcd { 164*4882a593Smuzhiyun interrupt-parent = <&intc>; 165*4882a593Smuzhiyun interrupts = <0 23 IRQ_TYPE_LEVEL_HIGH>; 166*4882a593Smuzhiyun}; 167