123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327 |
- // SPDX-License-Identifier: GPL-2.0+
- /*
- * Copyright 2018-2020 NXP
- * Dong Aisheng <[email protected]>
- */
- #include <dt-bindings/clock/imx8-lpcg.h>
- #include <dt-bindings/firmware/imx/rsrc.h>
- lsio_subsys: bus@5d000000 {
- compatible = "simple-bus";
- #address-cells = <1>;
- #size-cells = <1>;
- ranges = <0x5d000000 0x0 0x5d000000 0x1000000>;
- lsio_mem_clk: clock-lsio-mem {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <200000000>;
- clock-output-names = "lsio_mem_clk";
- };
- lsio_bus_clk: clock-lsio-bus {
- compatible = "fixed-clock";
- #clock-cells = <0>;
- clock-frequency = <100000000>;
- clock-output-names = "lsio_bus_clk";
- };
- lsio_gpio0: gpio@5d080000 {
- reg = <0x5d080000 0x10000>;
- interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_0>;
- };
- lsio_gpio1: gpio@5d090000 {
- reg = <0x5d090000 0x10000>;
- interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_1>;
- };
- lsio_gpio2: gpio@5d0a0000 {
- reg = <0x5d0a0000 0x10000>;
- interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_2>;
- };
- lsio_gpio3: gpio@5d0b0000 {
- reg = <0x5d0b0000 0x10000>;
- interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_3>;
- };
- lsio_gpio4: gpio@5d0c0000 {
- reg = <0x5d0c0000 0x10000>;
- interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_4>;
- };
- lsio_gpio5: gpio@5d0d0000 {
- reg = <0x5d0d0000 0x10000>;
- interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_5>;
- };
- lsio_gpio6: gpio@5d0e0000 {
- reg = <0x5d0e0000 0x10000>;
- interrupts = <GIC_SPI 142 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_6>;
- };
- lsio_gpio7: gpio@5d0f0000 {
- reg = <0x5d0f0000 0x10000>;
- interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>;
- gpio-controller;
- #gpio-cells = <2>;
- interrupt-controller;
- #interrupt-cells = <2>;
- power-domains = <&pd IMX_SC_R_GPIO_7>;
- };
- lsio_mu0: mailbox@5d1b0000 {
- reg = <0x5d1b0000 0x10000>;
- interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- status = "disabled";
- };
- lsio_mu1: mailbox@5d1c0000 {
- reg = <0x5d1c0000 0x10000>;
- interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- };
- lsio_mu2: mailbox@5d1d0000 {
- reg = <0x5d1d0000 0x10000>;
- interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- status = "disabled";
- };
- lsio_mu3: mailbox@5d1e0000 {
- reg = <0x5d1e0000 0x10000>;
- interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- status = "disabled";
- };
- lsio_mu4: mailbox@5d1f0000 {
- reg = <0x5d1f0000 0x10000>;
- interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- status = "disabled";
- };
- lsio_mu5: mailbox@5d200000 {
- reg = <0x5d200000 0x10000>;
- interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- power-domains = <&pd IMX_SC_R_MU_5A>;
- status = "disabled";
- };
- lsio_mu6: mailbox@5d210000 {
- reg = <0x5d210000 0x10000>;
- interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- power-domains = <&pd IMX_SC_R_MU_6A>;
- status = "disabled";
- };
- lsio_mu13: mailbox@5d280000 {
- reg = <0x5d280000 0x10000>;
- interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
- #mbox-cells = <2>;
- power-domains = <&pd IMX_SC_R_MU_13A>;
- };
- /* LPCG clocks */
- pwm0_lpcg: clock-controller@5d400000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d400000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_0 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_0 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_0 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_0 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm0_lpcg_ipg_clk",
- "pwm0_lpcg_ipg_hf_clk",
- "pwm0_lpcg_ipg_s_clk",
- "pwm0_lpcg_ipg_slv_clk",
- "pwm0_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_0>;
- };
- pwm1_lpcg: clock-controller@5d410000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d410000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_1 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_1 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_1 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_1 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm1_lpcg_ipg_clk",
- "pwm1_lpcg_ipg_hf_clk",
- "pwm1_lpcg_ipg_s_clk",
- "pwm1_lpcg_ipg_slv_clk",
- "pwm1_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_1>;
- };
- pwm2_lpcg: clock-controller@5d420000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d420000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_2 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_2 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_2 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_2 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm2_lpcg_ipg_clk",
- "pwm2_lpcg_ipg_hf_clk",
- "pwm2_lpcg_ipg_s_clk",
- "pwm2_lpcg_ipg_slv_clk",
- "pwm2_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_2>;
- };
- pwm3_lpcg: clock-controller@5d430000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d430000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_3 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_3 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_3 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_3 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm3_lpcg_ipg_clk",
- "pwm3_lpcg_ipg_hf_clk",
- "pwm3_lpcg_ipg_s_clk",
- "pwm3_lpcg_ipg_slv_clk",
- "pwm3_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_3>;
- };
- pwm4_lpcg: clock-controller@5d440000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d440000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_4 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_4 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_4 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_4 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm4_lpcg_ipg_clk",
- "pwm4_lpcg_ipg_hf_clk",
- "pwm4_lpcg_ipg_s_clk",
- "pwm4_lpcg_ipg_slv_clk",
- "pwm4_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_4>;
- };
- pwm5_lpcg: clock-controller@5d450000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d450000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_5 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_5 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_5 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_5 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm5_lpcg_ipg_clk",
- "pwm5_lpcg_ipg_hf_clk",
- "pwm5_lpcg_ipg_s_clk",
- "pwm5_lpcg_ipg_slv_clk",
- "pwm5_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_5>;
- };
- pwm6_lpcg: clock-controller@5d460000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d460000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_6 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_6 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_6 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_6 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm6_lpcg_ipg_clk",
- "pwm6_lpcg_ipg_hf_clk",
- "pwm6_lpcg_ipg_s_clk",
- "pwm6_lpcg_ipg_slv_clk",
- "pwm6_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_6>;
- };
- pwm7_lpcg: clock-controller@5d470000 {
- compatible = "fsl,imx8qxp-lpcg";
- reg = <0x5d470000 0x10000>;
- #clock-cells = <1>;
- clocks = <&clk IMX_SC_R_PWM_7 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_7 IMX_SC_PM_CLK_PER>,
- <&clk IMX_SC_R_PWM_7 IMX_SC_PM_CLK_PER>,
- <&lsio_bus_clk>,
- <&clk IMX_SC_R_PWM_7 IMX_SC_PM_CLK_PER>;
- clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>,
- <IMX_LPCG_CLK_4>, <IMX_LPCG_CLK_5>,
- <IMX_LPCG_CLK_6>;
- clock-output-names = "pwm7_lpcg_ipg_clk",
- "pwm7_lpcg_ipg_hf_clk",
- "pwm7_lpcg_ipg_s_clk",
- "pwm7_lpcg_ipg_slv_clk",
- "pwm7_lpcg_ipg_mstr_clk";
- power-domains = <&pd IMX_SC_R_PWM_7>;
- };
- };
|