1// SPDX-License-Identifier: GPL-2.0+ 2/* 3 * Copyright 2018-2019 NXP 4 * Dong Aisheng <aisheng.dong@nxp.com> 5 */ 6 7#include <dt-bindings/clock/imx8-lpcg.h> 8#include <dt-bindings/firmware/imx/rsrc.h> 9 10conn_subsys: bus@5b000000 { 11 compatible = "simple-bus"; 12 #address-cells = <1>; 13 #size-cells = <1>; 14 ranges = <0x5b000000 0x0 0x5b000000 0x1000000>; 15 16 conn_axi_clk: clock-conn-axi { 17 compatible = "fixed-clock"; 18 #clock-cells = <0>; 19 clock-frequency = <333333333>; 20 clock-output-names = "conn_axi_clk"; 21 }; 22 23 conn_ahb_clk: clock-conn-ahb { 24 compatible = "fixed-clock"; 25 #clock-cells = <0>; 26 clock-frequency = <166666666>; 27 clock-output-names = "conn_ahb_clk"; 28 }; 29 30 conn_ipg_clk: clock-conn-ipg { 31 compatible = "fixed-clock"; 32 #clock-cells = <0>; 33 clock-frequency = <83333333>; 34 clock-output-names = "conn_ipg_clk"; 35 }; 36 37 usdhc1: mmc@5b010000 { 38 interrupts = <GIC_SPI 232 IRQ_TYPE_LEVEL_HIGH>; 39 reg = <0x5b010000 0x10000>; 40 clocks = <&sdhc0_lpcg IMX_LPCG_CLK_4>, 41 <&sdhc0_lpcg IMX_LPCG_CLK_5>, 42 <&sdhc0_lpcg IMX_LPCG_CLK_0>; 43 clock-names = "ipg", "per", "ahb"; 44 power-domains = <&pd IMX_SC_R_SDHC_0>; 45 status = "disabled"; 46 }; 47 48 usdhc2: mmc@5b020000 { 49 interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>; 50 reg = <0x5b020000 0x10000>; 51 clocks = <&sdhc1_lpcg IMX_LPCG_CLK_4>, 52 <&sdhc1_lpcg IMX_LPCG_CLK_5>, 53 <&sdhc1_lpcg IMX_LPCG_CLK_0>; 54 clock-names = "ipg", "per", "ahb"; 55 power-domains = <&pd IMX_SC_R_SDHC_1>; 56 fsl,tuning-start-tap = <20>; 57 fsl,tuning-step= <2>; 58 status = "disabled"; 59 }; 60 61 usdhc3: mmc@5b030000 { 62 interrupts = <GIC_SPI 234 IRQ_TYPE_LEVEL_HIGH>; 63 reg = <0x5b030000 0x10000>; 64 clocks = <&sdhc2_lpcg IMX_LPCG_CLK_4>, 65 <&sdhc2_lpcg IMX_LPCG_CLK_5>, 66 <&sdhc2_lpcg IMX_LPCG_CLK_0>; 67 clock-names = "ipg", "per", "ahb"; 68 power-domains = <&pd IMX_SC_R_SDHC_2>; 69 status = "disabled"; 70 }; 71 72 fec1: ethernet@5b040000 { 73 reg = <0x5b040000 0x10000>; 74 interrupts = <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>, 75 <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, 76 <GIC_SPI 257 IRQ_TYPE_LEVEL_HIGH>, 77 <GIC_SPI 259 IRQ_TYPE_LEVEL_HIGH>; 78 clocks = <&enet0_lpcg IMX_LPCG_CLK_4>, 79 <&enet0_lpcg IMX_LPCG_CLK_2>, 80 <&enet0_lpcg IMX_LPCG_CLK_3>, 81 <&enet0_lpcg IMX_LPCG_CLK_0>; 82 clock-names = "ipg", "ahb", "enet_clk_ref", "ptp"; 83 assigned-clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>, 84 <&clk IMX_SC_R_ENET_0 IMX_SC_C_CLKDIV>; 85 assigned-clock-rates = <250000000>, <125000000>; 86 fsl,num-tx-queues=<3>; 87 fsl,num-rx-queues=<3>; 88 power-domains = <&pd IMX_SC_R_ENET_0>; 89 status = "disabled"; 90 }; 91 92 fec2: ethernet@5b050000 { 93 reg = <0x5b050000 0x10000>; 94 interrupts = <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>, 95 <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>, 96 <GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>, 97 <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>; 98 clocks = <&enet1_lpcg IMX_LPCG_CLK_4>, 99 <&enet1_lpcg IMX_LPCG_CLK_2>, 100 <&enet1_lpcg IMX_LPCG_CLK_3>, 101 <&enet1_lpcg IMX_LPCG_CLK_0>; 102 clock-names = "ipg", "ahb", "enet_clk_ref", "ptp"; 103 assigned-clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>, 104 <&clk IMX_SC_R_ENET_1 IMX_SC_C_CLKDIV>; 105 assigned-clock-rates = <250000000>, <125000000>; 106 fsl,num-tx-queues=<3>; 107 fsl,num-rx-queues=<3>; 108 power-domains = <&pd IMX_SC_R_ENET_1>; 109 status = "disabled"; 110 }; 111 112 /* LPCG clocks */ 113 sdhc0_lpcg: clock-controller@5b200000 { 114 compatible = "fsl,imx8qxp-lpcg"; 115 reg = <0x5b200000 0x10000>; 116 #clock-cells = <1>; 117 clocks = <&clk IMX_SC_R_SDHC_0 IMX_SC_PM_CLK_PER>, 118 <&conn_ipg_clk>, <&conn_axi_clk>; 119 clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>, 120 <IMX_LPCG_CLK_5>; 121 clock-output-names = "sdhc0_lpcg_per_clk", 122 "sdhc0_lpcg_ipg_clk", 123 "sdhc0_lpcg_ahb_clk"; 124 power-domains = <&pd IMX_SC_R_SDHC_0>; 125 }; 126 127 sdhc1_lpcg: clock-controller@5b210000 { 128 compatible = "fsl,imx8qxp-lpcg"; 129 reg = <0x5b210000 0x10000>; 130 #clock-cells = <1>; 131 clocks = <&clk IMX_SC_R_SDHC_1 IMX_SC_PM_CLK_PER>, 132 <&conn_ipg_clk>, <&conn_axi_clk>; 133 clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>, 134 <IMX_LPCG_CLK_5>; 135 clock-output-names = "sdhc1_lpcg_per_clk", 136 "sdhc1_lpcg_ipg_clk", 137 "sdhc1_lpcg_ahb_clk"; 138 power-domains = <&pd IMX_SC_R_SDHC_1>; 139 }; 140 141 sdhc2_lpcg: clock-controller@5b220000 { 142 compatible = "fsl,imx8qxp-lpcg"; 143 reg = <0x5b220000 0x10000>; 144 #clock-cells = <1>; 145 clocks = <&clk IMX_SC_R_SDHC_2 IMX_SC_PM_CLK_PER>, 146 <&conn_ipg_clk>, <&conn_axi_clk>; 147 clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>, 148 <IMX_LPCG_CLK_5>; 149 clock-output-names = "sdhc2_lpcg_per_clk", 150 "sdhc2_lpcg_ipg_clk", 151 "sdhc2_lpcg_ahb_clk"; 152 power-domains = <&pd IMX_SC_R_SDHC_2>; 153 }; 154 155 enet0_lpcg: clock-controller@5b230000 { 156 compatible = "fsl,imx8qxp-lpcg"; 157 reg = <0x5b230000 0x10000>; 158 #clock-cells = <1>; 159 clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>, 160 <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>, 161 <&conn_axi_clk>, 162 <&clk IMX_SC_R_ENET_0 IMX_SC_C_TXCLK>, 163 <&conn_ipg_clk>, 164 <&conn_ipg_clk>; 165 clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>, 166 <IMX_LPCG_CLK_2>, <IMX_LPCG_CLK_3>, 167 <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>; 168 clock-output-names = "enet0_lpcg_timer_clk", 169 "enet0_lpcg_txc_sampling_clk", 170 "enet0_lpcg_ahb_clk", 171 "enet0_lpcg_rgmii_txc_clk", 172 "enet0_lpcg_ipg_clk", 173 "enet0_lpcg_ipg_s_clk"; 174 power-domains = <&pd IMX_SC_R_ENET_0>; 175 }; 176 177 enet1_lpcg: clock-controller@5b240000 { 178 compatible = "fsl,imx8qxp-lpcg"; 179 reg = <0x5b240000 0x10000>; 180 #clock-cells = <1>; 181 clocks = <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>, 182 <&clk IMX_SC_R_ENET_1 IMX_SC_PM_CLK_PER>, 183 <&conn_axi_clk>, 184 <&clk IMX_SC_R_ENET_1 IMX_SC_C_TXCLK>, 185 <&conn_ipg_clk>, 186 <&conn_ipg_clk>; 187 clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>, 188 <IMX_LPCG_CLK_2>, <IMX_LPCG_CLK_3>, 189 <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>; 190 clock-output-names = "enet1_lpcg_timer_clk", 191 "enet1_lpcg_txc_sampling_clk", 192 "enet1_lpcg_ahb_clk", 193 "enet1_lpcg_rgmii_txc_clk", 194 "enet1_lpcg_ipg_clk", 195 "enet1_lpcg_ipg_s_clk"; 196 power-domains = <&pd IMX_SC_R_ENET_1>; 197 }; 198}; 199