Merge tag 'mips_5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / ti / k3-am64-main.dtsi
index ca59d1f..42d1d21 100644 (file)
@@ -5,6 +5,17 @@
  * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
  */
 
+#include <dt-bindings/phy/phy-cadence.h>
+#include <dt-bindings/phy/phy-ti.h>
+
+/ {
+       serdes_refclk: clock-cmnrefclk {
+               #clock-cells = <0>;
+               compatible = "fixed-clock";
+               clock-frequency = <0>;
+       };
+};
+
 &cbass_main {
        oc_sram: sram@70000000 {
                compatible = "mmio-sram";
                #size-cells = <1>;
                ranges = <0x0 0x00 0x70000000 0x200000>;
 
-               atf-sram@0 {
-                       reg = <0x0 0x1a000>;
+               tfa-sram@1c0000 {
+                       reg = <0x1c0000 0x20000>;
+               };
+
+               dmsc-sram@1e0000 {
+                       reg = <0x1e0000 0x1c000>;
+               };
+
+               sproxy-sram@1fc000 {
+                       reg = <0x1fc000 0x4000>;
+               };
+       };
+
+       main_conf: syscon@43000000 {
+               compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
+               reg = <0x0 0x43000000 0x0 0x20000>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+               ranges = <0x0 0x0 0x43000000 0x20000>;
+
+               serdes_ln_ctrl: mux-controller {
+                       compatible = "mmio-mux";
+                       #mux-control-cells = <1>;
+                       mux-reg-masks = <0x4080 0x3>; /* SERDES0 lane0 select */
                };
        };
 
                        reg = <0x4044 0x8>;
                        #phy-cells = <1>;
                };
+
+               epwm_tbclk: clock@4140 {
+                       compatible = "ti,am64-epwm-tbclk", "syscon";
+                       reg = <0x4130 0x4>;
+                       #clock-cells = <1>;
+               };
        };
 
        main_uart0: serial@2800000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02800000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart1: serial@2810000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02810000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart2: serial@2820000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02820000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart3: serial@2830000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02830000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart4: serial@2840000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02840000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart5: serial@2850000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02850000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
        main_uart6: serial@2860000 {
                compatible = "ti,am64-uart", "ti,am654-uart";
                reg = <0x00 0x02860000 0x00 0x100>;
-               reg-shift = <2>;
-               reg-io-width = <4>;
                interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
                clock-frequency = <48000000>;
                current-speed = <115200>;
                                ti,mac-only;
                                label = "port1";
                                phys = <&phy_gmii_sel 1>;
-                               mac-address = [00 00 de ad be ef];
+                               mac-address = [00 00 00 00 00 00];
+                               ti,syscon-efuse = <&main_conf 0x200>;
                        };
 
                        cpsw_port2: port@2 {
                                ti,mac-only;
                                label = "port2";
                                phys = <&phy_gmii_sel 2>;
-                               mac-address = [00 01 de ad be ef];
+                               mac-address = [00 00 00 00 00 00];
                        };
                };
 
                ti,mbox-num-users = <4>;
                ti,mbox-num-fifos = <16>;
        };
