Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003  * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
0004  *
0005  * Common PRUSS data for TI AM57xx platforms
0006  */
0007 
0008 &ocp {
0009         pruss1_tm: target-module@4b226000 {
0010                 compatible = "ti,sysc-pruss", "ti,sysc";
0011                 reg = <0x4b226000 0x4>,
0012                       <0x4b226004 0x4>;
0013                 reg-names = "rev", "sysc";
0014                 ti,sysc-mask = <(SYSC_PRUSS_STANDBY_INIT |
0015                                  SYSC_PRUSS_SUB_MWAIT)>;
0016                 ti,sysc-midle = <SYSC_IDLE_FORCE>,
0017                                 <SYSC_IDLE_NO>,
0018                                 <SYSC_IDLE_SMART>;
0019                 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0020                                 <SYSC_IDLE_NO>,
0021                                 <SYSC_IDLE_SMART>;
0022                 /* Domains (P, C): coreaon_pwrdm, l4per2_clkdm */
0023                 clocks = <&l4per2_clkctrl DRA7_L4PER2_PRUSS1_CLKCTRL 0>;
0024                 clock-names = "fck";
0025                 #address-cells = <1>;
0026                 #size-cells = <1>;
0027                 ranges = <0x00000000 0x4b200000 0x80000>;
0028 
0029                 pruss1: pruss@0 {
0030                         compatible = "ti,am5728-pruss";
0031                         reg = <0x0 0x80000>;
0032                         #address-cells = <1>;
0033                         #size-cells = <1>;
0034                         ranges;
0035 
0036                         pruss1_mem: memories@0 {
0037                                 reg = <0x0 0x2000>,
0038                                       <0x2000 0x2000>,
0039                                       <0x10000 0x8000>;
0040                                 reg-names = "dram0", "dram1",
0041                                             "shrdram2";
0042                         };
0043 
0044                         pruss1_cfg: cfg@26000 {
0045                                 compatible = "ti,pruss-cfg", "syscon";
0046                                 reg = <0x26000 0x2000>;
0047                                 #address-cells = <1>;
0048                                 #size-cells = <1>;
0049                                 ranges = <0x0 0x26000 0x2000>;
0050 
0051                                 clocks {
0052                                         #address-cells = <1>;
0053                                         #size-cells = <0>;
0054 
0055                                         pruss1_iepclk_mux: iepclk-mux@30 {
0056                                                 reg = <0x30>;
0057                                                 #clock-cells = <0>;
0058                                                 clocks = <&dpll_gmac_m3x2_ck>,  /* icss_iep_clk */
0059                                                          <&dpll_gmac_h13x2_ck>; /* icss_clk */
0060                                         };
0061                                 };
0062                         };
0063 
0064                         pruss1_mii_rt: mii-rt@32000 {
0065                                 compatible = "ti,pruss-mii", "syscon";
0066                                 reg = <0x32000 0x58>;
0067                         };
0068 
0069                         pruss1_intc: interrupt-controller@20000 {
0070                                 compatible = "ti,pruss-intc";
0071                                 reg = <0x20000 0x2000>;
0072                                 interrupt-controller;
0073                                 #interrupt-cells = <3>;
0074                                 interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
0075                                              <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
0076                                              <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
0077                                              <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
0078                                              <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
0079                                              <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
0080                                              <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
0081                                              <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
0082                                 interrupt-names = "host_intr0", "host_intr1",
0083                                                   "host_intr2", "host_intr3",
0084                                                   "host_intr4", "host_intr5",
0085                                                   "host_intr6", "host_intr7";
0086                         };
0087 
0088                         pru1_0: pru@34000 {
0089                                 compatible = "ti,am5728-pru";
0090                                 reg = <0x34000 0x3000>,
0091                                       <0x22000 0x400>,
0092                                       <0x22400 0x100>;
0093                                 reg-names = "iram", "control", "debug";
0094                                 firmware-name = "am57xx-pru1_0-fw";
0095                         };
0096 
0097                         pru1_1: pru@38000 {
0098                                 compatible = "ti,am5728-pru";
0099                                 reg = <0x38000 0x3000>,
0100                                       <0x24000 0x400>,
0101                                       <0x24400 0x100>;
0102                                 reg-names = "iram", "control", "debug";
0103                                 firmware-name = "am57xx-pru1_1-fw";
0104                         };
0105 
0106                         pruss1_mdio: mdio@32400 {
0107                                 compatible = "ti,davinci_mdio";
0108                                 #address-cells = <1>;
0109                                 #size-cells = <0>;
0110                                 clocks = <&dpll_gmac_h13x2_ck>;
0111                                 clock-names = "fck";
0112                                 bus_freq = <1000000>;
0113                                 reg = <0x32400 0x90>;
0114                         };
0115                 };
0116         };
0117 
0118         pruss2_tm: target-module@4b2a6000 {
0119                 compatible = "ti,sysc-pruss", "ti,sysc";
0120                 reg = <0x4b2a6000 0x4>,
0121                       <0x4b2a6004 0x4>;
0122                 reg-names = "rev", "sysc";
0123                 ti,sysc-mask = <(SYSC_PRUSS_STANDBY_INIT |
0124                                  SYSC_PRUSS_SUB_MWAIT)>;
0125                 ti,sysc-midle = <SYSC_IDLE_FORCE>,
0126                                 <SYSC_IDLE_NO>,
0127                                 <SYSC_IDLE_SMART>;
0128                 ti,sysc-sidle = <SYSC_IDLE_FORCE>,
0129                                 <SYSC_IDLE_NO>,
0130                                 <SYSC_IDLE_SMART>;
0131                 /* Domains (P, C): coreaon_pwrdm, l4per2_clkdm */
0132                 clocks = <&l4per2_clkctrl DRA7_L4PER2_PRUSS2_CLKCTRL 0>;
0133                 clock-names = "fck";
0134                 #address-cells = <1>;
0135                 #size-cells = <1>;
0136                 ranges = <0x00000000 0x4b280000 0x80000>;
0137 
0138                 pruss2: pruss@0 {
0139                         compatible = "ti,am5728-pruss";
0140                         reg = <0x0 0x80000>;
0141                         #address-cells = <1>;
0142                         #size-cells = <1>;
0143                         ranges;
0144 
0145                         pruss2_mem: memories@0 {
0146                                 reg = <0x0 0x2000>,
0147                                       <0x2000 0x2000>,
0148                                       <0x10000 0x8000>;
0149                                 reg-names = "dram0", "dram1",
0150                                             "shrdram2";
0151                         };
0152 
0153                         pruss2_cfg: cfg@26000 {
0154                                 compatible = "ti,pruss-cfg", "syscon";
0155                                 reg = <0x26000 0x2000>;
0156                                 #address-cells = <1>;
0157                                 #size-cells = <1>;
0158                                 ranges = <0x0 0x26000 0x2000>;
0159 
0160                                 clocks {
0161                                         #address-cells = <1>;
0162                                         #size-cells = <0>;
0163 
0164                                         pruss2_iepclk_mux: iepclk-mux@30 {
0165                                                 reg = <0x30>;
0166                                                 #clock-cells = <0>;
0167                                                 clocks = <&dpll_gmac_m3x2_ck>,  /* icss_iep_clk */
0168                                                          <&dpll_gmac_h13x2_ck>; /* icss_clk */
0169                                         };
0170                                 };
0171                         };
0172 
0173                         pruss2_mii_rt: mii-rt@32000 {
0174                                 compatible = "ti,pruss-mii", "syscon";
0175                                 reg = <0x32000 0x58>;
0176                         };
0177 
0178                         pruss2_intc: interrupt-controller@20000 {
0179                                 compatible = "ti,pruss-intc";
0180                                 reg = <0x20000 0x2000>;
0181                                 interrupt-controller;
0182                                 #interrupt-cells = <3>;
0183                                 interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
0184                                              <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
0185                                              <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
0186                                              <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
0187                                              <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
0188                                              <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>,
0189                                              <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
0190                                              <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>;
0191                                 interrupt-names = "host_intr0", "host_intr1",
0192                                                   "host_intr2", "host_intr3",
0193                                                   "host_intr4", "host_intr5",
0194                                                   "host_intr6", "host_intr7";
0195                         };
0196 
0197                         pru2_0: pru@34000 {
0198                                 compatible = "ti,am5728-pru";
0199                                 reg = <0x34000 0x3000>,
0200                                       <0x22000 0x400>,
0201                                       <0x22400 0x100>;
0202                                 reg-names = "iram", "control", "debug";
0203                                 firmware-name = "am57xx-pru2_0-fw";
0204                         };
0205 
0206                         pru2_1: pru@38000 {
0207                                 compatible = "ti,am5728-pru";
0208                                 reg = <0x38000 0x3000>,
0209                                       <0x24000 0x400>,
0210                                       <0x24400 0x100>;
0211                                 reg-names = "iram", "control", "debug";
0212                                 firmware-name = "am57xx-pru2_1-fw";
0213                         };
0214 
0215                         pruss2_mdio: mdio@32400 {
0216                                 compatible = "ti,davinci_mdio";
0217                                 #address-cells = <1>;
0218                                 #size-cells = <0>;
0219                                 clocks = <&dpll_gmac_h13x2_ck>;
0220                                 clock-names = "fck";
0221                                 bus_freq = <1000000>;
0222                                 reg = <0x32400 0x90>;
0223                         };
0224                 };
0225         };
0226 };