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