Files
cubelinux-kernel/arch/arm64/boot/dts/freescale/imx8-ss-cm40.dtsi
T
Greg Kroah-Hartman 598cf27219 Linux 6.19.3
Link: https://lore.kernel.org/r/20260217200002.683975158@linuxfoundation.org
Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com>
Tested-by: Peter Schneider <pschneider1968@googlemail.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Tested-by: Brett A C Sheffield <bacs@librecast.net>
Tested-by: Mark Brown <broonie@kernel.org>
Tested-by: Luna Jernberg <droidbittin@gmail.com>
Tested-by: Ronald Warsow <rwarsow@gmx.de>
Tested-by: Justin M. Forbes <jforbes@fedoraproject.org>
Tested-by: Ron Economos <re@w6rz.net>
Tested-by: Miguel Ojeda <ojeda@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-02-19 16:33:27 +01:00

92 lines
2.7 KiB
Devicetree

// SPDX-License-Identifier: GPL-2.0+
/*
* Copyright 2024 NXP
* Dong Aisheng <aisheng.dong@nxp.com>
*/
#include <dt-bindings/firmware/imx/rsrc.h>
cm40_ipg_clk: clock-cm40-ipg {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <132000000>;
clock-output-names = "cm40_ipg_clk";
};
cm40_subsys: bus@34000000 {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x34000000 0x0 0x34000000 0x4000000>;
interrupt-parent = <&cm40_intmux>;
cm40_lpuart: serial@37220000 {
compatible = "fsl,imx8qxp-lpuart";
reg = <0x37220000 0x1000>;
interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cm40_uart_lpcg IMX_LPCG_CLK_1>, <&cm40_uart_lpcg IMX_LPCG_CLK_0>;
clock-names = "ipg", "baud";
assigned-clocks = <&clk IMX_SC_R_M4_0_UART IMX_SC_PM_CLK_PER>;
assigned-clock-rates = <24000000>;
power-domains = <&pd IMX_SC_R_M4_0_UART>;
status = "disabled";
};
cm40_i2c: i2c@37230000 {
compatible = "fsl,imx8qxp-lpi2c", "fsl,imx7ulp-lpi2c";
reg = <0x37230000 0x1000>;
interrupts = <9 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&cm40_i2c_lpcg IMX_LPCG_CLK_0>,
<&cm40_i2c_lpcg IMX_LPCG_CLK_4>;
clock-names = "per", "ipg";
assigned-clocks = <&clk IMX_SC_R_M4_0_I2C IMX_SC_PM_CLK_PER>;
assigned-clock-rates = <24000000>;
power-domains = <&pd IMX_SC_R_M4_0_I2C>;
status = "disabled";
};
cm40_intmux: intmux@37400000 {
compatible = "fsl,imx-intmux";
reg = <0x37400000 0x1000>;
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
interrupt-controller;
#interrupt-cells = <2>;
clocks = <&cm40_ipg_clk>;
clock-names = "ipg";
power-domains = <&pd IMX_SC_R_M4_0_INTMUX>;
status = "disabled";
};
cm40_uart_lpcg: clock-controller@37620000 {
compatible = "fsl,imx8qxp-lpcg";
reg = <0x37620000 0x1000>;
#clock-cells = <1>;
clocks = <&clk IMX_SC_R_M4_0_UART IMX_SC_PM_CLK_PER>,
<&cm40_ipg_clk>;
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_1>;
clock-output-names = "cm40_lpcg_uart_clk",
"cm40_lpcg_uart_ipg_clk";
power-domains = <&pd IMX_SC_R_M4_0_UART>;
};
cm40_i2c_lpcg: clock-controller@37630000 {
compatible = "fsl,imx8qxp-lpcg";
reg = <0x37630000 0x1000>;
#clock-cells = <1>;
clocks = <&clk IMX_SC_R_M4_0_I2C IMX_SC_PM_CLK_PER>,
<&cm40_ipg_clk>;
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
clock-output-names = "cm40_lpcg_i2c_clk",
"cm40_lpcg_i2c_ipg_clk";
power-domains = <&pd IMX_SC_R_M4_0_I2C>;
};
};