1/* 2 * Copyright 2013-2014 Texas Instruments, Inc. 3 * 4 * Keystone 2 Kepler/Hawking soc specific device tree 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 */ 10 11#include <dt-bindings/reset/ti-syscon.h> 12 13/ { 14 compatible = "ti,k2hk", "ti,keystone"; 15 model = "Texas Instruments Keystone 2 Kepler/Hawking SoC"; 16 17 cpus { 18 #address-cells = <1>; 19 #size-cells = <0>; 20 21 interrupt-parent = <&gic>; 22 23 cpu@0 { 24 compatible = "arm,cortex-a15"; 25 device_type = "cpu"; 26 reg = <0>; 27 }; 28 29 cpu@1 { 30 compatible = "arm,cortex-a15"; 31 device_type = "cpu"; 32 reg = <1>; 33 }; 34 35 cpu@2 { 36 compatible = "arm,cortex-a15"; 37 device_type = "cpu"; 38 reg = <2>; 39 }; 40 41 cpu@3 { 42 compatible = "arm,cortex-a15"; 43 device_type = "cpu"; 44 reg = <3>; 45 }; 46 }; 47 48 aliases { 49 rproc0 = &dsp0; 50 rproc1 = &dsp1; 51 rproc2 = &dsp2; 52 rproc3 = &dsp3; 53 rproc4 = &dsp4; 54 rproc5 = &dsp5; 55 rproc6 = &dsp6; 56 rproc7 = &dsp7; 57 }; 58 59 soc { 60 /include/ "keystone-k2hk-clocks.dtsi" 61 62 msm_ram: msmram@0c000000 { 63 compatible = "mmio-sram"; 64 reg = <0x0c000000 0x600000>; 65 ranges = <0x0 0x0c000000 0x600000>; 66 #address-cells = <1>; 67 #size-cells = <1>; 68 69 sram-bm@5f0000 { 70 reg = <0x5f0000 0x8000>; 71 }; 72 }; 73 74 psc: power-sleep-controller@02350000 { 75 pscrst: reset-controller { 76 compatible = "ti,k2hk-pscrst", "ti,syscon-reset"; 77 #reset-cells = <1>; 78 79 ti,reset-bits = < 80 0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */ 81 0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */ 82 0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */ 83 0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */ 84 0xa4c 8 0xa4c 8 0x84c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 4: dsp4 */ 85 0xa50 8 0xa50 8 0x850 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 5: dsp5 */ 86 0xa54 8 0xa54 8 0x854 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 6: dsp6 */ 87 0xa58 8 0xa58 8 0x858 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 7: dsp7 */ 88 >; 89 }; 90 }; 91 92 dspgpio0: keystone_dsp_gpio@02620240 { 93 compatible = "ti,keystone-dsp-gpio"; 94 gpio-controller; 95 #gpio-cells = <2>; 96 gpio,syscon-dev = <&devctrl 0x240>; 97 }; 98 99 dspgpio1: keystone_dsp_gpio@2620244 { 100 compatible = "ti,keystone-dsp-gpio"; 101 gpio-controller; 102 #gpio-cells = <2>; 103 gpio,syscon-dev = <&devctrl 0x244>; 104 }; 105 106 dspgpio2: keystone_dsp_gpio@2620248 { 107 compatible = "ti,keystone-dsp-gpio"; 108 gpio-controller; 109 #gpio-cells = <2>; 110 gpio,syscon-dev = <&devctrl 0x248>; 111 }; 112 113 dspgpio3: keystone_dsp_gpio@262024c { 114 compatible = "ti,keystone-dsp-gpio"; 115 gpio-controller; 116 #gpio-cells = <2>; 117 gpio,syscon-dev = <&devctrl 0x24c>; 118 }; 119 120 dspgpio4: keystone_dsp_gpio@2620250 { 121 compatible = "ti,keystone-dsp-gpio"; 122 gpio-controller; 123 #gpio-cells = <2>; 124 gpio,syscon-dev = <&devctrl 0x250>; 125 }; 126 127 dspgpio5: keystone_dsp_gpio@2620254 { 128 compatible = "ti,keystone-dsp-gpio"; 129 gpio-controller; 130 #gpio-cells = <2>; 131 gpio,syscon-dev = <&devctrl 0x254>; 132 }; 133 134 dspgpio6: keystone_dsp_gpio@2620258 { 135 compatible = "ti,keystone-dsp-gpio"; 136 gpio-controller; 137 #gpio-cells = <2>; 138 gpio,syscon-dev = <&devctrl 0x258>; 139 }; 140 141 dspgpio7: keystone_dsp_gpio@262025c { 142 compatible = "ti,keystone-dsp-gpio"; 143 gpio-controller; 144 #gpio-cells = <2>; 145 gpio,syscon-dev = <&devctrl 0x25c>; 146 }; 147 148 dsp0: dsp@10800000 { 149 compatible = "ti,k2hk-dsp"; 150 reg = <0x10800000 0x00100000>, 151 <0x10e00000 0x00008000>, 152 <0x10f00000 0x00008000>; 153 reg-names = "l2sram", "l1pram", "l1dram"; 154 clocks = <&clkgem0>; 155 ti,syscon-dev = <&devctrl 0x40>; 156 resets = <&pscrst 0>; 157 interrupt-parent = <&kirq0>; 158 interrupts = <0 8>; 159 interrupt-names = "vring", "exception"; 160 kick-gpios = <&dspgpio0 27 0>; 161 status = "disabled"; 162 }; 163 164 dsp1: dsp@11800000 { 165 compatible = "ti,k2hk-dsp"; 166 reg = <0x11800000 0x00100000>, 167 <0x11e00000 0x00008000>, 168 <0x11f00000 0x00008000>; 169 reg-names = "l2sram", "l1pram", "l1dram"; 170 clocks = <&clkgem1>; 171 ti,syscon-dev = <&devctrl 0x44>; 172 resets = <&pscrst 1>; 173 interrupt-parent = <&kirq0>; 174 interrupts = <1 9>; 175 interrupt-names = "vring", "exception"; 176 kick-gpios = <&dspgpio1 27 0>; 177 status = "disabled"; 178 }; 179 180 dsp2: dsp@12800000 { 181 compatible = "ti,k2hk-dsp"; 182 reg = <0x12800000 0x00100000>, 183 <0x12e00000 0x00008000>, 184 <0x12f00000 0x00008000>; 185 reg-names = "l2sram", "l1pram", "l1dram"; 186 clocks = <&clkgem2>; 187 ti,syscon-dev = <&devctrl 0x48>; 188 resets = <&pscrst 2>; 189 interrupt-parent = <&kirq0>; 190 interrupts = <2 10>; 191 interrupt-names = "vring", "exception"; 192 kick-gpios = <&dspgpio2 27 0>; 193 status = "disabled"; 194 }; 195 196 dsp3: dsp@13800000 { 197 compatible = "ti,k2hk-dsp"; 198 reg = <0x13800000 0x00100000>, 199 <0x13e00000 0x00008000>, 200 <0x13f00000 0x00008000>; 201 reg-names = "l2sram", "l1pram", "l1dram"; 202 clocks = <&clkgem3>; 203 ti,syscon-dev = <&devctrl 0x4c>; 204 resets = <&pscrst 3>; 205 interrupt-parent = <&kirq0>; 206 interrupts = <3 11>; 207 interrupt-names = "vring", "exception"; 208 kick-gpios = <&dspgpio3 27 0>; 209 status = "disabled"; 210 }; 211 212 dsp4: dsp@14800000 { 213 compatible = "ti,k2hk-dsp"; 214 reg = <0x14800000 0x00100000>, 215 <0x14e00000 0x00008000>, 216 <0x14f00000 0x00008000>; 217 reg-names = "l2sram", "l1pram", "l1dram"; 218 clocks = <&clkgem4>; 219 ti,syscon-dev = <&devctrl 0x50>; 220 resets = <&pscrst 4>; 221 interrupt-parent = <&kirq0>; 222 interrupts = <4 12>; 223 interrupt-names = "vring", "exception"; 224 kick-gpios = <&dspgpio4 27 0>; 225 status = "disabled"; 226 }; 227 228 dsp5: dsp@15800000 { 229 compatible = "ti,k2hk-dsp"; 230 reg = <0x15800000 0x00100000>, 231 <0x15e00000 0x00008000>, 232 <0x15f00000 0x00008000>; 233 reg-names = "l2sram", "l1pram", "l1dram"; 234 clocks = <&clkgem5>; 235 ti,syscon-dev = <&devctrl 0x54>; 236 resets = <&pscrst 5>; 237 interrupt-parent = <&kirq0>; 238 interrupts = <5 13>; 239 interrupt-names = "vring", "exception"; 240 kick-gpios = <&dspgpio5 27 0>; 241 status = "disabled"; 242 }; 243 244 dsp6: dsp@16800000 { 245 compatible = "ti,k2hk-dsp"; 246 reg = <0x16800000 0x00100000>, 247 <0x16e00000 0x00008000>, 248 <0x16f00000 0x00008000>; 249 reg-names = "l2sram", "l1pram", "l1dram"; 250 clocks = <&clkgem6>; 251 ti,syscon-dev = <&devctrl 0x58>; 252 resets = <&pscrst 6>; 253 interrupt-parent = <&kirq0>; 254 interrupts = <6 14>; 255 interrupt-names = "vring", "exception"; 256 kick-gpios = <&dspgpio6 27 0>; 257 status = "disabled"; 258 }; 259 260 dsp7: dsp@17800000 { 261 compatible = "ti,k2hk-dsp"; 262 reg = <0x17800000 0x00100000>, 263 <0x17e00000 0x00008000>, 264 <0x17f00000 0x00008000>; 265 reg-names = "l2sram", "l1pram", "l1dram"; 266 clocks = <&clkgem7>; 267 ti,syscon-dev = <&devctrl 0x5c>; 268 resets = <&pscrst 7>; 269 interrupt-parent = <&kirq0>; 270 interrupts = <7 15>; 271 interrupt-names = "vring", "exception"; 272 kick-gpios = <&dspgpio7 27 0>; 273 status = "disabled"; 274 }; 275 276 mdio: mdio@02090300 { 277 compatible = "ti,keystone_mdio", "ti,davinci_mdio"; 278 #address-cells = <1>; 279 #size-cells = <0>; 280 reg = <0x02090300 0x100>; 281 status = "disabled"; 282 clocks = <&clkcpgmac>; 283 clock-names = "fck"; 284 bus_freq = <2500000>; 285 }; 286 /include/ "keystone-k2hk-netcp.dtsi" 287 }; 288}; 289