+
+       main_r5fss0: r5fss@78000000 {
+               compatible = "ti,am64-r5fss";
+               ti,cluster-mode = <0>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+               ranges = <0x78000000 0x00 0x78000000 0x10000>,
+                        <0x78100000 0x00 0x78100000 0x10000>,
+                        <0x78200000 0x00 0x78200000 0x08000>,
+                        <0x78300000 0x00 0x78300000 0x08000>;
+               power-domains = <&k3_pds 119 TI_SCI_PD_EXCLUSIVE>;
+
+               main_r5fss0_core0: r5f@78000000 {
+                       compatible = "ti,am64-r5f";
+                       reg = <0x78000000 0x00010000>,
+                             <0x78100000 0x00010000>;
+                       reg-names = "atcm", "btcm";
+                       ti,sci = <&dmsc>;
+                       ti,sci-dev-id = <121>;
+                       ti,sci-proc-ids = <0x01 0xff>;
+                       resets = <&k3_reset 121 1>;
+                       firmware-name = "am64-main-r5f0_0-fw";
+                       ti,atcm-enable = <1>;
+                       ti,btcm-enable = <1>;
+                       ti,loczrama = <1>;
+               };
+
+               main_r5fss0_core1: r5f@78200000 {
+                       compatible = "ti,am64-r5f";
+                       reg = <0x78200000 0x00008000>,
+                             <0x78300000 0x00008000>;
+                       reg-names = "atcm", "btcm";
+                       ti,sci = <&dmsc>;
+                       ti,sci-dev-id = <122>;
+                       ti,sci-proc-ids = <0x02 0xff>;
+                       resets = <&k3_reset 122 1>;
+                       firmware-name = "am64-main-r5f0_1-fw";
+                       ti,atcm-enable = <1>;
+                       ti,btcm-enable = <1>;
+                       ti,loczrama = <1>;
+               };
+       };
+
+       main_r5fss1: r5fss@78400000 {
+               compatible = "ti,am64-r5fss";
+               ti,cluster-mode = <0>;
+               #address-cells = <1>;
+               #size-cells = <1>;
+               ranges = <0x78400000 0x00 0x78400000 0x10000>,
+                        <0x78500000 0x00 0x78500000 0x10000>,
+                        <0x78600000 0x00 0x78600000 0x08000>,
+                        <0x78700000 0x00 0x78700000 0x08000>;
+               power-domains = <&k3_pds 120 TI_SCI_PD_EXCLUSIVE>;
+
+               main_r5fss1_core0: r5f@78400000 {
+                       compatible = "ti,am64-r5f";
+                       reg = <0x78400000 0x00010000>,
+                             <0x78500000 0x00010000>;
+                       reg-names = "atcm", "btcm";
+                       ti,sci = <&dmsc>;
+                       ti,sci-dev-id = <123>;
+                       ti,sci-proc-ids = <0x06 0xff>;
+                       resets = <&k3_reset 123 1>;
+                       firmware-name = "am64-main-r5f1_0-fw";
+                       ti,atcm-enable = <1>;
+                       ti,btcm-enable = <1>;
+                       ti,loczrama = <1>;
+               };
+
+               main_r5fss1_core1: r5f@78600000 {
+                       compatible = "ti,am64-r5f";
+                       reg = <0x78600000 0x00008000>,
+                             <0x78700000 0x00008000>;
+                       reg-names = "atcm", "btcm";
+                       ti,sci = <&dmsc>;
+                       ti,sci-dev-id = <124>;
+                       ti,sci-proc-ids = <0x07 0xff>;
+                       resets = <&k3_reset 124 1>;
+                       firmware-name = "am64-main-r5f1_1-fw";
+                       ti,atcm-enable = <1>;
+                       ti,btcm-enable = <1>;
+                       ti,loczrama = <1>;
+               };
+       };
+
+       serdes_wiz0: wiz@f000000 {
+               compatible = "ti,am64-wiz-10g";
+               #address-cells = <1>;
+               #size-cells = <1>;
+               power-domains = <&k3_pds 162 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 162 0>, <&k3_clks 162 1>, <&serdes_refclk>;
+               clock-names = "fck", "core_ref_clk", "ext_ref_clk";
+               num-lanes = <1>;
+               #reset-cells = <1>;
+               #clock-cells = <1>;
+               ranges = <0x0f000000 0x0 0x0f000000 0x00010000>;
+
+               assigned-clocks = <&k3_clks 162 1>;
+               assigned-clock-parents = <&k3_clks 162 5>;
+
+               serdes0: serdes@f000000 {
+                       compatible = "ti,j721e-serdes-10g";
+                       reg = <0x0f000000 0x00010000>;
+                       reg-names = "torrent_phy";
+                       resets = <&serdes_wiz0 0>;
+                       reset-names = "torrent_reset";
+                       clocks = <&serdes_wiz0 TI_WIZ_PLL0_REFCLK>,
+                                <&serdes_wiz0 TI_WIZ_PHY_EN_REFCLK>;
+                       clock-names = "refclk", "phy_en_refclk";
+                       assigned-clocks = <&serdes_wiz0 TI_WIZ_PLL0_REFCLK>,
+                                         <&serdes_wiz0 TI_WIZ_PLL1_REFCLK>,
+                                         <&serdes_wiz0 TI_WIZ_REFCLK_DIG>;
+                       assigned-clock-parents = <&k3_clks 162 1>,
+                                                <&k3_clks 162 1>,
+                                                <&k3_clks 162 1>;
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       #clock-cells = <1>;
+               };
+       };
+
+       pcie0_rc: pcie@f102000 {
+               compatible = "ti,am64-pcie-host", "ti,j721e-pcie-host";
+               reg = <0x00 0x0f102000 0x00 0x1000>,
+                     <0x00 0x0f100000 0x00 0x400>,
+                     <0x00 0x0d000000 0x00 0x00800000>,
+                     <0x00 0x68000000 0x00 0x00001000>;
+               reg-names = "intd_cfg", "user_cfg", "reg", "cfg";
+               interrupt-names = "link_state";
+               interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
+               device_type = "pci";
+               ti,syscon-pcie-ctrl = <&main_conf 0x4070>;
+               max-link-speed = <2>;
+               num-lanes = <1>;
+               power-domains = <&k3_pds 114 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 114 0>, <&serdes0 CDNS_TORRENT_REFCLK_DRIVER>;
+               clock-names = "fck", "pcie_refclk";
+               #address-cells = <3>;
+               #size-cells = <2>;
+               bus-range = <0x0 0xff>;
+               cdns,no-bar-match-nbits = <64>;
+               vendor-id = <0x104c>;
+               device-id = <0xb010>;
+               msi-map = <0x0 &gic_its 0x0 0x10000>;
+               ranges = <0x01000000 0x00 0x68001000  0x00 0x68001000  0x00 0x0010000>,
+                        <0x02000000 0x00 0x68011000  0x00 0x68011000  0x00 0x7fef000>;
+               dma-ranges = <0x02000000 0x0 0x0 0x0 0x0 0x00000010 0x0>;
+       };
+
+       pcie0_ep: pcie-ep@f102000 {
+               compatible = "ti,am64-pcie-ep", "ti,j721e-pcie-ep";
+               reg = <0x00 0x0f102000 0x00 0x1000>,
+                     <0x00 0x0f100000 0x00 0x400>,
+                     <0x00 0x0d000000 0x00 0x00800000>,
+                     <0x00 0x68000000 0x00 0x08000000>;
+               reg-names = "intd_cfg", "user_cfg", "reg", "mem";
+               interrupt-names = "link_state";
+               interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
+               ti,syscon-pcie-ctrl = <&main_conf 0x4070>;
+               max-link-speed = <2>;
+               num-lanes = <1>;
+               power-domains = <&k3_pds 114 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 114 0>;
+               clock-names = "fck";
+               max-functions = /bits/ 8 <1>;
+       };
+
+       epwm0: pwm@23000000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23000000 0x0 0x100>;
+               power-domains = <&k3_pds 86 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 0>, <&k3_clks 86 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm1: pwm@23010000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23010000 0x0 0x100>;
+               power-domains = <&k3_pds 87 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 1>, <&k3_clks 87 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm2: pwm@23020000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23020000 0x0 0x100>;
+               power-domains = <&k3_pds 88 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 2>, <&k3_clks 88 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm3: pwm@23030000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23030000 0x0 0x100>;
+               power-domains = <&k3_pds 89 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 3>, <&k3_clks 89 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm4: pwm@23040000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23040000 0x0 0x100>;
+               power-domains = <&k3_pds 90 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 4>, <&k3_clks 90 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm5: pwm@23050000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23050000 0x0 0x100>;
+               power-domains = <&k3_pds 91 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 5>, <&k3_clks 91 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm6: pwm@23060000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23060000 0x0 0x100>;
+               power-domains = <&k3_pds 92 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 6>, <&k3_clks 92 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm7: pwm@23070000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23070000 0x0 0x100>;
+               power-domains = <&k3_pds 93 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 7>, <&k3_clks 93 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       epwm8: pwm@23080000 {
+               compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23080000 0x0 0x100>;
+               power-domains = <&k3_pds 94 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&epwm_tbclk 8>, <&k3_clks 94 0>;
+               clock-names = "tbclk", "fck";
+       };
+
+       ecap0: pwm@23100000 {
+               compatible = "ti,am64-ecap", "ti,am3352-ecap";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23100000 0x0 0x60>;
+               power-domains = <&k3_pds 51 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 51 0>;
+               clock-names = "fck";
+       };
+
+       ecap1: pwm@23110000 {
+               compatible = "ti,am64-ecap", "ti,am3352-ecap";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23110000 0x0 0x60>;
+               power-domains = <&k3_pds 52 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 52 0>;
+               clock-names = "fck";
+       };
+
+       ecap2: pwm@23120000 {
+               compatible = "ti,am64-ecap", "ti,am3352-ecap";
+               #pwm-cells = <3>;
+               reg = <0x0 0x23120000 0x0 0x60>;
+               power-domains = <&k3_pds 53 TI_SCI_PD_EXCLUSIVE>;
+               clocks = <&k3_clks 53 0>;
+               clock-names = "fck";
+       };
 };