[EXT] [PATCH v4 2/3] arm64: dts: freescale: Add basic dtsi for imx943

Carlos Song carlos.song at nxp.com
Tue Apr 1 00:55:22 PDT 2025



> -----Original Message-----
> From: Jacky Bai <ping.bai at nxp.com>
> Sent: Tuesday, April 1, 2025 3:17 PM
> To: robh at kernel.org; krzk+dt at kernel.org; conor+dt at kernel.org;
> shawnguo at kernel.org; s.hauer at pengutronix.de
> Cc: kernel at pengutronix.de; festevam at gmail.com; devicetree at vger.kernel.org;
> imx at lists.linux.dev; linux-arm-kernel at lists.infradead.org; Aisheng Dong
> <aisheng.dong at nxp.com>; Peng Fan <peng.fan at nxp.com>; Frank Li
> <frank.li at nxp.com>
> Subject: [EXT] [PATCH v4 2/3] arm64: dts: freescale: Add basic dtsi for imx943
> 
> Caution: This is an external email. Please take care when clicking links or
> opening attachments. When in doubt, report the message using the 'Report this
> email' button
> 
> 
> Add the minimal dtsi support for i.MX943. i.MX943 is the
> first SoC of i.MX94 Family, create a common dtsi for the
> whole i.MX94 family, and the specific dtsi part for i.MX943.
> 
> The clock, power domain and perf index need to be used by
> the device nodes for resource reference, add them along
> with the dtsi support.
> 
> Signed-off-by: Jacky Bai <ping.bai at nxp.com>
> ---
>  - v4 changes:
>   - reorder the cpu node compatible string property as suggested by Frank
> 
>  - v3 changes:
>   - remove the blank line
>   - add PAD config macro define as suggested by Frank Li
>   - update the device nodes compatible strings for imx94 as suggested by
> Krzysztof
> 
>  - v2 changes:
>   - remove the unnecessary macro define in clock header as suggested by
> Krzysztof
>   - split the dtsi into imx94.dtsi and imx943.dtsi
>   - use low case in the pinfunc header as Frank suggested
>   - reorder the device nodes and properties
> ---
>  arch/arm64/boot/dts/freescale/imx94-clock.h   |  195 ++
>  arch/arm64/boot/dts/freescale/imx94-pinfunc.h | 1570 +++++++++++++++++
>  arch/arm64/boot/dts/freescale/imx94-power.h   |   41 +
>  arch/arm64/boot/dts/freescale/imx94.dtsi      | 1140 ++++++++++++
>  arch/arm64/boot/dts/freescale/imx943.dtsi     |  148 ++
>  5 files changed, 3094 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/freescale/imx94-clock.h
>  create mode 100644 arch/arm64/boot/dts/freescale/imx94-pinfunc.h
>  create mode 100644 arch/arm64/boot/dts/freescale/imx94-power.h
>  create mode 100644 arch/arm64/boot/dts/freescale/imx94.dtsi
>  create mode 100644 arch/arm64/boot/dts/freescale/imx943.dtsi
> 

...
> diff --git a/arch/arm64/boot/dts/freescale/imx94.dtsi
> b/arch/arm64/boot/dts/freescale/imx94.dtsi
> new file mode 100644
> index 000000000000..26e08ac51c36
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx94.dtsi
> @@ -0,0 +1,1140 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright 2024-2025 NXP
> + */
> +
> +#include <dt-bindings/dma/fsl-edma.h>
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/input/input.h>
> +#include <dt-bindings/interrupt-controller/arm-gic.h>
> +
> +#include "imx94-clock.h"
> +#include "imx94-pinfunc.h"
> +#include "imx94-power.h"

> +
> +                       i3c1: i3c at 44330000 {
> +                               compatible = "silvaco,i3c-master-v1";
> +                               reg = <0x44330000 0x10000>;
> +                               interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
> +                               #address-cells = <3>;
> +                               #size-cells = <0>;
> +                               clocks = <&scmi_clk IMX94_CLK_I3C1SLOW>,
> +                                        <&scmi_clk IMX94_CLK_BUSAON>,
> +                                        <&dummy>;
Hi, Jacky

Please change this clock order to this like i3c2. pclk is system clock and fclk is bus clock.

                                 clocks = <&scmi_clk IMX94_CLK_BUSAON>,
                                          <&scmi_clk IMX94_CLK_I3C1SLOW >,
                                          <&dummy>;

BR
Carlos
> +                               clock-names = "pclk", "fast_clk","slow_clk";
> +                               status = "disabled";
> +                       };
> +






More information about the linux-arm-kernel mailing list