1// SPDX-License-Identifier: GPL-2.0 2/* 3 * SoC core Device Tree for the ARM Integrator platforms 4 */ 5 6/ { 7 #address-cells = <1>; 8 #size-cells = <1>; 9 10 memory { 11 device_type = "memory"; 12 reg = <0x0 0x0>; 13 }; 14 15 core-module@10000000 { 16 compatible = "arm,core-module-integrator", "syscon", "simple-mfd"; 17 reg = <0x10000000 0x200>; 18 ranges = <0x0 0x10000000 0x200>; 19 #address-cells = <1>; 20 #size-cells = <1>; 21 22 /* Use core module LED to indicate CPU load */ 23 led@c,0 { 24 compatible = "register-bit-led"; 25 reg = <0x0c 0x04>; 26 offset = <0x0c>; 27 mask = <0x01>; 28 label = "integrator:core_module"; 29 linux,default-trigger = "cpu0"; 30 default-state = "on"; 31 }; 32 }; 33 34 ebi@12000000 { 35 compatible = "arm,external-bus-interface"; 36 reg = <0x12000000 0x100>; 37 }; 38 39 timer@13000000 { 40 reg = <0x13000000 0x100>; 41 interrupt-parent = <&pic>; 42 interrupts = <5>; 43 }; 44 45 timer@13000100 { 46 reg = <0x13000100 0x100>; 47 interrupt-parent = <&pic>; 48 interrupts = <6>; 49 }; 50 51 timer@13000200 { 52 reg = <0x13000200 0x100>; 53 interrupt-parent = <&pic>; 54 interrupts = <7>; 55 }; 56 57 pic@14000000 { 58 compatible = "arm,versatile-fpga-irq"; 59 #interrupt-cells = <1>; 60 interrupt-controller; 61 reg = <0x14000000 0x100>; 62 clear-mask = <0xffffffff>; 63 }; 64 65 flash@24000000 { 66 compatible = "arm,versatile-flash", "cfi-flash"; 67 reg = <0x24000000 0x02000000>; 68 bank-width = <4>; 69 partitions { 70 compatible = "arm,arm-firmware-suite"; 71 }; 72 }; 73 74 fpga { 75 compatible = "simple-bus"; 76 #address-cells = <1>; 77 #size-cells = <1>; 78 ranges; 79 interrupt-parent = <&pic>; 80 81 /* 82 * These PrimeCells are in the same locations and using the 83 * same interrupts in all Integrators, however the silicon 84 * version deployed is different. 85 */ 86 rtc@15000000 { 87 reg = <0x15000000 0x1000>; 88 interrupts = <8>; 89 }; 90 91 uart@16000000 { 92 reg = <0x16000000 0x1000>; 93 interrupts = <1>; 94 }; 95 96 uart@17000000 { 97 reg = <0x17000000 0x1000>; 98 interrupts = <2>; 99 }; 100 101 kmi@18000000 { 102 reg = <0x18000000 0x1000>; 103 interrupts = <3>; 104 }; 105 106 kmi@19000000 { 107 reg = <0x19000000 0x1000>; 108 interrupts = <4>; 109 }; 110 111 syscon@1a000000 { 112 /* Debug registers mapped as syscon */ 113 compatible = "syscon", "simple-mfd"; 114 reg = <0x1a000000 0x10>; 115 ranges = <0x0 0x1a000000 0x10>; 116 #address-cells = <1>; 117 #size-cells = <1>; 118 119 led@4,0 { 120 compatible = "register-bit-led"; 121 reg = <0x04 0x04>; 122 offset = <0x04>; 123 mask = <0x01>; 124 label = "integrator:green0"; 125 linux,default-trigger = "heartbeat"; 126 default-state = "on"; 127 }; 128 led@4,1 { 129 compatible = "register-bit-led"; 130 reg = <0x04 0x04>; 131 offset = <0x04>; 132 mask = <0x02>; 133 label = "integrator:yellow"; 134 default-state = "off"; 135 }; 136 led@4,2 { 137 compatible = "register-bit-led"; 138 reg = <0x04 0x04>; 139 offset = <0x04>; 140 mask = <0x04>; 141 label = "integrator:red"; 142 default-state = "off"; 143 }; 144 led@4,3 { 145 compatible = "register-bit-led"; 146 reg = <0x04 0x04>; 147 offset = <0x04>; 148 mask = <0x08>; 149 label = "integrator:green1"; 150 default-state = "off"; 151 }; 152 }; 153 }; 154}; 155