19f7053f6SRichard Zhu// SPDX-License-Identifier: GPL-2.0+ 29f7053f6SRichard Zhu/* 39f7053f6SRichard Zhu * Copyright 2024 NXP 49f7053f6SRichard Zhu * 59f7053f6SRichard Zhu * Richard Zhu <hongxing.zhu@nxp.com> 69f7053f6SRichard Zhu */ 79f7053f6SRichard Zhu#include <dt-bindings/phy/phy.h> 89f7053f6SRichard Zhu 99f7053f6SRichard Zhuhsio_axi_clk: clock-hsio-axi { 109f7053f6SRichard Zhu compatible = "fixed-clock"; 119f7053f6SRichard Zhu #clock-cells = <0>; 129f7053f6SRichard Zhu clock-frequency = <400000000>; 139f7053f6SRichard Zhu clock-output-names = "hsio_axi_clk"; 149f7053f6SRichard Zhu}; 159f7053f6SRichard Zhu 169f7053f6SRichard Zhuhsio_per_clk: clock-hsio-per { 179f7053f6SRichard Zhu compatible = "fixed-clock"; 189f7053f6SRichard Zhu #clock-cells = <0>; 199f7053f6SRichard Zhu clock-frequency = <133333333>; 209f7053f6SRichard Zhu clock-output-names = "hsio_per_clk"; 219f7053f6SRichard Zhu}; 229f7053f6SRichard Zhu 239f7053f6SRichard Zhuhsio_refa_clk: clock-hsio-refa { 249f7053f6SRichard Zhu compatible = "gpio-gate-clock"; 259f7053f6SRichard Zhu clocks = <&xtal100m>; 269f7053f6SRichard Zhu #clock-cells = <0>; 279f7053f6SRichard Zhu enable-gpios = <&lsio_gpio4 27 GPIO_ACTIVE_LOW>; 289f7053f6SRichard Zhu}; 299f7053f6SRichard Zhu 309f7053f6SRichard Zhuhsio_refb_clk: clock-hsio-refb { 319f7053f6SRichard Zhu compatible = "gpio-gate-clock"; 329f7053f6SRichard Zhu clocks = <&xtal100m>; 339f7053f6SRichard Zhu #clock-cells = <0>; 349f7053f6SRichard Zhu enable-gpios = <&lsio_gpio4 1 GPIO_ACTIVE_LOW>; 359f7053f6SRichard Zhu}; 369f7053f6SRichard Zhu 379f7053f6SRichard Zhuxtal100m: clock-xtal100m { 389f7053f6SRichard Zhu compatible = "fixed-clock"; 399f7053f6SRichard Zhu #clock-cells = <0>; 409f7053f6SRichard Zhu clock-frequency = <100000000>; 419f7053f6SRichard Zhu clock-output-names = "xtal_100MHz"; 429f7053f6SRichard Zhu}; 439f7053f6SRichard Zhu 449f7053f6SRichard Zhuhsio_subsys: bus@5f000000 { 459f7053f6SRichard Zhu compatible = "simple-bus"; 469f7053f6SRichard Zhu ranges = <0x5f000000 0x0 0x5f000000 0x01000000>, 479f7053f6SRichard Zhu <0x80000000 0x0 0x70000000 0x10000000>; 489f7053f6SRichard Zhu #address-cells = <1>; 499f7053f6SRichard Zhu #size-cells = <1>; 509f7053f6SRichard Zhu dma-ranges = <0x80000000 0 0x80000000 0x80000000>; 519f7053f6SRichard Zhu 529f7053f6SRichard Zhu pcieb: pcie@5f010000 { 539f7053f6SRichard Zhu compatible = "fsl,imx8q-pcie"; 549f7053f6SRichard Zhu reg = <0x5f010000 0x10000>, 559f7053f6SRichard Zhu <0x8ff00000 0x80000>; 569f7053f6SRichard Zhu reg-names = "dbi", "config"; 579f7053f6SRichard Zhu ranges = <0x81000000 0 0x00000000 0x8ff80000 0 0x00010000>, 589f7053f6SRichard Zhu <0x82000000 0 0x80000000 0x80000000 0 0x0ff00000>; 599f7053f6SRichard Zhu #interrupt-cells = <1>; 60f9893c34SAlexander Stein interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, 61f9893c34SAlexander Stein <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 62f9893c34SAlexander Stein interrupt-names = "msi", "dma"; 639f7053f6SRichard Zhu #address-cells = <3>; 649f7053f6SRichard Zhu #size-cells = <2>; 659f7053f6SRichard Zhu clocks = <&pcieb_lpcg IMX_LPCG_CLK_6>, 669f7053f6SRichard Zhu <&pcieb_lpcg IMX_LPCG_CLK_4>, 679f7053f6SRichard Zhu <&pcieb_lpcg IMX_LPCG_CLK_5>; 689f7053f6SRichard Zhu clock-names = "dbi", "mstr", "slv"; 699f7053f6SRichard Zhu bus-range = <0x00 0xff>; 709f7053f6SRichard Zhu device_type = "pci"; 719f7053f6SRichard Zhu interrupt-map = <0 0 0 1 &gic 0 105 4>, 729f7053f6SRichard Zhu <0 0 0 2 &gic 0 106 4>, 739f7053f6SRichard Zhu <0 0 0 3 &gic 0 107 4>, 749f7053f6SRichard Zhu <0 0 0 4 &gic 0 108 4>; 759f7053f6SRichard Zhu interrupt-map-mask = <0 0 0 0x7>; 769f7053f6SRichard Zhu num-lanes = <1>; 779f7053f6SRichard Zhu num-viewport = <4>; 789f7053f6SRichard Zhu power-domains = <&pd IMX_SC_R_PCIE_B>; 799f7053f6SRichard Zhu fsl,max-link-speed = <3>; 809f7053f6SRichard Zhu status = "disabled"; 819f7053f6SRichard Zhu }; 829f7053f6SRichard Zhu 83*d03743c5SFrank Li pcieb_ep: pcie-ep@5f010000 { 84*d03743c5SFrank Li compatible = "fsl,imx8q-pcie-ep"; 85*d03743c5SFrank Li reg = <0x5f010000 0x00010000>, 86*d03743c5SFrank Li <0x80000000 0x10000000>; 87*d03743c5SFrank Li reg-names = "dbi", "addr_space"; 88*d03743c5SFrank Li num-lanes = <1>; 89*d03743c5SFrank Li interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 90*d03743c5SFrank Li interrupt-names = "dma"; 91*d03743c5SFrank Li clocks = <&pcieb_lpcg IMX_LPCG_CLK_6>, 92*d03743c5SFrank Li <&pcieb_lpcg IMX_LPCG_CLK_4>, 93*d03743c5SFrank Li <&pcieb_lpcg IMX_LPCG_CLK_5>; 94*d03743c5SFrank Li clock-names = "dbi", "mstr", "slv"; 95*d03743c5SFrank Li power-domains = <&pd IMX_SC_R_PCIE_B>; 96*d03743c5SFrank Li fsl,max-link-speed = <3>; 97*d03743c5SFrank Li num-ib-windows = <6>; 98*d03743c5SFrank Li num-ob-windows = <6>; 99*d03743c5SFrank Li status = "disabled"; 100*d03743c5SFrank Li }; 101*d03743c5SFrank Li 1029f7053f6SRichard Zhu pcieb_lpcg: clock-controller@5f060000 { 1039f7053f6SRichard Zhu compatible = "fsl,imx8qxp-lpcg"; 1049f7053f6SRichard Zhu reg = <0x5f060000 0x10000>; 1059f7053f6SRichard Zhu clocks = <&hsio_axi_clk>, <&hsio_axi_clk>, <&hsio_axi_clk>; 1069f7053f6SRichard Zhu #clock-cells = <1>; 1079f7053f6SRichard Zhu clock-indices = <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>, <IMX_LPCG_CLK_6>; 1089f7053f6SRichard Zhu clock-output-names = "hsio_pcieb_mstr_axi_clk", 1099f7053f6SRichard Zhu "hsio_pcieb_slv_axi_clk", 1109f7053f6SRichard Zhu "hsio_pcieb_dbi_axi_clk"; 1119f7053f6SRichard Zhu power-domains = <&pd IMX_SC_R_PCIE_B>; 1129f7053f6SRichard Zhu }; 1139f7053f6SRichard Zhu 1149f7053f6SRichard Zhu phyx1_crr1_lpcg: clock-controller@5f0b0000 { 1159f7053f6SRichard Zhu compatible = "fsl,imx8qxp-lpcg"; 1169f7053f6SRichard Zhu reg = <0x5f0b0000 0x10000>; 1179f7053f6SRichard Zhu clocks = <&hsio_per_clk>; 1189f7053f6SRichard Zhu #clock-cells = <1>; 1199f7053f6SRichard Zhu clock-indices = <IMX_LPCG_CLK_4>; 1209f7053f6SRichard Zhu clock-output-names = "hsio_phyx1_per_clk"; 1219f7053f6SRichard Zhu power-domains = <&pd IMX_SC_R_SERDES_1>; 1229f7053f6SRichard Zhu }; 1239f7053f6SRichard Zhu 1249f7053f6SRichard Zhu pcieb_crr3_lpcg: clock-controller@5f0d0000 { 1259f7053f6SRichard Zhu compatible = "fsl,imx8qxp-lpcg"; 1269f7053f6SRichard Zhu reg = <0x5f0d0000 0x10000>; 1279f7053f6SRichard Zhu clocks = <&hsio_per_clk>; 1289f7053f6SRichard Zhu #clock-cells = <1>; 1299f7053f6SRichard Zhu clock-indices = <IMX_LPCG_CLK_4>; 1309f7053f6SRichard Zhu clock-output-names = "hsio_pcieb_per_clk"; 1319f7053f6SRichard Zhu power-domains = <&pd IMX_SC_R_PCIE_B>; 1329f7053f6SRichard Zhu }; 1339f7053f6SRichard Zhu 1349f7053f6SRichard Zhu misc_crr5_lpcg: clock-controller@5f0f0000 { 1359f7053f6SRichard Zhu compatible = "fsl,imx8qxp-lpcg"; 1369f7053f6SRichard Zhu reg = <0x5f0f0000 0x10000>; 1379f7053f6SRichard Zhu clocks = <&hsio_per_clk>; 1389f7053f6SRichard Zhu #clock-cells = <1>; 1399f7053f6SRichard Zhu clock-indices = <IMX_LPCG_CLK_4>; 1409f7053f6SRichard Zhu clock-output-names = "hsio_misc_per_clk"; 1419f7053f6SRichard Zhu power-domains = <&pd IMX_SC_R_HSIO_GPIO>; 1429f7053f6SRichard Zhu }; 1439f7053f6SRichard Zhu}; 144