1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+ 2*0e8011faSEmmanuel Vadot/* 3*0e8011faSEmmanuel Vadot * Copyright 2024 NXP 4*0e8011faSEmmanuel Vadot * Dong Aisheng <aisheng.dong@nxp.com> 5*0e8011faSEmmanuel Vadot */ 6*0e8011faSEmmanuel Vadot 7*0e8011faSEmmanuel Vadot#include <dt-bindings/firmware/imx/rsrc.h> 8*0e8011faSEmmanuel Vadot#include <dt-bindings/clock/imx8-lpcg.h> 9*0e8011faSEmmanuel Vadot 10*0e8011faSEmmanuel Vadotcm41_ipg_clk: clock-cm41-ipg { 11*0e8011faSEmmanuel Vadot compatible = "fixed-clock"; 12*0e8011faSEmmanuel Vadot #clock-cells = <0>; 13*0e8011faSEmmanuel Vadot clock-frequency = <132000000>; 14*0e8011faSEmmanuel Vadot clock-output-names = "cm41_ipg_clk"; 15*0e8011faSEmmanuel Vadot}; 16*0e8011faSEmmanuel Vadot 17*0e8011faSEmmanuel Vadotcm41_subsys: bus@38000000 { 18*0e8011faSEmmanuel Vadot compatible = "simple-bus"; 19*0e8011faSEmmanuel Vadot #address-cells = <1>; 20*0e8011faSEmmanuel Vadot #size-cells = <1>; 21*0e8011faSEmmanuel Vadot ranges = <0x38000000 0x0 0x38000000 0x4000000>; 22*0e8011faSEmmanuel Vadot interrupt-parent = <&cm41_intmux>; 23*0e8011faSEmmanuel Vadot 24*0e8011faSEmmanuel Vadot cm41_i2c: i2c@3b230000 { 25*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c"; 26*0e8011faSEmmanuel Vadot reg = <0x3b230000 0x1000>; 27*0e8011faSEmmanuel Vadot interrupts = <9 IRQ_TYPE_LEVEL_HIGH>; 28*0e8011faSEmmanuel Vadot clocks = <&cm41_i2c_lpcg IMX_LPCG_CLK_0>, 29*0e8011faSEmmanuel Vadot <&cm41_i2c_lpcg IMX_LPCG_CLK_4>; 30*0e8011faSEmmanuel Vadot clock-names = "per", "ipg"; 31*0e8011faSEmmanuel Vadot assigned-clocks = <&clk IMX_SC_R_M4_1_I2C IMX_SC_PM_CLK_PER>; 32*0e8011faSEmmanuel Vadot assigned-clock-rates = <24000000>; 33*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_M4_1_I2C>; 34*0e8011faSEmmanuel Vadot status = "disabled"; 35*0e8011faSEmmanuel Vadot }; 36*0e8011faSEmmanuel Vadot 37*0e8011faSEmmanuel Vadot cm41_intmux: intmux@3b400000 { 38*0e8011faSEmmanuel Vadot compatible = "fsl,imx-intmux"; 39*0e8011faSEmmanuel Vadot reg = <0x3b400000 0x1000>; 40*0e8011faSEmmanuel Vadot interrupt-parent = <&gic>; 41*0e8011faSEmmanuel Vadot interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 42*0e8011faSEmmanuel Vadot <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 43*0e8011faSEmmanuel Vadot <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 44*0e8011faSEmmanuel Vadot <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>, 45*0e8011faSEmmanuel Vadot <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>, 46*0e8011faSEmmanuel Vadot <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 47*0e8011faSEmmanuel Vadot <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 48*0e8011faSEmmanuel Vadot <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 49*0e8011faSEmmanuel Vadot interrupt-controller; 50*0e8011faSEmmanuel Vadot #interrupt-cells = <2>; 51*0e8011faSEmmanuel Vadot clocks = <&cm41_ipg_clk>; 52*0e8011faSEmmanuel Vadot clock-names = "ipg"; 53*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_M4_1_INTMUX>; 54*0e8011faSEmmanuel Vadot status = "disabled"; 55*0e8011faSEmmanuel Vadot }; 56*0e8011faSEmmanuel Vadot 57*0e8011faSEmmanuel Vadot cm41_i2c_lpcg: clock-controller@3b630000 { 58*0e8011faSEmmanuel Vadot compatible = "fsl,imx8qxp-lpcg"; 59*0e8011faSEmmanuel Vadot reg = <0x3b630000 0x1000>; 60*0e8011faSEmmanuel Vadot #clock-cells = <1>; 61*0e8011faSEmmanuel Vadot clocks = <&clk IMX_SC_R_M4_1_I2C IMX_SC_PM_CLK_PER>, 62*0e8011faSEmmanuel Vadot <&cm41_ipg_clk>; 63*0e8011faSEmmanuel Vadot clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>; 64*0e8011faSEmmanuel Vadot clock-output-names = "cm41_lpcg_i2c_clk", 65*0e8011faSEmmanuel Vadot "cm41_lpcg_i2c_ipg_clk"; 66*0e8011faSEmmanuel Vadot power-domains = <&pd IMX_SC_R_M4_1_I2C>; 67*0e8011faSEmmanuel Vadot }; 68*0e8011faSEmmanuel Vadot}; 69