// SPDX-License-Identifier: GPL-2.0
/*
* Keystone 2 Kepler/Hawking soc specific device tree
*
* Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
*/
#include <dt-bindings/reset/ti-syscon.h>
/ {
compatible = "ti,k2hk", "ti,keystone";
model = "Texas Instruments Keystone 2 Kepler/Hawking SoC";
cpus {
#address-cells = <1>;
#size-cells = <0>;
interrupt-parent = <&gic>;
cpu@0 {
compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <0>;
};
cpu@1 {
compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <1>;
};
cpu@2 {
compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <2>;
};
cpu@3 {
compatible = "arm,cortex-a15";
device_type = "cpu";
reg = <3>;
};
};
aliases {
rproc0 = &dsp0;
rproc1 = &dsp1;
rproc2 = &dsp2;
rproc3 = &dsp3;
rproc4 = &dsp4;
rproc5 = &dsp5;
rproc6 = &dsp6;
rproc7 = &dsp7;
};
};
&soc0 {
/include/ "keystone-k2hk-clocks.dtsi"
msm_ram: msmram@c000000 {
compatible = "mmio-sram";
reg = <0x0c000000 0x600000>;
ranges = <0x0 0x0c000000 0x600000>;
#address-cells = <1>;
#size-cells = <1>;
sram-bm@5f0000 {
reg = <0x5f0000 0x8000>;
};
};
psc: power-sleep-controller@2350000 {
pscrst: reset-controller {
compatible = "ti,k2hk-pscrst", "ti,syscon-reset";
#reset-cells = <1>;
ti,reset-bits = <
0xa3c 8 0xa3c 8 0x83c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 0: dsp0 */
0xa40 8 0xa40 8 0x840 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 1: dsp1 */
0xa44 8 0xa44 8 0x844 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 2: dsp2 */
0xa48 8 0xa48 8 0x848 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 3: dsp3 */
0xa4c 8 0xa4c 8 0x84c 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 4: dsp4 */
0xa50 8 0xa50 8 0x850 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 5: dsp5 */
0xa54 8 0xa54 8 0x854 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 6: dsp6 */
0xa58 8 0xa58 8 0x858 8 (ASSERT_CLEAR | DEASSERT_SET | STATUS_CLEAR) /* 7: dsp7 */
>;
};
};
devctrl: device-state-control@2620000 {
dspgpio0: keystone_dsp_gpio@240 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x240 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x240>;
};
dspgpio1: keystone_dsp_gpio@244 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x244 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x244>;
};
dspgpio2: keystone_dsp_gpio@248 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x248 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x248>;
};
dspgpio3: keystone_dsp_gpio@24c {
compatible = "ti,keystone-dsp-gpio";
reg = <0x24c 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x24c>;
};
dspgpio4: keystone_dsp_gpio@250 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x250 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x250>;
};
dspgpio5: keystone_dsp_gpio@254 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x254 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x254>;
};
dspgpio6: keystone_dsp_gpio@258 {
compatible = "ti,keystone-dsp-gpio";
reg = <0x258 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x258>;
};
dspgpio7: keystone_dsp_gpio@25c {
compatible = "ti,keystone-dsp-gpio";
reg = <0x25c 0x4>;
gpio-controller;
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x25c>;
};
};
dsp0: dsp@10800000 {
compatible = "ti,k2hk-dsp";
reg = <0x10800000 0x00100000>,
<0x10e00000 0x00008000>,
<0x10f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem0>;
ti,syscon-dev = <&devctrl 0x40>;
resets = <&pscrst 0>;
interrupt-parent = <&kirq0>;
interrupts = <0 8>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio0 27 0>;
status = "disabled";
};
dsp1: dsp@11800000 {
compatible = "ti,k2hk-dsp";
reg = <0x11800000 0x00100000>,
<0x11e00000 0x00008000>,
<0x11f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem1>;
ti,syscon-dev = <&devctrl 0x44>;
resets = <&pscrst 1>;
interrupt-parent = <&kirq0>;
interrupts = <1 9>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio1 27 0>;
status = "disabled";
};
dsp2: dsp@12800000 {
compatible = "ti,k2hk-dsp";
reg = <0x12800000 0x00100000>,
<0x12e00000 0x00008000>,
<0x12f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem2>;
ti,syscon-dev = <&devctrl 0x48>;
resets = <&pscrst 2>;
interrupt-parent = <&kirq0>;
interrupts = <2 10>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio2 27 0>;
status = "disabled";
};
dsp3: dsp@13800000 {
compatible = "ti,k2hk-dsp";
reg = <0x13800000 0x00100000>,
<0x13e00000 0x00008000>,
<0x13f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem3>;
ti,syscon-dev = <&devctrl 0x4c>;
resets = <&pscrst 3>;
interrupt-parent = <&kirq0>;
interrupts = <3 11>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio3 27 0>;
status = "disabled";
};
dsp4: dsp@14800000 {
compatible = "ti,k2hk-dsp";
reg = <0x14800000 0x00100000>,
<0x14e00000 0x00008000>,
<0x14f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem4>;
ti,syscon-dev = <&devctrl 0x50>;
resets = <&pscrst 4>;
interrupt-parent = <&kirq0>;
interrupts = <4 12>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio4 27 0>;
status = "disabled";
};
dsp5: dsp@15800000 {
compatible = "ti,k2hk-dsp";
reg = <0x15800000 0x00100000>,
<0x15e00000 0x00008000>,
<0x15f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem5>;
ti,syscon-dev = <&devctrl 0x54>;
resets = <&pscrst 5>;
interrupt-parent = <&kirq0>;
interrupts = <5 13>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio5 27 0>;
status = "disabled";
};
dsp6: dsp@16800000 {
compatible = "ti,k2hk-dsp";
reg = <0x16800000 0x00100000>,
<0x16e00000 0x00008000>,
<0x16f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem6>;
ti,syscon-dev = <&devctrl 0x58>;
resets = <&pscrst 6>;
interrupt-parent = <&kirq0>;
interrupts = <6 14>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio6 27 0>;
status = "disabled";
};
dsp7: dsp@17800000 {
compatible = "ti,k2hk-dsp";
reg = <0x17800000 0x00100000>,
<0x17e00000 0x00008000>,
<0x17f00000 0x00008000>;
reg-names = "l2sram", "l1pram", "l1dram";
clocks = <&clkgem7>;
ti,syscon-dev = <&devctrl 0x5c>;
resets = <&pscrst 7>;
interrupt-parent = <&kirq0>;
interrupts = <7 15>;
interrupt-names = "vring", "exception";
kick-gpios = <&dspgpio7 27 0>;
status = "disabled";
};
mdio: mdio@2090300 {
compatible = "ti,keystone_mdio", "ti,davinci_mdio";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x02090300 0x100>;
status = "disabled";
clocks = <&clkcpgmac>;
clock-names = "fck";
bus_freq = <2500000>;
};
/include/ "keystone-k2hk-netcp.dtsi"
};