| .. | .. |
|---|
| 4 | 4 | * kind, whether express or implied. |
|---|
| 5 | 5 | */ |
|---|
| 6 | 6 | |
|---|
| 7 | +#include <dt-bindings/bus/ti-sysc.h> |
|---|
| 8 | +#include <dt-bindings/clock/dm816.h> |
|---|
| 7 | 9 | #include <dt-bindings/gpio/gpio.h> |
|---|
| 8 | 10 | #include <dt-bindings/pinctrl/omap.h> |
|---|
| 9 | 11 | |
|---|
| .. | .. |
|---|
| 138 | 140 | }; |
|---|
| 139 | 141 | }; |
|---|
| 140 | 142 | |
|---|
| 141 | | - edma: edma@49000000 { |
|---|
| 142 | | - compatible = "ti,edma3"; |
|---|
| 143 | | - ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2", "tptc3"; |
|---|
| 144 | | - reg = <0x49000000 0x10000>, |
|---|
| 145 | | - <0x44e10f90 0x40>; |
|---|
| 146 | | - interrupts = <12 13 14>; |
|---|
| 147 | | - #dma-cells = <1>; |
|---|
| 143 | + target-module@49000000 { |
|---|
| 144 | + compatible = "ti,sysc-omap4", "ti,sysc"; |
|---|
| 145 | + reg = <0x49000000 0x4>; |
|---|
| 146 | + reg-names = "rev"; |
|---|
| 147 | + clocks = <&alwon_clkctrl DM816_TPCC_CLKCTRL 0>; |
|---|
| 148 | + clock-names = "fck"; |
|---|
| 149 | + #address-cells = <1>; |
|---|
| 150 | + #size-cells = <1>; |
|---|
| 151 | + ranges = <0x0 0x49000000 0x10000>; |
|---|
| 152 | + |
|---|
| 153 | + edma: dma@0 { |
|---|
| 154 | + compatible = "ti,edma3-tpcc"; |
|---|
| 155 | + reg = <0 0x10000>; |
|---|
| 156 | + reg-names = "edma3_cc"; |
|---|
| 157 | + interrupts = <12 13 14>; |
|---|
| 158 | + interrupt-names = "edma3_ccint", "edma3_mperr", |
|---|
| 159 | + "edma3_ccerrint"; |
|---|
| 160 | + dma-requests = <64>; |
|---|
| 161 | + #dma-cells = <2>; |
|---|
| 162 | + |
|---|
| 163 | + ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>, |
|---|
| 164 | + <&edma_tptc2 3>, <&edma_tptc3 0>; |
|---|
| 165 | + |
|---|
| 166 | + ti,edma-memcpy-channels = <20 21>; |
|---|
| 167 | + }; |
|---|
| 168 | + }; |
|---|
| 169 | + |
|---|
| 170 | + target-module@49800000 { |
|---|
| 171 | + compatible = "ti,sysc-omap4", "ti,sysc"; |
|---|
| 172 | + reg = <0x49800000 0x4>, |
|---|
| 173 | + <0x49800010 0x4>; |
|---|
| 174 | + reg-names = "rev", "sysc"; |
|---|
| 175 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 176 | + ti,sysc-midle = <SYSC_IDLE_FORCE>; |
|---|
| 177 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 178 | + <SYSC_IDLE_SMART>; |
|---|
| 179 | + clocks = <&alwon_clkctrl DM816_TPTC0_CLKCTRL 0>; |
|---|
| 180 | + clock-names = "fck"; |
|---|
| 181 | + #address-cells = <1>; |
|---|
| 182 | + #size-cells = <1>; |
|---|
| 183 | + ranges = <0x0 0x49800000 0x100000>; |
|---|
| 184 | + |
|---|
| 185 | + edma_tptc0: dma@0 { |
|---|
| 186 | + compatible = "ti,edma3-tptc"; |
|---|
| 187 | + reg = <0 0x100000>; |
|---|
| 188 | + interrupts = <112>; |
|---|
| 189 | + interrupt-names = "edma3_tcerrint"; |
|---|
| 190 | + }; |
|---|
| 191 | + }; |
|---|
| 192 | + |
|---|
| 193 | + target-module@49900000 { |
|---|
| 194 | + compatible = "ti,sysc-omap4", "ti,sysc"; |
|---|
| 195 | + reg = <0x49900000 0x4>, |
|---|
| 196 | + <0x49900010 0x4>; |
|---|
| 197 | + reg-names = "rev", "sysc"; |
|---|
| 198 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 199 | + ti,sysc-midle = <SYSC_IDLE_FORCE>; |
|---|
| 200 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 201 | + <SYSC_IDLE_SMART>; |
|---|
| 202 | + clocks = <&alwon_clkctrl DM816_TPTC1_CLKCTRL 0>; |
|---|
| 203 | + clock-names = "fck"; |
|---|
| 204 | + #address-cells = <1>; |
|---|
| 205 | + #size-cells = <1>; |
|---|
| 206 | + ranges = <0x0 0x49900000 0x100000>; |
|---|
| 207 | + |
|---|
| 208 | + edma_tptc1: dma@0 { |
|---|
| 209 | + compatible = "ti,edma3-tptc"; |
|---|
| 210 | + reg = <0 0x100000>; |
|---|
| 211 | + interrupts = <113>; |
|---|
| 212 | + interrupt-names = "edma3_tcerrint"; |
|---|
| 213 | + }; |
|---|
| 214 | + }; |
|---|
| 215 | + |
|---|
| 216 | + target-module@49a00000 { |
|---|
| 217 | + compatible = "ti,sysc-omap4", "ti,sysc"; |
|---|
| 218 | + reg = <0x49a00000 0x4>, |
|---|
| 219 | + <0x49a00010 0x4>; |
|---|
| 220 | + reg-names = "rev", "sysc"; |
|---|
| 221 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 222 | + ti,sysc-midle = <SYSC_IDLE_FORCE>; |
|---|
| 223 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 224 | + <SYSC_IDLE_SMART>; |
|---|
| 225 | + clocks = <&alwon_clkctrl DM816_TPTC2_CLKCTRL 0>; |
|---|
| 226 | + clock-names = "fck"; |
|---|
| 227 | + #address-cells = <1>; |
|---|
| 228 | + #size-cells = <1>; |
|---|
| 229 | + ranges = <0x0 0x49a00000 0x100000>; |
|---|
| 230 | + |
|---|
| 231 | + edma_tptc2: dma@0 { |
|---|
| 232 | + compatible = "ti,edma3-tptc"; |
|---|
| 233 | + reg = <0 0x100000>; |
|---|
| 234 | + interrupts = <114>; |
|---|
| 235 | + interrupt-names = "edma3_tcerrint"; |
|---|
| 236 | + }; |
|---|
| 237 | + }; |
|---|
| 238 | + |
|---|
| 239 | + target-module@49b00000 { |
|---|
| 240 | + compatible = "ti,sysc-omap4", "ti,sysc"; |
|---|
| 241 | + reg = <0x49b00000 0x4>, |
|---|
| 242 | + <0x49b00010 0x4>; |
|---|
| 243 | + reg-names = "rev", "sysc"; |
|---|
| 244 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 245 | + ti,sysc-midle = <SYSC_IDLE_FORCE>; |
|---|
| 246 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 247 | + <SYSC_IDLE_SMART>; |
|---|
| 248 | + clocks = <&alwon_clkctrl DM816_TPTC3_CLKCTRL 0>; |
|---|
| 249 | + clock-names = "fck"; |
|---|
| 250 | + #address-cells = <1>; |
|---|
| 251 | + #size-cells = <1>; |
|---|
| 252 | + ranges = <0x0 0x49b00000 0x100000>; |
|---|
| 253 | + |
|---|
| 254 | + edma_tptc3: dma@0 { |
|---|
| 255 | + compatible = "ti,edma3-tptc"; |
|---|
| 256 | + reg = <0 0x100000>; |
|---|
| 257 | + interrupts = <115>; |
|---|
| 258 | + interrupt-names = "edma3_tcerrint"; |
|---|
| 259 | + }; |
|---|
| 148 | 260 | }; |
|---|
| 149 | 261 | |
|---|
| 150 | 262 | elm: elm@48080000 { |
|---|
| .. | .. |
|---|
| 185 | 297 | #address-cells = <2>; |
|---|
| 186 | 298 | #size-cells = <1>; |
|---|
| 187 | 299 | interrupts = <100>; |
|---|
| 188 | | - dmas = <&edma 52>; |
|---|
| 300 | + dmas = <&edma 52 0>; |
|---|
| 189 | 301 | dma-names = "rxtx"; |
|---|
| 190 | 302 | gpmc,num-cs = <6>; |
|---|
| 191 | 303 | gpmc,num-waitpins = <2>; |
|---|
| .. | .. |
|---|
| 202 | 314 | #address-cells = <1>; |
|---|
| 203 | 315 | #size-cells = <0>; |
|---|
| 204 | 316 | interrupts = <70>; |
|---|
| 205 | | - dmas = <&edma 58 &edma 59>; |
|---|
| 317 | + dmas = <&edma 58 0 &edma 59 0>; |
|---|
| 206 | 318 | dma-names = "tx", "rx"; |
|---|
| 207 | 319 | }; |
|---|
| 208 | 320 | |
|---|
| .. | .. |
|---|
| 213 | 325 | #address-cells = <1>; |
|---|
| 214 | 326 | #size-cells = <0>; |
|---|
| 215 | 327 | interrupts = <71>; |
|---|
| 216 | | - dmas = <&edma 60 &edma 61>; |
|---|
| 328 | + dmas = <&edma 60 0 &edma 61 0>; |
|---|
| 217 | 329 | dma-names = "tx", "rx"; |
|---|
| 218 | 330 | }; |
|---|
| 219 | 331 | |
|---|
| .. | .. |
|---|
| 239 | 351 | #mbox-cells = <1>; |
|---|
| 240 | 352 | ti,mbox-num-users = <4>; |
|---|
| 241 | 353 | ti,mbox-num-fifos = <12>; |
|---|
| 242 | | - mbox_dsp: mbox_dsp { |
|---|
| 354 | + mbox_dsp: mbox-dsp { |
|---|
| 243 | 355 | ti,mbox-tx = <3 0 0>; |
|---|
| 244 | 356 | ti,mbox-rx = <0 0 0>; |
|---|
| 245 | 357 | }; |
|---|
| .. | .. |
|---|
| 311 | 423 | interrupts = <65>; |
|---|
| 312 | 424 | ti,spi-num-cs = <4>; |
|---|
| 313 | 425 | ti,hwmods = "mcspi1"; |
|---|
| 314 | | - dmas = <&edma 16 &edma 17 |
|---|
| 315 | | - &edma 18 &edma 19 |
|---|
| 316 | | - &edma 20 &edma 21 |
|---|
| 317 | | - &edma 22 &edma 23>; |
|---|
| 426 | + dmas = <&edma 16 0 &edma 17 0 |
|---|
| 427 | + &edma 18 0 &edma 19 0 |
|---|
| 428 | + &edma 20 0 &edma 21 0 |
|---|
| 429 | + &edma 22 0 &edma 23 0>; |
|---|
| 318 | 430 | dma-names = "tx0", "rx0", "tx1", "rx1", |
|---|
| 319 | 431 | "tx2", "rx2", "tx3", "rx3"; |
|---|
| 320 | 432 | }; |
|---|
| .. | .. |
|---|
| 324 | 436 | reg = <0x48060000 0x11000>; |
|---|
| 325 | 437 | ti,hwmods = "mmc1"; |
|---|
| 326 | 438 | interrupts = <64>; |
|---|
| 327 | | - dmas = <&edma 24 &edma 25>; |
|---|
| 439 | + dmas = <&edma 24 0 &edma 25 0>; |
|---|
| 328 | 440 | dma-names = "tx", "rx"; |
|---|
| 329 | 441 | }; |
|---|
| 330 | 442 | |
|---|
| 331 | | - timer1: timer@4802e000 { |
|---|
| 332 | | - compatible = "ti,dm816-timer"; |
|---|
| 333 | | - reg = <0x4802e000 0x2000>; |
|---|
| 334 | | - interrupts = <67>; |
|---|
| 335 | | - ti,hwmods = "timer1"; |
|---|
| 336 | | - ti,timer-alwon; |
|---|
| 337 | | - clocks = <&timer1_fck>; |
|---|
| 443 | + timer1_target: target-module@4802e000 { |
|---|
| 444 | + compatible = "ti,sysc-omap4-timer", "ti,sysc"; |
|---|
| 445 | + reg = <0x4802e000 0x4>, |
|---|
| 446 | + <0x4802e010 0x4>; |
|---|
| 447 | + reg-names = "rev", "sysc"; |
|---|
| 448 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 449 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 450 | + <SYSC_IDLE_NO>, |
|---|
| 451 | + <SYSC_IDLE_SMART>, |
|---|
| 452 | + <SYSC_IDLE_SMART_WKUP>; |
|---|
| 453 | + clocks = <&alwon_clkctrl DM816_TIMER1_CLKCTRL 0>; |
|---|
| 338 | 454 | clock-names = "fck"; |
|---|
| 455 | + #address-cells = <1>; |
|---|
| 456 | + #size-cells = <1>; |
|---|
| 457 | + ranges = <0x0 0x4802e000 0x1000>; |
|---|
| 458 | + |
|---|
| 459 | + timer1: timer@0 { |
|---|
| 460 | + compatible = "ti,dm816-timer"; |
|---|
| 461 | + reg = <0 0x1000>; |
|---|
| 462 | + interrupts = <67>; |
|---|
| 463 | + ti,timer-alwon; |
|---|
| 464 | + clocks = <&alwon_clkctrl DM816_TIMER1_CLKCTRL 0>; |
|---|
| 465 | + clock-names = "fck"; |
|---|
| 466 | + }; |
|---|
| 339 | 467 | }; |
|---|
| 340 | 468 | |
|---|
| 341 | | - timer2: timer@48040000 { |
|---|
| 342 | | - compatible = "ti,dm816-timer"; |
|---|
| 343 | | - reg = <0x48040000 0x2000>; |
|---|
| 344 | | - interrupts = <68>; |
|---|
| 345 | | - ti,hwmods = "timer2"; |
|---|
| 346 | | - clocks = <&timer2_fck>; |
|---|
| 469 | + timer2_target: target-module@48040000 { |
|---|
| 470 | + compatible = "ti,sysc-omap4-timer", "ti,sysc"; |
|---|
| 471 | + reg = <0x48040000 0x4>, |
|---|
| 472 | + <0x48040010 0x4>; |
|---|
| 473 | + reg-names = "rev", "sysc"; |
|---|
| 474 | + ti,sysc-mask = <SYSC_OMAP4_SOFTRESET>; |
|---|
| 475 | + ti,sysc-sidle = <SYSC_IDLE_FORCE>, |
|---|
| 476 | + <SYSC_IDLE_NO>, |
|---|
| 477 | + <SYSC_IDLE_SMART>, |
|---|
| 478 | + <SYSC_IDLE_SMART_WKUP>; |
|---|
| 479 | + clocks = <&alwon_clkctrl DM816_TIMER2_CLKCTRL 0>; |
|---|
| 347 | 480 | clock-names = "fck"; |
|---|
| 481 | + #address-cells = <1>; |
|---|
| 482 | + #size-cells = <1>; |
|---|
| 483 | + ranges = <0x0 0x48040000 0x1000>; |
|---|
| 484 | + |
|---|
| 485 | + timer2: timer@0 { |
|---|
| 486 | + compatible = "ti,dm816-timer"; |
|---|
| 487 | + reg = <0 0x1000>; |
|---|
| 488 | + interrupts = <68>; |
|---|
| 489 | + clocks = <&alwon_clkctrl DM816_TIMER2_CLKCTRL 0>; |
|---|
| 490 | + clock-names = "fck"; |
|---|
| 491 | + }; |
|---|
| 348 | 492 | }; |
|---|
| 349 | 493 | |
|---|
| 350 | 494 | timer3: timer@48042000 { |
|---|
| .. | .. |
|---|
| 392 | 536 | reg = <0x48020000 0x2000>; |
|---|
| 393 | 537 | clock-frequency = <48000000>; |
|---|
| 394 | 538 | interrupts = <72>; |
|---|
| 395 | | - dmas = <&edma 26 &edma 27>; |
|---|
| 539 | + dmas = <&edma 26 0 &edma 27 0>; |
|---|
| 396 | 540 | dma-names = "tx", "rx"; |
|---|
| 397 | 541 | }; |
|---|
| 398 | 542 | |
|---|
| .. | .. |
|---|
| 402 | 546 | reg = <0x48022000 0x2000>; |
|---|
| 403 | 547 | clock-frequency = <48000000>; |
|---|
| 404 | 548 | interrupts = <73>; |
|---|
| 405 | | - dmas = <&edma 28 &edma 29>; |
|---|
| 549 | + dmas = <&edma 28 0 &edma 29 0>; |
|---|
| 406 | 550 | dma-names = "tx", "rx"; |
|---|
| 407 | 551 | }; |
|---|
| 408 | 552 | |
|---|
| .. | .. |
|---|
| 412 | 556 | reg = <0x48024000 0x2000>; |
|---|
| 413 | 557 | clock-frequency = <48000000>; |
|---|
| 414 | 558 | interrupts = <74>; |
|---|
| 415 | | - dmas = <&edma 30 &edma 31>; |
|---|
| 559 | + dmas = <&edma 30 0 &edma 31 0>; |
|---|
| 416 | 560 | dma-names = "tx", "rx"; |
|---|
| 417 | 561 | }; |
|---|
| 418 | 562 | |
|---|
| .. | .. |
|---|
| 530 | 674 | }; |
|---|
| 531 | 675 | |
|---|
| 532 | 676 | #include "dm816x-clocks.dtsi" |
|---|
| 677 | + |
|---|
| 678 | +/* Preferred always-on timer for clocksource */ |
|---|
| 679 | +&timer1_target { |
|---|
| 680 | + ti,no-reset-on-init; |
|---|
| 681 | + ti,no-idle; |
|---|
| 682 | + timer@0 { |
|---|
| 683 | + assigned-clocks = <&timer1_fck>; |
|---|
| 684 | + assigned-clock-parents = <&sys_clkin_ck>; |
|---|
| 685 | + }; |
|---|
| 686 | +}; |
|---|
| 687 | + |
|---|
| 688 | +/* Preferred timer for clockevent */ |
|---|
| 689 | +&timer2_target { |
|---|
| 690 | + ti,no-reset-on-init; |
|---|
| 691 | + ti,no-idle; |
|---|
| 692 | + timer@0 { |
|---|
| 693 | + assigned-clocks = <&timer2_fck>; |
|---|
| 694 | + assigned-clock-parents = <&sys_clkin_ck>; |
|---|
| 695 | + }; |
|---|
| 696 | +}; |
|---|