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