RE: [PATCH] arm64: dts: freescale: Add basic dtsi for imx943

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> Subject: Re: [PATCH] arm64: dts: freescale: Add basic dtsi for imx943
> 
> On Thu, Dec 12, 2024 at 05:35:55PM +0800, Jacky Bai wrote:
> > The i.MX 943 applications processors integrate up to four Arm Cortex
> > A55 cores and supports functional safety with built-in 2x Arm Cortex
> > M33 and M7 cores which can be configured asa safety island. Optimizing
> > performance and power efficiency for Industrial, IoT and automotive
> > devices, i.MX 943 processors are built with NXP’s innovative Energy
> > Flex architecture.
> >
> > This patch adds the minimal dtsi support for i.MX943 with peripherals
> > like uart, edma, i2c, spi, mu, sai etc.
> >
> > Signed-off-by: Jacky Bai <ping.bai@xxxxxxx>
> > ---
> >  arch/arm64/boot/dts/freescale/imx943-clock.h  |  196 +++
> > .../arm64/boot/dts/freescale/imx943-pinfunc.h | 1542
> +++++++++++++++++
> >  arch/arm64/boot/dts/freescale/imx943-power.h  |   41 +
> >  arch/arm64/boot/dts/freescale/imx943.dtsi     | 1284
> ++++++++++++++
> 
> No, this is untested, uncompilable.
> 
> We do not add dead code to the kernel. You need users.

Board dts was planned for later. Will include the minimal board dts part in v2.

> 
> >  4 files changed, 3063 insertions(+)
> >  create mode 100644 arch/arm64/boot/dts/freescale/imx943-clock.h
> >  create mode 100644 arch/arm64/boot/dts/freescale/imx943-pinfunc.h
> >  create mode 100644 arch/arm64/boot/dts/freescale/imx943-power.h
> >  create mode 100644 arch/arm64/boot/dts/freescale/imx943.dtsi
> >
> > diff --git a/arch/arm64/boot/dts/freescale/imx943-clock.h
> > b/arch/arm64/boot/dts/freescale/imx943-clock.h

...

> > +#define IMX943_CLK_EXT2				45
> > +
> > +#define IMX943_CLK_NUM_SRC			46
> 
> Drop and all other clock numbers like that.

Ok, will fix in v2.

> 
> ...
> 
> > +#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 "imx943-clock.h"
> > +#include "imx943-pinfunc.h"
> > +#include "imx943-power.h"
> > +
> > +/ {
> > +	interrupt-parent = <&gic>;
> > +	#address-cells = <2>;
> > +	#size-cells = <2>;
> > +
> > +	cpus {
> > +		#address-cells = <1>;
> > +		#size-cells = <0>;
> > +
> > +		idle-states {
> > +			entry-method = "psci";
> > +
> > +			cpu_pd_wait: cpu-pd-wait {
> > +				compatible = "arm,idle-state";
> > +				arm,psci-suspend-param = <0x0010033>;
> > +				local-timer-stop;
> > +				entry-latency-us = <10000>;
> > +				exit-latency-us = <7000>;
> > +				min-residency-us = <27000>;
> > +				wakeup-latency-us = <15000>;
> > +			};
> > +		};
> > +
> > +		A55_0: cpu@0 {
> > +			device_type = "cpu";
> > +			compatible = "arm,cortex-a55";
> > +			reg = <0x0>;
> > +			enable-method = "psci";
> > +			#cooling-cells = <2>;
> > +			cpu-idle-states = <&cpu_pd_wait>;
> > +			power-domains = <&scmi_perf IMX943_PERF_A55>;
> > +			power-domain-names = "perf";
> > +			i-cache-size = <32768>;
> > +			i-cache-line-size = <64>;
> > +			i-cache-sets = <128>;
> > +			d-cache-size = <32768>;
> > +			d-cache-line-size = <64>;
> > +			d-cache-sets = <128>;
> > +			next-level-cache = <&l2_cache_l0>;
> > +		};
> > +
> > +		A55_1: cpu@100 {
> 
> labels are always lowercase.

Thx, will fix in v2.

> 
> > +			device_type = "cpu";

...

> > +			edma2: dma-controller@42000000 {
> > +				compatible = "fsl,imx95-edma5";
> 
> imx943 or imx95?
> 

Compatible with imx95, so I did not add new redundant dt binding entry.

BR

> Best regards,
> Krzysztof





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux