* [Buildroot] [PATCH 01/10] package/freescale-imx: add i.MX95 support
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-11-11 21:50 ` Julien Olivain via buildroot
2026-02-03 15:36 ` [Buildroot] [PATCH 02/10] board/freescale/common/imx/post-image.sh: " Laurentiu Mihalcea
` (9 subsequent siblings)
10 siblings, 1 reply; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Introduce support for the i.MX95 SoC, which has 3 revisions:
A0, A1, and B0. For now, this includes support solely for the B0
revision.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
package/freescale-imx/Config.in | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in
index 77d6547cec..c885b4fc23 100644
--- a/package/freescale-imx/Config.in
+++ b/package/freescale-imx/Config.in
@@ -70,6 +70,9 @@ config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91
config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93
bool "imx93"
+config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95
+ bool "imx95"
+
endchoice
choice
@@ -126,6 +129,21 @@ config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A1
endchoice
+choice
+ prompt "i.MX95 Silicon Revision"
+ default BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95B0
+ depends on BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95
+ help
+ Some packages related to the selected i.MX platform need to
+ know the silicon revision of the platform they will run on.
+
+ Note - mismatches may result in a failure to boot!
+
+config BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95B0
+ bool "imx95b0"
+
+endchoice
+
config BR2_PACKAGE_FREESCALE_IMX_PLATFORM
string
default "IMX25_3STACK" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX25_3STACK
@@ -178,7 +196,8 @@ config BR2_PACKAGE_FREESCALE_IMX_HAS_ELE
bool
default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8ULP || \
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91 || \
- BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93
+ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93 || \
+ BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95
config BR2_PACKAGE_FREESCALE_IMX_HAS_UPOWER
bool
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [Buildroot] [PATCH 01/10] package/freescale-imx: add i.MX95 support
2026-02-03 15:36 ` [Buildroot] [PATCH 01/10] package/freescale-imx: add i.MX95 support Laurentiu Mihalcea
@ 2026-11-11 21:50 ` Julien Olivain via buildroot
0 siblings, 0 replies; 16+ messages in thread
From: Julien Olivain via buildroot @ 2026-11-11 21:50 UTC (permalink / raw)
To: Laurentiu Mihalcea
Cc: buildroot, Gary Bisson, Refik Tuzakli, Erik Larsson,
Thomas Petazzoni, Fabio Estevam
Hi Laurentiu,
On 03/02/2026 16:36, Laurentiu Mihalcea wrote:
> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>
> Introduce support for the i.MX95 SoC, which has 3 revisions:
> A0, A1, and B0. For now, this includes support solely for the B0
> revision.
>
> Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
After some rework, I applied this series to master, thanks.
For the details of my changes, see:
https://gitlab.com/buildroot.org/buildroot/-/commits/dc10246725957f68dfea7a47a2d3b1726567452f
Best regards,
Julien.
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Buildroot] [PATCH 02/10] board/freescale/common/imx/post-image.sh: add i.MX95 support
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 01/10] package/freescale-imx: add i.MX95 support Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 03/10] package/freescale-imx/imx-sm: add SM package Laurentiu Mihalcea
` (8 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add SD card image generation support for i.MX95. The layout should be the
same as i.MX93's, thus we utilize the same GENIMAGE configuration.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
board/freescale/common/imx/post-image.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/board/freescale/common/imx/post-image.sh b/board/freescale/common/imx/post-image.sh
index 8d9bce5328..adf20d5e45 100755
--- a/board/freescale/common/imx/post-image.sh
+++ b/board/freescale/common/imx/post-image.sh
@@ -56,6 +56,8 @@ genimage_type()
echo "genimage.cfg.template_imx9"
elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93=y$" "${BR2_CONFIG}"; then
echo "genimage.cfg.template_imx9"
+ elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95=y$" "${BR2_CONFIG}"; then
+ echo "genimage.cfg.template_imx9"
elif grep -Eq "^BR2_LINUX_KERNEL_INSTALL_TARGET=y$" "${BR2_CONFIG}"; then
if grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" "${BR2_CONFIG}"; then
echo "genimage.cfg.template_no_boot_part_spl"
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 03/10] package/freescale-imx/imx-sm: add SM package
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 01/10] package/freescale-imx: add i.MX95 support Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 02/10] board/freescale/common/imx/post-image.sh: " Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 04/10] package/freescale-imx/imx-oei: add OEI package Laurentiu Mihalcea
` (7 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add System Manager (SM) package.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
DEVELOPERS | 3 +++
package/freescale-imx/Config.in | 1 +
package/freescale-imx/imx-sm/Config.in | 15 +++++++++++
package/freescale-imx/imx-sm/imx-sm.hash | 4 +++
package/freescale-imx/imx-sm/imx-sm.mk | 33 ++++++++++++++++++++++++
5 files changed, 56 insertions(+)
create mode 100644 package/freescale-imx/imx-sm/Config.in
create mode 100644 package/freescale-imx/imx-sm/imx-sm.hash
create mode 100644 package/freescale-imx/imx-sm/imx-sm.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 08c98ec53b..a31458f9d7 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2111,6 +2111,9 @@ F: package/open-lldp/
N: Laurent Vivier <laurent@vivier.eu>
F: package/petitboot/
+N: Laurentiu Mihalcea <laurentiumihalcea111@gmail.com>
+F: package/freescale-imx/imx-sm/
+
N: Lee Jones <lee.jones@linaro.org>
F: boot/afboot-stm32/
diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in
index c885b4fc23..30c0d69970 100644
--- a/package/freescale-imx/Config.in
+++ b/package/freescale-imx/Config.in
@@ -218,6 +218,7 @@ source "package/freescale-imx/firmware-imx/Config.in"
source "package/freescale-imx/firmware-upower/Config.in"
source "package/freescale-imx/imx-sc-firmware/Config.in"
source "package/freescale-imx/imx-seco/Config.in"
+source "package/freescale-imx/imx-sm/Config.in"
source "package/freescale-imx/imx-vpu-hantro-daemon/Config.in"
source "package/freescale-imx/imx-vpu-hantro-vc/Config.in"
if (BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX51 || BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX53)
diff --git a/package/freescale-imx/imx-sm/Config.in b/package/freescale-imx/imx-sm/Config.in
new file mode 100644
index 0000000000..b06d797f99
--- /dev/null
+++ b/package/freescale-imx/imx-sm/Config.in
@@ -0,0 +1,15 @@
+config BR2_PACKAGE_IMX_SM
+ bool "imx-sm"
+ help
+ imx-sm contains the source code for the System Manager (SM)
+ firmware used on NXP SoCs such as MX95 and MX943.
+
+ https://github.com/nxp-imx/imx-sm
+
+if BR2_PACKAGE_IMX_SM
+config BR2_PACKAGE_IMX_SM_CFG
+ string "Target configuration"
+ default "mx95evk"
+ help
+ Which configuration to use in the build process.
+endif # BR2_PACKAGE_IMX_SM
diff --git a/package/freescale-imx/imx-sm/imx-sm.hash b/package/freescale-imx/imx-sm/imx-sm.hash
new file mode 100644
index 0000000000..b566c6047f
--- /dev/null
+++ b/package/freescale-imx/imx-sm/imx-sm.hash
@@ -0,0 +1,4 @@
+# Locally calculated
+sha256 3efe6a9e8b5f87cade9f2fe3116473d7629098487227da34c224a3846ee3aa51 imx-sm-lf-6.12.49-2.2.0.tar.gz
+sha256 ea2ae6b89b80c3c7cd0b4d0b86d84d927e1fc3e3ef81f65e6917162f13c78542 LICENSE.txt
+sha256 181f7f133c5b38874f0d3a41d9bbd03e724f8a8db864a403eeb40ccc19025775 SCR.txt
diff --git a/package/freescale-imx/imx-sm/imx-sm.mk b/package/freescale-imx/imx-sm/imx-sm.mk
new file mode 100644
index 0000000000..666a10be3c
--- /dev/null
+++ b/package/freescale-imx/imx-sm/imx-sm.mk
@@ -0,0 +1,33 @@
+################################################################################
+#
+# imx-sm
+#
+################################################################################
+
+IMX_SM_VERSION = lf-6.12.49-2.2.0
+IMX_SM_SITE = $(call github,nxp-imx,imx-sm,$(IMX_SM_VERSION))
+IMX_SM_LICENSE = BSD-3-Clause
+IMX_SM_LICENSE_FILES = LICENSE.txt SCR.txt
+
+IMX_SM_DEPENDENCIES += host-arm-gnu-toolchain
+
+IMX_SM_OUTPUT_BIN = m33_image.bin
+
+# note: we don't use the TOOLS variable here as recommended by the SM
+# documentation because buildroot adds the "host-" prefix to the
+# toolchain's directory name, which wouldn't work. Instead, we use
+# SM_CROSS_COMPILE, which is normally based on TOOLS.
+IMX_SM_MAKE_OPTS = \
+ SM_CROSS_COMPILE=$(HOST_DIR)/bin/arm-none-eabi-
+
+define IMX_SM_BUILD_CMDS
+ $(IMX_SM_MAKE_OPTS) $(MAKE) -C $(@D) config=$(BR2_PACKAGE_IMX_SM_CFG) cfg
+ $(IMX_SM_MAKE_OPTS) $(MAKE) -C $(@D) config=$(BR2_PACKAGE_IMX_SM_CFG) all
+endef
+
+# the output binary is used to build the boot container
+define IMX_SM_INSTALL_TARGET_CMDS
+ cp $(@D)/build/$(BR2_PACKAGE_IMX_SM_CFG)/$(IMX_SM_OUTPUT_BIN) $(BINARIES_DIR)/$(IMX_SM_OUTPUT_BIN)
+endef
+
+$(eval $(generic-package))
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 04/10] package/freescale-imx/imx-oei: add OEI package
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (2 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 03/10] package/freescale-imx/imx-sm: add SM package Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 05/10] package/freescale-imx/firmware-ele-imx: bump to version 2.0.4 Laurentiu Mihalcea
` (6 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add Optional Executable Image (OEI) package.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
DEVELOPERS | 1 +
package/freescale-imx/Config.in | 1 +
package/freescale-imx/imx-oei/Config.in | 21 ++++++++++++++++
package/freescale-imx/imx-oei/imx-oei.hash | 4 +++
package/freescale-imx/imx-oei/imx-oei.mk | 29 ++++++++++++++++++++++
5 files changed, 56 insertions(+)
create mode 100644 package/freescale-imx/imx-oei/Config.in
create mode 100644 package/freescale-imx/imx-oei/imx-oei.hash
create mode 100644 package/freescale-imx/imx-oei/imx-oei.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index a31458f9d7..a8a27e1498 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2112,6 +2112,7 @@ N: Laurent Vivier <laurent@vivier.eu>
F: package/petitboot/
N: Laurentiu Mihalcea <laurentiumihalcea111@gmail.com>
+F: package/freescale-imx/imx-oei/
F: package/freescale-imx/imx-sm/
N: Lee Jones <lee.jones@linaro.org>
diff --git a/package/freescale-imx/Config.in b/package/freescale-imx/Config.in
index 30c0d69970..dec6042f42 100644
--- a/package/freescale-imx/Config.in
+++ b/package/freescale-imx/Config.in
@@ -208,6 +208,7 @@ source "package/freescale-imx/imx-codec/Config.in"
source "package/freescale-imx/imx-kobs/Config.in"
source "package/freescale-imx/imx-lib/Config.in"
source "package/freescale-imx/imx-m4fwloader/Config.in"
+source "package/freescale-imx/imx-oei/Config.in"
source "package/freescale-imx/imx-parser/Config.in"
source "package/freescale-imx/imx-uuc/Config.in"
source "package/freescale-imx/imx-vpu/Config.in"
diff --git a/package/freescale-imx/imx-oei/Config.in b/package/freescale-imx/imx-oei/Config.in
new file mode 100644
index 0000000000..03ca091ddd
--- /dev/null
+++ b/package/freescale-imx/imx-oei/Config.in
@@ -0,0 +1,21 @@
+config BR2_PACKAGE_IMX_OEI
+ bool "imx-oei"
+ help
+ imx-oei contains the source code for the Optional Executable
+ Image (OEI), which is a piece of code executed by the boot CPU
+ that initializes various aspects of the hardware
+ (i.e. DDR, TCM).
+
+ https://github.com/nxp-imx/imx-oei
+
+if BR2_PACKAGE_IMX_OEI
+config BR2_PACKAGE_IMX_OEI_TARGET_BOARD
+ string "Target board"
+ default "mx95lp5"
+ help
+ Which board to build the OEI for.
+
+config BR2_PACKAGE_IMX_OEI_TARGET_REV
+ string
+ default "b0" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95B0
+endif # BR2_PACKAGE_IMX_OEI
diff --git a/package/freescale-imx/imx-oei/imx-oei.hash b/package/freescale-imx/imx-oei/imx-oei.hash
new file mode 100644
index 0000000000..8de2a2c756
--- /dev/null
+++ b/package/freescale-imx/imx-oei/imx-oei.hash
@@ -0,0 +1,4 @@
+# Locally calculated
+sha256 83e28f7e02321ed0ca6d0c4a83c85f8dbef564325b6232fcc9fa609bfdc45903 imx-oei-lf-6.12.49-2.2.0.tar.gz
+sha256 38e5f362f6141e65856fbfd9f3e0a1b75c897e58f08050186c6af0f6b23f6a3f LICENSE.txt
+sha256 4f20bab3e1176bddb4ce8494fa3a12301fa243db755a549443fbbfd979a237e3 SCR.txt
diff --git a/package/freescale-imx/imx-oei/imx-oei.mk b/package/freescale-imx/imx-oei/imx-oei.mk
new file mode 100644
index 0000000000..d27919c473
--- /dev/null
+++ b/package/freescale-imx/imx-oei/imx-oei.mk
@@ -0,0 +1,29 @@
+################################################################################
+#
+# imx-oei
+#
+################################################################################
+
+IMX_OEI_VERSION = lf-6.12.49-2.2.0
+IMX_OEI_SITE = $(call github,nxp-imx,imx-oei,$(IMX_OEI_VERSION))
+IMX_OEI_LICENSE = BSD-3-Clause
+IMX_OEI_LICENSE_FILES = LICENSE.txt SCR.txt
+
+IMX_OEI_DEPENDENCIES += host-arm-gnu-toolchain
+
+# TODO: for now we only support OEI for DDR intialization
+IMX_OEI_OUTPUT_BIN = oei-m33-ddr.bin
+
+# no TOOLS variable - see rationale from imx-sm package
+IMX_OEI_MAKE_OPTS = \
+ OEI_CROSS_COMPILE=$(HOST_DIR)/bin/arm-none-eabi-
+
+define IMX_OEI_BUILD_CMDS
+ $(IMX_OEI_MAKE_OPTS) $(MAKE) -C $(@D) oei=ddr board=$(BR2_PACKAGE_IMX_OEI_TARGET_BOARD) r=$(BR2_PACKAGE_IMX_OEI_TARGET_REV)
+endef
+
+define IMX_OEI_INSTALL_TARGET_CMDS
+ cp $(@D)/build/$(BR2_PACKAGE_IMX_OEI_TARGET_BOARD)/ddr/$(IMX_OEI_OUTPUT_BIN) $(BINARIES_DIR)/$(IMX_OEI_OUTPUT_BIN)
+endef
+
+$(eval $(generic-package))
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 05/10] package/freescale-imx/firmware-ele-imx: bump to version 2.0.4
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (3 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 04/10] package/freescale-imx/imx-oei: add OEI package Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 06/10] package/freescale-imx/firmware-ele-imx: add i.MX95 B0 support Laurentiu Mihalcea
` (5 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
This version is aligned with NXP Linux BSP version "lf-6.12.49-2.2.0".
This is mostly needed because newer package versions also include the
ELE firmware for the i.MX95 B0 SoC.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
.../freescale-imx/firmware-ele-imx/firmware-ele-imx.hash | 6 +++---
package/freescale-imx/firmware-ele-imx/firmware-ele-imx.mk | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.hash b/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.hash
index 55e1864e31..f064ef1830 100644
--- a/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.hash
+++ b/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.hash
@@ -1,5 +1,5 @@
# Locally calculated
-sha256 a2f16e43e8aff9cf018d0962b70313940f77079b314331ab3980c4c5f44249cb firmware-ele-imx-2.0.1-0a66c34.bin
-sha256 3f4a12c82a84bd1c3578c9c986d6371a61d3399525e76288ecbbae01daf0ae26 COPYING
-sha256 38f1408d6e935c564efd9119c313269e643c1a85cab1d930c3c5bd70bc261769 EULA
+sha256 c3ae4a1e1a41da441bd61483ef011ac24bf624aa6bad36f879b5dfa435647b4c firmware-ele-imx-2.0.4-93492e0.bin
+sha256 3001cf84018c5cb10d183a678f6ec8a928c797616ba06b398d7ca93c0779aaa2 COPYING
+sha256 a829b109a0a406a6a2fec19975a332feca225098ce66bfab2220c6608db8fce5 EULA
sha256 8721a617a5d4c7f366aaf857ebda21eb4c9fc9175dc92b70f627c611d403ec8e SCR.txt
diff --git a/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.mk b/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.mk
index 8f25f4b5b5..a844ca0d94 100644
--- a/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.mk
+++ b/package/freescale-imx/firmware-ele-imx/firmware-ele-imx.mk
@@ -4,8 +4,8 @@
#
################################################################################
-FIRMWARE_ELE_IMX_VERSION = 2.0.1
-FIRMWARE_ELE_IMX_REVISION = 0a66c34
+FIRMWARE_ELE_IMX_VERSION = 2.0.4
+FIRMWARE_ELE_IMX_REVISION = 93492e0
FIRMWARE_ELE_IMX_SITE = $(FREESCALE_IMX_SITE)
FIRMWARE_ELE_IMX_SOURCE = firmware-ele-imx-$(FIRMWARE_ELE_IMX_VERSION)-$(FIRMWARE_ELE_IMX_REVISION).bin
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 06/10] package/freescale-imx/firmware-ele-imx: add i.MX95 B0 support
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (4 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 05/10] package/freescale-imx/firmware-ele-imx: bump to version 2.0.4 Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 07/10] package/freescale-imx/firmware-imx: support i.MX95's LPDDR4x FW Laurentiu Mihalcea
` (4 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add support for i.MX95 B0 silicon. The ELE image for said revision is
called "mx95b0-ahab-container.img".
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
package/freescale-imx/firmware-ele-imx/Config.in | 1 +
1 file changed, 1 insertion(+)
diff --git a/package/freescale-imx/firmware-ele-imx/Config.in b/package/freescale-imx/firmware-ele-imx/Config.in
index d8a55ed219..39d75a6eac 100644
--- a/package/freescale-imx/firmware-ele-imx/Config.in
+++ b/package/freescale-imx/firmware-ele-imx/Config.in
@@ -21,5 +21,6 @@ config BR2_PACKAGE_FIRMWARE_ELE_IMX_AHAB_CONTAINER_IMAGE
default "mx93a0-ahab-container.img" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A0
default "mx93a1-ahab-container.img" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93A1
default "mx91a0-ahab-container.img" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91A0
+ default "mx95b0-ahab-container.img" if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95B0
endif # BR2_PACKAGE_FIRMWARE_ELE_IMX
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 07/10] package/freescale-imx/firmware-imx: support i.MX95's LPDDR4x FW
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (5 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 06/10] package/freescale-imx/firmware-ele-imx: add i.MX95 B0 support Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 08/10] package/imx-mkimage: bump to version lf-6.12.49-2.2.0 Laurentiu Mihalcea
` (3 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
The DDR FW for the i.MX95 SoC requires a different handling as opposed
to other SoCs. For now, only introduce support for LPDDR4x.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
package/freescale-imx/firmware-imx/Config.in | 13 ++++++-
.../firmware-imx/firmware-imx.mk | 39 +++++++++++++++++++
2 files changed, 51 insertions(+), 1 deletion(-)
diff --git a/package/freescale-imx/firmware-imx/Config.in b/package/freescale-imx/firmware-imx/Config.in
index 0acc235e0a..43c74e8bbe 100644
--- a/package/freescale-imx/firmware-imx/Config.in
+++ b/package/freescale-imx/firmware-imx/Config.in
@@ -57,12 +57,18 @@ config BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW
default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MN
default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8MP
+config BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX95
+ bool
+ default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95
+
config BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX9
bool
default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX91
default y if BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX93
-if BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW || BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX9
+if BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW || \
+ BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX9 || \
+ BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX95
choice
bool "DDR training binaries"
@@ -72,6 +78,11 @@ choice
kind of memory that is available on the target board (DDR4,
LPDDR4, etc...).
+config BR2_PACKAGE_FIRMWARE_IMX_LPDDR4X
+ bool "lpddr4x"
+ help
+ Use LPDDR4x binaries.
+
config BR2_PACKAGE_FIRMWARE_IMX_LPDDR4
bool "lpddr4"
help
diff --git a/package/freescale-imx/firmware-imx/firmware-imx.mk b/package/freescale-imx/firmware-imx/firmware-imx.mk
index f8c9df1cce..9682633ac3 100644
--- a/package/freescale-imx/firmware-imx/firmware-imx.mk
+++ b/package/freescale-imx/firmware-imx/firmware-imx.mk
@@ -46,6 +46,45 @@ ifneq ($(FIRMWARE_IMX_DDR_VERSION),)
FIRMWARE_IMX_DDR_VERSION_SUFFIX = _$(FIRMWARE_IMX_DDR_VERSION)
endif
+ifeq ($(BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX95),y)
+FIRMWARE_IMX_DDRFW_DIR = $(@D)/firmware/ddr/synopsys
+
+define FIRMWARE_IMX_GENERATE_DDR_HDR
+ wc -c $(FIRMWARE_IMX_DDRFW_DIR)/$(strip $(1)).bin | \
+ awk '{printf "%.8x", $$1}' | \
+ sed -e 's/\(..\)\(..\)\(..\)\(..\)/\4\3\2\1/' | \
+ xxd -r -p > $(BINARIES_DIR)/$(strip $(3)).bin
+
+ wc -c $(FIRMWARE_IMX_DDRFW_DIR)/$(strip $(2)).bin | \
+ awk '{printf "%.8x", $$1}' | \
+ sed -e 's/\(..\)\(..\)\(..\)\(..\)/\4\3\2\1/' | \
+ xxd -r -p >> $(BINARIES_DIR)/$(strip $(3)).bin
+endef
+
+define FIRMWARE_IMX_INSTALL_IMAGE_DDR_FW
+ $(call FIRMWARE_IMX_GENERATE_DDR_HDR, \
+ lpddr4x_imem_v202409,
+ lpddr4x_dmem_v202409,
+ fw-header)
+
+ $(call FIRMWARE_IMX_GENERATE_DDR_HDR, \
+ lpddr4x_imem_qb_v202409,
+ lpddr4x_dmem_qb_v202409,
+ fw-header-qb)
+
+ cat $(BINARIES_DIR)/fw-header.bin \
+ $(FIRMWARE_IMX_DDRFW_DIR)/lpddr4x_imem_v202409.bin \
+ $(FIRMWARE_IMX_DDRFW_DIR)/lpddr4x_dmem_v202409.bin \
+ $(BINARIES_DIR)/fw-header-qb.bin \
+ $(FIRMWARE_IMX_DDRFW_DIR)/lpddr4x_imem_qb_v202409.bin \
+ $(FIRMWARE_IMX_DDRFW_DIR)/lpddr4x_dmem_qb_v202409.bin > $(BINARIES_DIR)/ddr_fw.bin
+
+ rm -f $(BINARIES_DIR)/fw-header.bin
+ rm -f $(BINARIES_DIR)/fw-header-qb.bin
+endef
+
+endif
+
ifeq ($(BR2_PACKAGE_FIRMWARE_IMX_NEEDS_DDR_FW_IMX9),y)
FIRMWARE_IMX_DDRFW_DIR = $(@D)/firmware/ddr/synopsys
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 08/10] package/imx-mkimage: bump to version lf-6.12.49-2.2.0
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (6 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 07/10] package/freescale-imx/firmware-imx: support i.MX95's LPDDR4x FW Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 09/10] board/freescale: add i.MX95 support Laurentiu Mihalcea
` (2 subsequent siblings)
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
package/imx-mkimage/imx-mkimage.hash | 2 +-
package/imx-mkimage/imx-mkimage.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/package/imx-mkimage/imx-mkimage.hash b/package/imx-mkimage/imx-mkimage.hash
index 02205def1e..4828c25eaf 100644
--- a/package/imx-mkimage/imx-mkimage.hash
+++ b/package/imx-mkimage/imx-mkimage.hash
@@ -1,3 +1,3 @@
# Locally calculated
-sha256 0a5654229c063e4e87b5d69f47a4a913ecee51f8a817ae2346a2a407e765ed3b imx-mkimage-lf-6.6.23-2.0.0.tar.gz
+sha256 2b0ac561798b126959167efd767a7bed7e2cca39665a3201b340b77c91dd5c6d imx-mkimage-lf-6.12.49-2.2.0.tar.gz
sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c LICENSE
diff --git a/package/imx-mkimage/imx-mkimage.mk b/package/imx-mkimage/imx-mkimage.mk
index f7396ba1b2..ac64b36ea7 100644
--- a/package/imx-mkimage/imx-mkimage.mk
+++ b/package/imx-mkimage/imx-mkimage.mk
@@ -4,7 +4,7 @@
#
################################################################################
-IMX_MKIMAGE_VERSION = lf-6.6.23-2.0.0
+IMX_MKIMAGE_VERSION = lf-6.12.49-2.2.0
IMX_MKIMAGE_SITE = $(call github,nxp-imx,imx-mkimage,$(IMX_MKIMAGE_VERSION))
IMX_MKIMAGE_LICENSE = GPL-2.0+
IMX_MKIMAGE_LICENSE_FILES = LICENSE
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 09/10] board/freescale: add i.MX95 support
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (7 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 08/10] package/imx-mkimage: bump to version lf-6.12.49-2.2.0 Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:36 ` [Buildroot] [PATCH 10/10] configs/freescale_imx95_15x15_frdm: new defconfig Laurentiu Mihalcea
2026-02-03 15:52 ` [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Sébastien Szymanski
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add support for i.MX95-based boards. The boot container build process
differs a bit from i.MX93, thus the addition of a new script. Most
notably, there's at least 2 new images to be included (i.e. SM and
DDR/TCM OEI).
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
.../common/imx/imx95-bootloader-prepare.sh | 60 +++++++++++++++++++
1 file changed, 60 insertions(+)
create mode 100755 board/freescale/common/imx/imx95-bootloader-prepare.sh
diff --git a/board/freescale/common/imx/imx95-bootloader-prepare.sh b/board/freescale/common/imx/imx95-bootloader-prepare.sh
new file mode 100755
index 0000000000..addd4bdea9
--- /dev/null
+++ b/board/freescale/common/imx/imx95-bootloader-prepare.sh
@@ -0,0 +1,60 @@
+#!/usr/bin/env bash
+
+# VERY IMPORTANT: a lot of this code here is hardcoded such that
+# it's able to generate a flash.bin equivalent to the one generated
+# by imx-mkimage by running:
+#
+# make SOC=iMX95 OEI=YES LPDDR_TYPE=lpddr4x flash_a55
+#
+# As such, please be mindful of the fact that this script may not work
+# if you wish to change the make target or one of its parameters.
+#
+# TODO: improve this script such that it can handle multiple targets
+
+main ()
+{
+ CNTR_VERSION=2
+ ATF_LOAD_ADDR=0x8A200000
+ UBOOT_LOAD_ADDR=0x90200000
+ OEI_M33_ENTR_ADDR=0x1ffc0001
+ OEI_M33_LOAD_ADDR=0x1ffc0000
+ MCU_TCM_ADDR=0x1FFC0000
+ SPL_LOAD_ADDR_M33_VIEW=0x20480000
+ V2X_DDR=0x8b000000
+
+ # generate u-boot-hash.bin
+ "${HOST_DIR}/bin/mkimage_imx8" -commit > "${BINARIES_DIR}/mkimg.commit"
+ cat "${BINARIES_DIR}/u-boot.bin" "${BINARIES_DIR}/mkimg.commit" > "${BINARIES_DIR}/u-boot-hash.bin"
+ rm -f "${BINARIES_DIR}/mkimg.commit"
+
+ # generate u-boot-atf-container.img (TODO: no TEE support for now)
+ "${HOST_DIR}/bin/mkimage_imx8" -soc IMX9 -cntr_version ${CNTR_VERSION} -c \
+ -ap "${BINARIES_DIR}/bl31.bin" a55 ${ATF_LOAD_ADDR} \
+ -ap "${BINARIES_DIR}/u-boot-hash.bin" a55 ${UBOOT_LOAD_ADDR} \
+ -out "${BINARIES_DIR}/u-boot-atf-container.img"
+
+ # generate m33-oei-ddrfw.bin
+ dd if="${BINARIES_DIR}/oei-m33-ddr.bin" of="${BINARIES_DIR}/oei-m33-ddr.bin-pad" bs=4 conv=sync
+ cat "${BINARIES_DIR}/oei-m33-ddr.bin-pad" "${BINARIES_DIR}/ddr_fw.bin" > "${BINARIES_DIR}/m33-oei-ddrfw.bin.unaligned"
+ dd if="${BINARIES_DIR}/m33-oei-ddrfw.bin.unaligned" of="${BINARIES_DIR}/m33-oei-ddrfw.bin" bs=8 conv=sync
+ rm -f "${BINARIES_DIR}/m33-oei-ddrfw.bin.unaligned" "${BINARIES_DIR}/oei-m33-ddr.bin-pad"
+
+ # generate flash.bin
+ "${HOST_DIR}/bin/mkimage_imx8" -soc IMX9 -cntr_version ${CNTR_VERSION} \
+ -append "${BINARIES_DIR}/ahab-container.img" -c -ddr_dummy \
+ -oei "${BINARIES_DIR}/m33-oei-ddrfw.bin" m33 ${OEI_M33_ENTR_ADDR} ${OEI_M33_LOAD_ADDR} -hold 65536 \
+ -msel 0 \
+ -m33 "${BINARIES_DIR}/m33_image.bin" 0 ${MCU_TCM_ADDR} \
+ -ap "${BINARIES_DIR}/u-boot-spl.bin" a55 ${SPL_LOAD_ADDR_M33_VIEW} \
+ -dummy ${V2X_DDR} \
+ -out "${BINARIES_DIR}/imx9-boot-sd.bin"
+
+ # append u-boot-atf-container.img to flash.bin
+ flashbin_size="$(wc -c "${BINARIES_DIR}/imx9-boot-sd.bin" | awk '{print $1}')"
+ pad_cnt=$(($((flashbin_size + 0x400 - 1)) / 0x400))
+ dd if="${BINARIES_DIR}/u-boot-atf-container.img" of="${BINARIES_DIR}/imx9-boot-sd.bin" bs=1K seek=${pad_cnt}
+
+ exit $?
+}
+
+main "$@"
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* [Buildroot] [PATCH 10/10] configs/freescale_imx95_15x15_frdm: new defconfig
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (8 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 09/10] board/freescale: add i.MX95 support Laurentiu Mihalcea
@ 2026-02-03 15:36 ` Laurentiu Mihalcea
2026-02-03 15:52 ` [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Sébastien Szymanski
10 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 15:36 UTC (permalink / raw)
To: buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
Add defconfig for NXP's IMX95-15x15-FRDM board.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
---
.../arm-trusted-firmware.hash | 2 +
| 1 +
.../imx95-15x15-frdm/patches/linux/linux.hash | 2 +
.../imx95-15x15-frdm/patches/uboot/uboot.hash | 2 +
board/freescale/imx95-15x15-frdm/readme.txt | 63 +++++++++++++++++++
configs/freescale_imx95_15x15_frdm_defconfig | 37 +++++++++++
6 files changed, 107 insertions(+)
create mode 100644 board/freescale/imx95-15x15-frdm/patches/arm-trusted-firmware/arm-trusted-firmware.hash
create mode 120000 board/freescale/imx95-15x15-frdm/patches/linux-headers/linux-headers.hash
create mode 100644 board/freescale/imx95-15x15-frdm/patches/linux/linux.hash
create mode 100644 board/freescale/imx95-15x15-frdm/patches/uboot/uboot.hash
create mode 100644 board/freescale/imx95-15x15-frdm/readme.txt
create mode 100644 configs/freescale_imx95_15x15_frdm_defconfig
diff --git a/board/freescale/imx95-15x15-frdm/patches/arm-trusted-firmware/arm-trusted-firmware.hash b/board/freescale/imx95-15x15-frdm/patches/arm-trusted-firmware/arm-trusted-firmware.hash
new file mode 100644
index 0000000000..e22710afce
--- /dev/null
+++ b/board/freescale/imx95-15x15-frdm/patches/arm-trusted-firmware/arm-trusted-firmware.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 2d68cdaa32240904a461dc0c0e475b7148f4447780379abc64c0a51bfe54446a imx-atf-lf-6.12.49-2.2.0.tar.gz
--git a/board/freescale/imx95-15x15-frdm/patches/linux-headers/linux-headers.hash b/board/freescale/imx95-15x15-frdm/patches/linux-headers/linux-headers.hash
new file mode 120000
index 0000000000..5808d92afe
--- /dev/null
+++ b/board/freescale/imx95-15x15-frdm/patches/linux-headers/linux-headers.hash
@@ -0,0 +1 @@
+../linux/linux.hash
\ No newline at end of file
diff --git a/board/freescale/imx95-15x15-frdm/patches/linux/linux.hash b/board/freescale/imx95-15x15-frdm/patches/linux/linux.hash
new file mode 100644
index 0000000000..b138642633
--- /dev/null
+++ b/board/freescale/imx95-15x15-frdm/patches/linux/linux.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 2166d92e5631ee11bd249d492a1f4009c7635ee36b835fa55384b4ce41e8a63f linux-imx-lf-6.12.49-2.2.0.tar.gz
diff --git a/board/freescale/imx95-15x15-frdm/patches/uboot/uboot.hash b/board/freescale/imx95-15x15-frdm/patches/uboot/uboot.hash
new file mode 100644
index 0000000000..5d57adfa22
--- /dev/null
+++ b/board/freescale/imx95-15x15-frdm/patches/uboot/uboot.hash
@@ -0,0 +1,2 @@
+# Locally calculated
+sha256 212ea4d8d442153ab732ab724282fef64450e9dab5cfe9565eec4f618e305a80 uboot-imx-lf-6.12.49-2.2.0.tar.gz
diff --git a/board/freescale/imx95-15x15-frdm/readme.txt b/board/freescale/imx95-15x15-frdm/readme.txt
new file mode 100644
index 0000000000..97c92169ab
--- /dev/null
+++ b/board/freescale/imx95-15x15-frdm/readme.txt
@@ -0,0 +1,63 @@
+***************************
+NXP i.MX95 15x15 FRDM board
+***************************
+
+This file documents the Buildroot support for the i.MX95 15x15 FRDM board.
+
+Build
+=====
+
+First, configure Buildroot for the i.MX95 15x15 FRDM board:
+
+ make freescale_imx95_15x15_frdm_defconfig
+
+Build all components:
+
+ make
+
+When this command completes, the generated image containing everything
+to boot from the SD card is located in "output/images/sdcard.img".
+
+Create a bootable SD card
+=========================
+
+To determine the device associated with the SD card, have a look in the
+/proc/partitions file:
+
+ cat /proc/partitions
+
+Buildroot prepares a bootable "sdcard.img" image in the output/images/
+directory, ready to be dumped on an SD card. Launch the following
+command as root:
+
+ dd if=output/images/sdcard.img of=/dev/<your-sd-device>
+
+*** WARNING! This will destroy all the card content. Use with care! ***
+
+For details about the medium image layout, see the definition in
+board/freescale/common/imx/genimage.cfg.template_imx9.
+
+Boot the i.MX95 15x15 FRDM board
+================================
+
+To boot your newly created system (refer to the i.MX95 15x15 FRDM
+Documentation [TODO] for guidance):
+- insert the SD card in the SD slot of the board;
+- configure the boot switch as follows:
+ SW1: 11 SW1[1-2] ("USDHC2 4-bit SD3.0" Boot Mode)
+- connect a USB Type-C cable into the USB-DBG port and connect using
+ a terminal emulator at 115200 bps, 8n1;
+- power on the board by connecting a USB Type-C cable into the PWR IN
+ Power USB port.
+
+Note: the debug USB connector presents 4 UARTS (for example
+/dev/ttyACM[0-3]), the AP UART should be the first one (in the previous
+example, /dev/ttyACM0), while the SM UART should be the second one
+(in the previous example, /dev/ttyACM1).
+
+Enjoy!
+
+References
+==========
+
+TODO: update this section when NXP officially releases the board
diff --git a/configs/freescale_imx95_15x15_frdm_defconfig b/configs/freescale_imx95_15x15_frdm_defconfig
new file mode 100644
index 0000000000..3588759e56
--- /dev/null
+++ b/configs/freescale_imx95_15x15_frdm_defconfig
@@ -0,0 +1,37 @@
+BR2_aarch64=y
+BR2_cortex_a55=y
+BR2_GLOBAL_PATCH_DIR="board/freescale/imx95-15x15-frdm/patches"
+BR2_DOWNLOAD_FORCE_CHECK_HASHES=y
+BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX95=y
+BR2_PACKAGE_FREESCALE_IMX=y
+BR2_PACKAGE_FIRMWARE_IMX=y
+BR2_PACKAGE_FIRMWARE_IMX_LPDDR4X=y
+BR2_PACKAGE_IMX_SM=y
+BR2_PACKAGE_IMX_OEI=y
+BR2_PACKAGE_IMX_OEI_TARGET_BOARD="mx95lp4x-15"
+BR2_PACKAGE_FIRMWARE_ELE_IMX=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,imx-atf,lf-6.12.49-2.2.0)/imx-atf-lf-6.12.49-2.2.0.tar.gz"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="imx95"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31=y
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-6.12.49-2.2.0)/uboot-imx-lf-6.12.49-2.2.0.tar.gz"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx95_15x15_frdm"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
+BR2_TARGET_UBOOT_NEEDS_GNUTLS=y
+BR2_TARGET_UBOOT_SPL=y
+BR2_PACKAGE_HOST_IMX_MKIMAGE=y
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx95-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_12=y
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-6.12.49-2.2.0)/linux-imx-lf-6.12.49-2.2.0.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="imx_v8"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="freescale/imx95-15x15-frdm"
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_TARGET_ROOTFS_EXT2=y
--
2.43.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 16+ messages in thread* Re: [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board
2026-02-03 15:36 [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Laurentiu Mihalcea
` (9 preceding siblings ...)
2026-02-03 15:36 ` [Buildroot] [PATCH 10/10] configs/freescale_imx95_15x15_frdm: new defconfig Laurentiu Mihalcea
@ 2026-02-03 15:52 ` Sébastien Szymanski
2026-02-03 16:40 ` Laurentiu Mihalcea
10 siblings, 1 reply; 16+ messages in thread
From: Sébastien Szymanski @ 2026-02-03 15:52 UTC (permalink / raw)
To: Laurentiu Mihalcea, buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
Hello Laurentiu, all,
On 2/3/26 4:36 PM, Laurentiu Mihalcea wrote:
> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>
> Hi folks,
>
> This series introduces support for NXP's IMX95-15x15-FRDM board.
Nice! I was working on adding i.MX95 too and just saw your patches! I
will try you patches then!
>
> So, a little bit about the board: as of today, the board hasn't been
> officially launched, but, as far as I was told, this should happen in this
> quarter. Because of this, we still have some gaps to fill in the
> documentation (see missing links from the board's readme.txt).
>
> Some hardware-related information for the board (not exhaustive):
>
> 1) Based on MX95 15x15 B0 silicon.
> 2) 8GB LPDDR4X DRAM
> 3) 32GB eMMC
> 4) 2 x ENET 1GBs
>
> Some comments regarding the changes introduced by this series:
>
> 1) imx-mkimage version bump was done because the board didn't seem
> to be able to boot using the previous version.
>
> 2) firmware-ele-imx version bump was done because previous version
> didn't include the firmware for B0 revision (it only seemed to include
> the one for A0).
I have sent patches to bump several i.MX packages:
https://lore.kernel.org/buildroot/20260203-bump-imx-packages-lf-6-12-49-2-2-0-v1-1-548f3fc77a59@armadeus.com/
Regards,
>
> 3) MX95 series (as well as MX94) requires system manager (SM) and DDR
> OEI (perhaps even the TCM one if older silicon revision, but we don't
> handle that yet), which is why we have 2 new packages.
>
> 4) LPDDR4x DDR FW handling seems to differ a bit from previous
> versions, thus the changes to the firmware-imx package.
>
> Other than this, we have the DTS support already merged in linux-next via
> [1] so hopefully we'll be able to transition to an upstream kernel soon.
>
> [1]: https://lore.kernel.org/linux-devicetree/20260116-127-v3-0-3dc49545a745@nxp.com/
>
> Thanks,
> Laurentiu
>
> Laurentiu Mihalcea (10):
> package/freescale-imx: add i.MX95 support
> board/freescale/common/imx/post-image.sh: add i.MX95 support
> package/freescale-imx/imx-sm: add SM package
> package/freescale-imx/imx-oei: add OEI package
> package/freescale-imx/firmware-ele-imx: bump to version 2.0.4
> package/freescale-imx/firmware-ele-imx: add i.MX95 B0 support
> package/freescale-imx/firmware-imx: support i.MX95's LPDDR4x FW
> package/imx-mkimage: bump to version lf-6.12.49-2.2.0
> board/freescale: add i.MX95 support
> configs/freescale_imx95_15x15_frdm: new defconfig
>
> DEVELOPERS | 4 ++
> .../common/imx/imx95-bootloader-prepare.sh | 60 ++++++++++++++++++
> board/freescale/common/imx/post-image.sh | 2 +
> .../arm-trusted-firmware.hash | 2 +
> .../patches/linux-headers/linux-headers.hash | 1 +
> .../imx95-15x15-frdm/patches/linux/linux.hash | 2 +
> .../imx95-15x15-frdm/patches/uboot/uboot.hash | 2 +
> board/freescale/imx95-15x15-frdm/readme.txt | 63 +++++++++++++++++++
> configs/freescale_imx95_15x15_frdm_defconfig | 37 +++++++++++
> package/freescale-imx/Config.in | 23 ++++++-
> .../freescale-imx/firmware-ele-imx/Config.in | 1 +
> .../firmware-ele-imx/firmware-ele-imx.hash | 6 +-
> .../firmware-ele-imx/firmware-ele-imx.mk | 4 +-
> package/freescale-imx/firmware-imx/Config.in | 13 +++-
> .../firmware-imx/firmware-imx.mk | 39 ++++++++++++
> package/freescale-imx/imx-oei/Config.in | 21 +++++++
> package/freescale-imx/imx-oei/imx-oei.hash | 4 ++
> package/freescale-imx/imx-oei/imx-oei.mk | 29 +++++++++
> package/freescale-imx/imx-sm/Config.in | 15 +++++
> package/freescale-imx/imx-sm/imx-sm.hash | 4 ++
> package/freescale-imx/imx-sm/imx-sm.mk | 33 ++++++++++
> package/imx-mkimage/imx-mkimage.hash | 2 +-
> package/imx-mkimage/imx-mkimage.mk | 2 +-
> 23 files changed, 360 insertions(+), 9 deletions(-)
> create mode 100755 board/freescale/common/imx/imx95-bootloader-prepare.sh
> create mode 100644 board/freescale/imx95-15x15-frdm/patches/arm-trusted-firmware/arm-trusted-firmware.hash
> create mode 120000 board/freescale/imx95-15x15-frdm/patches/linux-headers/linux-headers.hash
> create mode 100644 board/freescale/imx95-15x15-frdm/patches/linux/linux.hash
> create mode 100644 board/freescale/imx95-15x15-frdm/patches/uboot/uboot.hash
> create mode 100644 board/freescale/imx95-15x15-frdm/readme.txt
> create mode 100644 configs/freescale_imx95_15x15_frdm_defconfig
> create mode 100644 package/freescale-imx/imx-oei/Config.in
> create mode 100644 package/freescale-imx/imx-oei/imx-oei.hash
> create mode 100644 package/freescale-imx/imx-oei/imx-oei.mk
> create mode 100644 package/freescale-imx/imx-sm/Config.in
> create mode 100644 package/freescale-imx/imx-sm/imx-sm.hash
> create mode 100644 package/freescale-imx/imx-sm/imx-sm.mk
>
--
Sébastien Szymanski, Armadeus Systems
Software engineer
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 16+ messages in thread* Re: [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board
2026-02-03 15:52 ` [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board Sébastien Szymanski
@ 2026-02-03 16:40 ` Laurentiu Mihalcea
2026-02-05 13:28 ` Sébastien Szymanski
0 siblings, 1 reply; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-03 16:40 UTC (permalink / raw)
To: Sébastien Szymanski, buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
On 2/3/2026 5:52 PM, Sébastien Szymanski wrote:
> Hello Laurentiu, all,
>
> On 2/3/26 4:36 PM, Laurentiu Mihalcea wrote:
>> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>>
>> Hi folks,
>>
>> This series introduces support for NXP's IMX95-15x15-FRDM board.
>
> Nice! I was working on adding i.MX95 too and just saw your patches! I will try you patches then!
Thanks, let me know if you have any feedback :)
>
>>
>> So, a little bit about the board: as of today, the board hasn't been
>> officially launched, but, as far as I was told, this should happen in this
>> quarter. Because of this, we still have some gaps to fill in the
>> documentation (see missing links from the board's readme.txt).
>>
>> Some hardware-related information for the board (not exhaustive):
>>
>> 1) Based on MX95 15x15 B0 silicon.
>> 2) 8GB LPDDR4X DRAM
>> 3) 32GB eMMC
>> 4) 2 x ENET 1GBs
>>
>> Some comments regarding the changes introduced by this series:
>>
>> 1) imx-mkimage version bump was done because the board didn't seem
>> to be able to boot using the previous version.
>>
>> 2) firmware-ele-imx version bump was done because previous version
>> didn't include the firmware for B0 revision (it only seemed to include
>> the one for A0).
>
> I have sent patches to bump several i.MX packages:
>
> https://lore.kernel.org/buildroot/20260203-bump-imx-packages-lf-6-12-49-2-2-0-v1-1-548f3fc77a59@armadeus.com/
>
> Regards,
Ah, very sorry for the duplication. Your patches should be all the bumps we need.
Will drop the updates from this series once yours lands.
Thanks,
Laurentiu
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board
2026-02-03 16:40 ` Laurentiu Mihalcea
@ 2026-02-05 13:28 ` Sébastien Szymanski
2026-02-05 13:50 ` Laurentiu Mihalcea
0 siblings, 1 reply; 16+ messages in thread
From: Sébastien Szymanski @ 2026-02-05 13:28 UTC (permalink / raw)
To: Laurentiu Mihalcea, buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
Hello Laurentiu, all,
On 2/3/26 5:40 PM, Laurentiu Mihalcea wrote:
>
> On 2/3/2026 5:52 PM, Sébastien Szymanski wrote:
>> Hello Laurentiu, all,
>>
>> On 2/3/26 4:36 PM, Laurentiu Mihalcea wrote:
>>> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>>>
>>> Hi folks,
>>>
>>> This series introduces support for NXP's IMX95-15x15-FRDM board.
>>
>> Nice! I was working on adding i.MX95 too and just saw your patches! I will try you patches then!
>
>
> Thanks, let me know if you have any feedback :)
I was hoping to be able to test your patches on my MX95LP4XEVK-15 but it
has an iMX95 A1 :/ It looks like the latest release (LF6.12.49-2.2.0)
only supports B0, right ?
Regards,
>
>
>>
>>>
>>> So, a little bit about the board: as of today, the board hasn't been
>>> officially launched, but, as far as I was told, this should happen in this
>>> quarter. Because of this, we still have some gaps to fill in the
>>> documentation (see missing links from the board's readme.txt).
>>>
>>> Some hardware-related information for the board (not exhaustive):
>>>
>>> 1) Based on MX95 15x15 B0 silicon.
>>> 2) 8GB LPDDR4X DRAM
>>> 3) 32GB eMMC
>>> 4) 2 x ENET 1GBs
>>>
>>> Some comments regarding the changes introduced by this series:
>>>
>>> 1) imx-mkimage version bump was done because the board didn't seem
>>> to be able to boot using the previous version.
>>>
>>> 2) firmware-ele-imx version bump was done because previous version
>>> didn't include the firmware for B0 revision (it only seemed to include
>>> the one for A0).
>>
>> I have sent patches to bump several i.MX packages:
>>
>> https://lore.kernel.org/buildroot/20260203-bump-imx-packages-lf-6-12-49-2-2-0-v1-1-548f3fc77a59@armadeus.com/
>>
>> Regards,
>
>
> Ah, very sorry for the duplication. Your patches should be all the bumps we need.
>
> Will drop the updates from this series once yours lands.
>
>
> Thanks,
>
> Laurentiu
>
--
Sébastien Szymanski, Armadeus Systems
Software engineer
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [Buildroot] [PATCH 00/10] Add support for IMX95-15x15-FRDM board
2026-02-05 13:28 ` Sébastien Szymanski
@ 2026-02-05 13:50 ` Laurentiu Mihalcea
0 siblings, 0 replies; 16+ messages in thread
From: Laurentiu Mihalcea @ 2026-02-05 13:50 UTC (permalink / raw)
To: Sébastien Szymanski, buildroot
Cc: Gary Bisson, Refik Tuzakli, Erik Larsson, Thomas Petazzoni,
Fabio Estevam
On 2/5/2026 5:28 AM, Sébastien Szymanski wrote:
> Hello Laurentiu, all,
>
> On 2/3/26 5:40 PM, Laurentiu Mihalcea wrote:
>>
>> On 2/3/2026 5:52 PM, Sébastien Szymanski wrote:
>>> Hello Laurentiu, all,
>>>
>>> On 2/3/26 4:36 PM, Laurentiu Mihalcea wrote:
>>>> From: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
>>>>
>>>> Hi folks,
>>>>
>>>> This series introduces support for NXP's IMX95-15x15-FRDM board.
>>>
>>> Nice! I was working on adding i.MX95 too and just saw your patches! I will try you patches then!
>>
>>
>> Thanks, let me know if you have any feedback :)
>
> I was hoping to be able to test your patches on my MX95LP4XEVK-15 but it has an iMX95 A1 :/ It looks like the latest release (LF6.12.49-2.2.0) only supports B0, right ?
>
> Regards,
Hey Sebastien,
Can you please try using the firmware (OEI and ELE) for A0 revision?
I think these should be the only binaries requiring a SOC revision.
I believe there's no difference between the two revisions w.r.t OEI/ELE
which is why there's no firmware binaries, but perhaps I'm wrong?
Unfortunately, I don't have an MX95LP4XEVK-15 w/ A1 on hand so I can't
test this myself :(
Thanks,
Laurentiu
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 16+ messages in thread