Hi Peng, On Wed, Jul 23, 2025 at 11:19 PM Peng Fan <[email protected]> wrote: > > Hi Fabio, > > Thanks for working on i.MX93 FRDM upstream. > > On Tue, Jul 22, 2025 at 05:37:36PM -0300, Fabio Estevam wrote: > >Add the initial board support for the NXP i.MX93 FRDM board: > > > >https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93 > > > >Based on the NXP U-Boot code. > > > >There were attempts to upstream the board devicetree, but it has not been > >accepted upstream yet: > > > >https://lore.kernel.org/linux-arm-kernel/[email protected]/ > > > >Once it reaches upstream, we can switch to OF_UPSTREAM. > > > >Signed-off-by: Fabio Estevam <[email protected]> > >--- > > arch/arm/dts/Makefile | 1 + > > arch/arm/dts/imx93-11x11-frdm-u-boot.dtsi | 212 ++ > > arch/arm/dts/imx93-11x11-frdm.dts | 603 +++++ > > arch/arm/include/asm/arch-imx9/ddr.h | 1 + > > arch/arm/mach-imx/imx9/Kconfig | 9 + > > board/freescale/imx93_frdm/Kconfig | 12 + > > board/freescale/imx93_frdm/MAINTAINERS | 6 + > > board/freescale/imx93_frdm/Makefile | 11 + > > board/freescale/imx93_frdm/imx93_frdm.c | 59 + > > board/freescale/imx93_frdm/imx93_frdm.env | 31 + > > board/freescale/imx93_frdm/lpddr4_timing.h | 13 + > > .../freescale/imx93_frdm/lpddr4x_1gb_timing.c | 1996 +++++++++++++++++ > > .../freescale/imx93_frdm/lpddr4x_2gb_timing.c | 1995 ++++++++++++++++ > > board/freescale/imx93_frdm/spl.c | 207 ++ > > configs/imx93_frdm_defconfig | 124 + > > doc/board/nxp/imx93_frdm.rst | 75 + > > doc/board/nxp/index.rst | 1 + > > include/configs/imx93_frdm.h | 32 + > > 18 files changed, 5388 insertions(+) > > create mode 100644 arch/arm/dts/imx93-11x11-frdm-u-boot.dtsi > > create mode 100644 arch/arm/dts/imx93-11x11-frdm.dts > > create mode 100644 board/freescale/imx93_frdm/Kconfig > > create mode 100644 board/freescale/imx93_frdm/MAINTAINERS > > create mode 100644 board/freescale/imx93_frdm/Makefile > > create mode 100644 board/freescale/imx93_frdm/imx93_frdm.c > > create mode 100644 board/freescale/imx93_frdm/imx93_frdm.env > > create mode 100644 board/freescale/imx93_frdm/lpddr4_timing.h > > create mode 100644 board/freescale/imx93_frdm/lpddr4x_1gb_timing.c > > create mode 100644 board/freescale/imx93_frdm/lpddr4x_2gb_timing.c > > create mode 100644 board/freescale/imx93_frdm/spl.c > > create mode 100644 configs/imx93_frdm_defconfig > > create mode 100644 doc/board/nxp/imx93_frdm.rst > > create mode 100644 include/configs/imx93_frdm.h > > > >diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile > >index 17795f8f746d..09e3edc4f8b1 100644 > >--- a/arch/arm/dts/Makefile > >+++ b/arch/arm/dts/Makefile > >@@ -918,6 +918,7 @@ dtb-$(CONFIG_ARCH_IMX8M) += \ > > imx8mq-librem5-r4.dtb > > > > dtb-$(CONFIG_ARCH_IMX9) += \ > >+ imx93-11x11-frdm.dtb \ > > imx93-var-som-symphony.dtb > > > > dtb-$(CONFIG_ARCH_IMXRT) += imxrt1020-evk.dtb \ > >diff --git a/arch/arm/dts/imx93-11x11-frdm-u-boot.dtsi > >b/arch/arm/dts/imx93-11x11-frdm-u-boot.dtsi > >new file mode 100644 > >index 000000000000..558a43470e81 > >--- /dev/null > >+++ b/arch/arm/dts/imx93-11x11-frdm-u-boot.dtsi > >@@ -0,0 +1,212 @@ > >+// SPDX-License-Identifier: GPL-2.0+ > >+/* > >+ * Copyright 2024 NXP > > 2025. > > >+ */ > >+ > >+#include "imx93-u-boot.dtsi" > >+ > >+/ { > >+ wdt-reboot { > >+ compatible = "wdt-reboot"; > >+ wdt = <&wdog3>; > >+ bootph-pre-ram; > >+ bootph-some-ram; > >+ }; > >+ > >+ aliases { > >+ usbgadget0 = &usbg1; > >+ usbgadget1 = &usbg2; > >+ }; > >+ > >+ usbg1: usbg1 { > >+ compatible = "fsl,imx27-usb-gadget"; > >+ dr_mode = "peripheral"; > >+ chipidea,usb = <&usbotg1>; > >+ status = "okay"; > >+ }; > >+ > >+ usbg2: usbg2 { > >+ compatible = "fsl,imx27-usb-gadget"; > >+ dr_mode = "peripheral"; > >+ chipidea,usb = <&usbotg2>; > >+ status = "okay"; > >+ }; > > This fsl,imx27-usb-gadget is only in NXP downstream, needs drop here.
Yes, I have removed it in v2. > >--- /dev/null > >+++ b/board/freescale/imx93_frdm/lpddr4_timing.h > >@@ -0,0 +1,13 @@ > >+/* SPDX-License-Identifier: GPL-2.0+ */ > >+/* > >+ * Copyright 2022 Marek Vasut <[email protected]> > > Wrong Copyright. The NXP code declares the externs inside the C file, which is not a good practice. I used the approach done by Marek on another board, so I kept his Copyright. > Align macros. > > Seems some use blank space, some use tab This is also fixed in v2. I will address your 2025 Copyright changes and submit a v3. Thanks

