* [DistroKit] [PATCH 1/9] platform: v8a: firmware-imx: Fix dependencies
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 2/9] platform: v8a: firmware-imx: Rework extract, install, and targetinstall Alexander Dahl
` (8 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
This dependency was fixed already with commit cb9e16dd1aa0 ("v8a:
barebox-imx8m: fix firmware-imx dependencies") but after commit
7a176f41a826 ("v8a: barebox: switch to upstream rule") and 8e9db9c88725
("v8a: barebox: remove left-over SoC-specific rules") the file carrying
the dependency is gone. So now if FIRMWARE_IMX_BOOTIMAGE_IMX8 was
disabled barebox.prepare failed like this:
-----------------------
target: barebox.prepare
-----------------------
Inject file DistroKit/platform-v8a/sysroot-target/usr/lib/firmware/imx8mm-bl31.bin into DistroKit/platform-v8a/build-target/barebox-2024.03.0/firmware/imx8mm-bl31.bin...
Inject file DistroKit/platform-v8a/sysroot-target/usr/lib/firmware/imx8mn-bl31.bin into DistroKit/platform-v8a/build-target/barebox-2024.03.0/firmware/imx8mn-bl31.bin...
Inject file DistroKit/platform-v8a/sysroot-target/usr/lib/firmware/imx8mp-bl31.bin into DistroKit/platform-v8a/build-target/barebox-2024.03.0/firmware/imx8mp-bl31.bin...
Inject file DistroKit/platform-v8a/sysroot-target/usr/lib/firmware/imx8mq-bl31.bin into DistroKit/platform-v8a/build-target/barebox-2024.03.0/firmware/imx8mq-bl31.bin...
ptxdist: error: Blob 'ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin' not found in '/mnt/data/adahl/src/DistroKit/platform-v8a/sysroot-target/usr/lib/firmware'.
make: *** [/usr/local/lib/ptxdist-2024.03.0/rules/barebox.make:83: /mnt/data/adahl/src/DistroKit/platform-v8a/state/barebox.prepare] Error 1
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platforms/firmware-imx.in | 1 +
configs/platform-v8a/rules/firmware-imx.make | 2 ++
2 files changed, 3 insertions(+)
diff --git a/configs/platform-v8a/platforms/firmware-imx.in b/configs/platform-v8a/platforms/firmware-imx.in
index 19d89ac..fc89001 100644
--- a/configs/platform-v8a/platforms/firmware-imx.in
+++ b/configs/platform-v8a/platforms/firmware-imx.in
@@ -50,5 +50,6 @@ endif
config BAREBOX_DEPENDENCIES
tristate
select FIRMWARE_IMX
+ select FIRMWARE_IMX_BOOTIMAGE_IMX8
select TF_A
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index bd49885..b640db6 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -33,6 +33,7 @@ BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
+ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin:firmware/lpddr4_pmu_train_2d_dmem.bin
@@ -42,6 +43,7 @@ BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_2d.bin:firmware/ddr4_dmem_2d.bin
BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_1d.bin:firmware/ddr4_imem_1d.bin
BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_2d.bin:firmware/ddr4_imem_2d.bin
endif
+endif
# ----------------------------------------------------------------------------
# Extract
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 2/9] platform: v8a: firmware-imx: Rework extract, install, and targetinstall
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 1/9] platform: v8a: firmware-imx: Fix dependencies Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 3/9] platform: v8a: firmware-imx: Version bump 8.8 -> 8.23 Alexander Dahl
` (7 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
Usually in ptxdist stages work like this: in extract stage files are put
into BUILDDIR. From there `make install` or something similar in
install stage copies build artifacts to PKGDIR. The install.post stage
copies everything from PKDIR to SYSROOT_TARGET. Finally targetinstall
stage uses the files from PKGDIR to populate root.
Here everything was extracted to PKGDIR. Some files where manually
copied from PKGDIR to $(SYSROOT_TARGET)/usr/lib/firmware, before
install.post copied those files again to $(SYSROOT_TARGET)/firmware …
Now the usual cycle as described above is followed, hopefully leading to
much less confusion, and avoiding duplicate files in sysroot-target.
This gives us predictable paths in SYSROOT_TARGET and allows to use
files in $(SYSROOT_TARGET) to be used by other packages like U-Boot by
directly pointing at them, or pointing to the folder they are in (most
likely '$(SYSROOT_TARGET)/usr/lib/firmware').
(barebox does not point at those files, but copies them to its own
sourcedir through the inject mechanism.)
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/rules/firmware-imx.make | 81 +++++++++++++-------
1 file changed, 52 insertions(+), 29 deletions(-)
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index b640db6..57a10c3 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -20,10 +20,11 @@ FIRMWARE_IMX_SKIP := 38918
FIRMWARE_IMX := firmware-imx-$(FIRMWARE_IMX_VERSION)
FIRMWARE_IMX_SUFFIX := bin
FIRMWARE_IMX_URL := http://www.nxp.com/lgfiles/NMG/MAD/YOCTO/$(FIRMWARE_IMX).$(FIRMWARE_IMX_SUFFIX)
+FIRMWARE_IMX_SOURCE := $(SRCDIR)/$(FIRMWARE_IMX).$(FIRMWARE_IMX_SUFFIX)
+FIRMWARE_IMX_DIR := $(BUILDDIR)/$(FIRMWARE_IMX)
FIRMWARE_IMX_LICENSE := NXP-Software-License-Agreement
FIRMWARE_IMX_LICENSE_FILES := \
- file://$(FIRMWARE_IMX_PKGDIR)/COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9
-FIRMWARE_IMX_SOURCE := $(SRCDIR)/$(FIRMWARE_IMX).$(FIRMWARE_IMX_SUFFIX)
+ file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9
#
# Firmware blobs for barebox
@@ -51,38 +52,31 @@ endif
$(STATEDIR)/firmware-imx.extract:
@$(call targetinfo)
- @mkdir -p "$(PKGDIR)"
- @dd if=$(FIRMWARE_IMX_SOURCE) bs=$(FIRMWARE_IMX_SKIP) skip=1 | tar xj -C $(PKGDIR)
+ @$(call clean, $(FIRMWARE_IMX_DIR))
+ @mkdir -p "$(FIRMWARE_IMX_DIR)"
+ @dd if="$(FIRMWARE_IMX_SOURCE)" bs=$(FIRMWARE_IMX_SKIP) skip=1 \
+ | tar -xj --strip-components=2 -C "$(FIRMWARE_IMX_DIR)"
+ @$(call patchin, FIRMWARE_IMX)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+FIRMWARE_IMX_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-imx.compile:
+ @$(call targetinfo)
@$(call touch)
# ----------------------------------------------------------------------------
# Install
# ----------------------------------------------------------------------------
-$(STATEDIR)/firmware-imx.install:
- @$(call targetinfo)
-
-ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
- @$(foreach f, lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_1d_imem.bin \
- lpddr4_pmu_train_2d_dmem.bin lpddr4_pmu_train_2d_imem.bin, \
- install -v -D -m644 $(FIRMWARE_IMX_PKGDIR)/firmware/ddr/synopsys/$(f) \
- $(PTXCONF_SYSROOT_TARGET)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
-
- @$(foreach f, ddr4_dmem_1d.bin ddr4_dmem_2d.bin \
- ddr4_imem_1d.bin ddr4_imem_2d.bin, \
- install -v -D -m644 $(FIRMWARE_IMX_PKGDIR)/firmware/ddr/synopsys/$(f) \
- $(PTXCONF_SYSROOT_TARGET)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
-
- @$(foreach f, signed_dp_imx8m.bin signed_hdmi_imx8m.bin, \
- install -v -D -m644 $(FIRMWARE_IMX_PKGDIR)/firmware/hdmi/cadence/$(f) \
- $(PTXCONF_SYSROOT_TARGET)/usr/lib/firmware/hdmi/cadence/$(f)$(ptx/nl))
-endif
-
- @$(call touch)
-# ----------------------------------------------------------------------------
-# Target-Install
-# ----------------------------------------------------------------------------
-
FIRMWARE_IMX_INSTALL-y :=
FIRMWARE_IMX_INSTALL-$(PTXCONF_FIRMWARE_IMX_VPU_IMX27) += vpu_fw_imx27_TO2.bin
FIRMWARE_IMX_INSTALL-$(PTXCONF_FIRMWARE_IMX_VPU_IMX6Q) += vpu_fw_imx6q.bin
@@ -90,6 +84,35 @@ FIRMWARE_IMX_INSTALL-$(PTXCONF_FIRMWARE_IMX_VPU_IMX6DL) += vpu_fw_imx6d.bin
FIRMWARE_IMX_INSTALL-$(PTXCONF_FIRMWARE_IMX_VPU_IMX53) += vpu_fw_imx53.bin
FIRMWARE_IMX_INSTALL-$(PTXCONF_FIRMWARE_IMX_VPU_IMX51) += vpu_fw_imx51.bin
+$(STATEDIR)/firmware-imx.install:
+ @$(call targetinfo)
+
+ @$(foreach f,$(FIRMWARE_IMX_INSTALL-y), \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/vpu/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/vpu/$(f)$(ptx/nl))
+
+ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
+ @$(foreach f, lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_1d_imem.bin \
+ lpddr4_pmu_train_2d_dmem.bin lpddr4_pmu_train_2d_imem.bin, \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/ddr/synopsys/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
+
+ @$(foreach f, ddr4_dmem_1d.bin ddr4_dmem_2d.bin \
+ ddr4_imem_1d.bin ddr4_imem_2d.bin, \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/ddr/synopsys/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
+
+ @$(foreach f, signed_dp_imx8m.bin signed_hdmi_imx8m.bin, \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/hdmi/cadence/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/hdmi/cadence/$(f)$(ptx/nl))
+endif
+
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
$(STATEDIR)/firmware-imx.targetinstall:
@$(call targetinfo)
@@ -100,7 +123,7 @@ $(STATEDIR)/firmware-imx.targetinstall:
@$(call install_fixup, firmware-imx,DESCRIPTION,missing)
@$(foreach f,$(FIRMWARE_IMX_INSTALL-y), \
$(call install_copy, firmware-imx, 0, 0, 0644, \
- $(FIRMWARE_IMX_PKGDIR)/firmware/vpu/$(f), \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/vpu/$(f), \
/usr/lib/firmware/$(f))$(ptx/nl))
@$(call install_finish, firmware-imx)
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 3/9] platform: v8a: firmware-imx: Version bump 8.8 -> 8.23
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 1/9] platform: v8a: firmware-imx: Fix dependencies Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 2/9] platform: v8a: firmware-imx: Rework extract, install, and targetinstall Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 4/9] platform: v8a: firmware-imx: Install more files for U-Boot Alexander Dahl
` (6 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
Contains some new files required by U-Boot for certain boards (not
used/installed yet).
Checksums of firmware files in 'ddr/synopsys' are the same.
Files in 'hdmi/cadence' changed.
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/rules/firmware-imx.make | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index 57a10c3..7c4801e 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -14,9 +14,9 @@ PACKAGES-$(PTXCONF_FIRMWARE_IMX) += firmware-imx
#
# Paths and names
#
-FIRMWARE_IMX_VERSION := 8.8
-FIRMWARE_IMX_MD5 := eabb27d28bba375a9f14d6306c07af5f
-FIRMWARE_IMX_SKIP := 38918
+FIRMWARE_IMX_VERSION := 8.23
+FIRMWARE_IMX_MD5 := eb03efb3a8fb98d99ed1df88537e72f4
+FIRMWARE_IMX_SKIP := 48479
FIRMWARE_IMX := firmware-imx-$(FIRMWARE_IMX_VERSION)
FIRMWARE_IMX_SUFFIX := bin
FIRMWARE_IMX_URL := http://www.nxp.com/lgfiles/NMG/MAD/YOCTO/$(FIRMWARE_IMX).$(FIRMWARE_IMX_SUFFIX)
@@ -24,7 +24,7 @@ FIRMWARE_IMX_SOURCE := $(SRCDIR)/$(FIRMWARE_IMX).$(FIRMWARE_IMX_SUFFIX)
FIRMWARE_IMX_DIR := $(BUILDDIR)/$(FIRMWARE_IMX)
FIRMWARE_IMX_LICENSE := NXP-Software-License-Agreement
FIRMWARE_IMX_LICENSE_FILES := \
- file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9
+ file://COPYING;md5=44a8052c384584ba09077e85a3d1654f
#
# Firmware blobs for barebox
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 4/9] platform: v8a: firmware-imx: Install more files for U-Boot
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (2 preceding siblings ...)
2024-04-25 8:02 ` [DistroKit] [PATCH 3/9] platform: v8a: firmware-imx: Version bump 8.8 -> 8.23 Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 5/9] platform: v8a: firmware-imx: Install more files for i.MX93 Alexander Dahl
` (5 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
U-Boot builds for some i.MX8 boards (like Ka-Ro QSXP-ML81 SoM) require
different files than barebox.
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/rules/firmware-imx.make | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index 7c4801e..20f102e 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -92,6 +92,11 @@ $(STATEDIR)/firmware-imx.install:
$(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/vpu/$(f)$(ptx/nl))
ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
+ @$(foreach f, lpddr4_pmu_train_1d_imem_202006.bin lpddr4_pmu_train_1d_dmem_202006.bin \
+ lpddr4_pmu_train_2d_imem_202006.bin lpddr4_pmu_train_2d_dmem_202006.bin, \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/ddr/synopsys/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
+
@$(foreach f, lpddr4_pmu_train_1d_dmem.bin lpddr4_pmu_train_1d_imem.bin \
lpddr4_pmu_train_2d_dmem.bin lpddr4_pmu_train_2d_imem.bin, \
install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/ddr/synopsys/$(f) \
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 5/9] platform: v8a: firmware-imx: Install more files for i.MX93
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (3 preceding siblings ...)
2024-04-25 8:02 ` [DistroKit] [PATCH 4/9] platform: v8a: firmware-imx: Install more files for U-Boot Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 8:02 ` [DistroKit] [PATCH 6/9] platform: v8a: firmware-imx: Move barebox injects to separate package Alexander Dahl
` (4 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
U-Boot builds for some i.MX93 boards (like Ka-Ro QS93-5210 SoM) require
different files than barebox.
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platformconfig | 1 +
configs/platform-v8a/platforms/firmware-imx.in | 8 +++++++-
configs/platform-v8a/rules/firmware-imx.make | 7 +++++++
3 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 664ed1b..65c767a 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -356,6 +356,7 @@ PTXCONF_FIRMWARE_IMX=y
# PTXCONF_FIRMWARE_IMX_VPU_IMX6DL is not set
# PTXCONF_FIRMWARE_IMX_VPU_IMX6Q is not set
PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8=y
+# PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX9 is not set
PTXCONF_FIRMWARE_ROCKCHIP=y
# PTXCONF_FIRMWARE_ROCKCHIP_RK3566_SDRAM is not set
PTXCONF_FIRMWARE_ROCKCHIP_RK3568_SDRAM=y
diff --git a/configs/platform-v8a/platforms/firmware-imx.in b/configs/platform-v8a/platforms/firmware-imx.in
index fc89001..c93e9f8 100644
--- a/configs/platform-v8a/platforms/firmware-imx.in
+++ b/configs/platform-v8a/platforms/firmware-imx.in
@@ -45,6 +45,13 @@ config FIRMWARE_IMX_BOOTIMAGE_IMX8
Install the Synopsis DDR PHY controller and Cadence HDMI TX
firmware used to build a boot image.
+config FIRMWARE_IMX_BOOTIMAGE_IMX9
+ bool
+ prompt "Install i.MX9 DDR PHY firmware"
+ help
+ Install the Synopsis DDR PHY controller firmware used to build
+ a boot image.
+
endif
config BAREBOX_DEPENDENCIES
@@ -52,4 +59,3 @@ config BAREBOX_DEPENDENCIES
select FIRMWARE_IMX
select FIRMWARE_IMX_BOOTIMAGE_IMX8
select TF_A
-
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index 20f102e..1cdc3ee 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -112,6 +112,13 @@ ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
$(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/hdmi/cadence/$(f)$(ptx/nl))
endif
+ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX9
+ @$(foreach f, lpddr4_imem_1d_v202201.bin lpddr4_dmem_1d_v202201.bin \
+ lpddr4_imem_2d_v202201.bin lpddr4_dmem_2d_v202201.bin, \
+ install -v -D -m644 $(FIRMWARE_IMX_DIR)/firmware/ddr/synopsys/$(f) \
+ $(FIRMWARE_IMX_PKGDIR)/usr/lib/firmware/ddr/synopsys/$(f)$(ptx/nl))
+endif
+
@$(call touch)
# ----------------------------------------------------------------------------
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 6/9] platform: v8a: firmware-imx: Move barebox injects to separate package
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (4 preceding siblings ...)
2024-04-25 8:02 ` [DistroKit] [PATCH 5/9] platform: v8a: firmware-imx: Install more files for i.MX93 Alexander Dahl
@ 2024-04-25 8:02 ` Alexander Dahl
2024-04-25 12:33 ` Alexander Dahl
2024-04-25 8:03 ` [DistroKit] [PATCH 7/9] platform: v8a: firmware-rockchip: " Alexander Dahl
` (3 subsequent siblings)
9 siblings, 1 reply; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:02 UTC (permalink / raw)
To: distrokit
This is what 'barebox_firmware' was invented for. Done to avoid
cluttering the firmware-imx package even more.
Before duplicating the firmware-imx package files in an upper layer and
adding more such stuff for a different bootloader, we rather move this
stuff to multiple barebox_firmware packages (which can also sit in other
layers) and inject files from there.
The same approach can then be followed by other bootloaders depending on
firmware-imx package. This way we can depend on firmware-imx from one,
the other, or both bootloaders, respectively their firmware packages,
without the need to touch the firmware-imx package itself.
Approach inspired by the patch series which introduced that
infrastructure in ptxdist.
Link: https://lore.ptxdist.org/ptxdist/20220129070330.2601433-6-michael.riesch@wolfvision.net/
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platformconfig | 1 +
configs/platform-v8a/platforms/barebox.imx.in | 12 +++++++++
.../platform-v8a/platforms/firmware-imx.in | 2 --
configs/platform-v8a/rules/barebox.imx.make | 26 +++++++++++++++++++
configs/platform-v8a/rules/firmware-imx.make | 20 --------------
5 files changed, 39 insertions(+), 22 deletions(-)
create mode 100644 configs/platform-v8a/platforms/barebox.imx.in
create mode 100644 configs/platform-v8a/rules/barebox.imx.make
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 65c767a..ba33191 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -183,6 +183,7 @@ PTXCONF_BAREBOX_BUILDSYSTEM_VERSION="${PTXDIST_VCS_VERSION}"
PTXCONF_BAREBOX_MD5="dcb443c48b64662b52974502c502427e"
PTXCONF_BAREBOX_CONFIG="barebox.config"
PTXCONF_BAREBOX_FIRMWARE=y
+PTXCONF_BAREBOX_NEEDS_FIRMWARE_IMX=y
PTXCONF_BAREBOX_EXTRA_ENV=y
PTXCONF_BAREBOX_EXTRA_ENV_PATH="barebox-common-defaultenv"
# PTXCONF_BAREBOX_BAREBOXENV is not set
diff --git a/configs/platform-v8a/platforms/barebox.imx.in b/configs/platform-v8a/platforms/barebox.imx.in
new file mode 100644
index 0000000..971fc9b
--- /dev/null
+++ b/configs/platform-v8a/platforms/barebox.imx.in
@@ -0,0 +1,12 @@
+## SECTION=barebox_firmware
+
+config BAREBOX_NEEDS_FIRMWARE_IMX
+ bool
+ prompt "barebox needs firmware-imx"
+ help
+ Select this if barebox needs the non-free IMX firmware blobs.
+
+config BAREBOX_DEPENDENCIES
+ tristate
+ select FIRMWARE_IMX if BAREBOX_NEEDS_FIRMWARE_IMX
+ select FIRMWARE_IMX_BOOTIMAGE_IMX8 if BAREBOX_NEEDS_FIRMWARE_IMX
diff --git a/configs/platform-v8a/platforms/firmware-imx.in b/configs/platform-v8a/platforms/firmware-imx.in
index c93e9f8..a08afbe 100644
--- a/configs/platform-v8a/platforms/firmware-imx.in
+++ b/configs/platform-v8a/platforms/firmware-imx.in
@@ -56,6 +56,4 @@ endif
config BAREBOX_DEPENDENCIES
tristate
- select FIRMWARE_IMX
- select FIRMWARE_IMX_BOOTIMAGE_IMX8
select TF_A
diff --git a/configs/platform-v8a/rules/barebox.imx.make b/configs/platform-v8a/rules/barebox.imx.make
new file mode 100644
index 0000000..4c6404c
--- /dev/null
+++ b/configs/platform-v8a/rules/barebox.imx.make
@@ -0,0 +1,26 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2024 by Alexander Dahl <ada@thorsis.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+ifdef PTXCONF_FIRMWARE_IMX
+BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
+BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
+BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
+BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
+ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
+BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin:firmware/lpddr4_pmu_train_2d_dmem.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_imem.bin:firmware/lpddr4_pmu_train_2d_imem.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_1d.bin:firmware/ddr4_dmem_1d.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_2d.bin:firmware/ddr4_dmem_2d.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_1d.bin:firmware/ddr4_imem_1d.bin
+BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_2d.bin:firmware/ddr4_imem_2d.bin
+endif
+endif
+
+# vim: syntax=make
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index 1cdc3ee..906691c 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -26,26 +26,6 @@ FIRMWARE_IMX_LICENSE := NXP-Software-License-Agreement
FIRMWARE_IMX_LICENSE_FILES := \
file://COPYING;md5=44a8052c384584ba09077e85a3d1654f
-#
-# Firmware blobs for barebox
-#
-ifdef PTXCONF_FIRMWARE_IMX
-BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
-BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
-BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
-BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
-ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
-BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin:firmware/lpddr4_pmu_train_2d_dmem.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_imem.bin:firmware/lpddr4_pmu_train_2d_imem.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_1d.bin:firmware/ddr4_dmem_1d.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_2d.bin:firmware/ddr4_dmem_2d.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_1d.bin:firmware/ddr4_imem_1d.bin
-BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_2d.bin:firmware/ddr4_imem_2d.bin
-endif
-endif
-
# ----------------------------------------------------------------------------
# Extract
# ----------------------------------------------------------------------------
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [DistroKit] [PATCH 6/9] platform: v8a: firmware-imx: Move barebox injects to separate package
2024-04-25 8:02 ` [DistroKit] [PATCH 6/9] platform: v8a: firmware-imx: Move barebox injects to separate package Alexander Dahl
@ 2024-04-25 12:33 ` Alexander Dahl
0 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 12:33 UTC (permalink / raw)
To: distrokit
Hei hei,
Am Thu, Apr 25, 2024 at 10:02:59AM +0200 schrieb Alexander Dahl:
> This is what 'barebox_firmware' was invented for. Done to avoid
> cluttering the firmware-imx package even more.
>
> Before duplicating the firmware-imx package files in an upper layer and
> adding more such stuff for a different bootloader, we rather move this
> stuff to multiple barebox_firmware packages (which can also sit in other
> layers) and inject files from there.
>
> The same approach can then be followed by other bootloaders depending on
> firmware-imx package. This way we can depend on firmware-imx from one,
> the other, or both bootloaders, respectively their firmware packages,
> without the need to touch the firmware-imx package itself.
>
> Approach inspired by the patch series which introduced that
> infrastructure in ptxdist.
>
> Link: https://lore.ptxdist.org/ptxdist/20220129070330.2601433-6-michael.riesch@wolfvision.net/
> Signed-off-by: Alexander Dahl <ada@thorsis.com>
> ---
> configs/platform-v8a/platformconfig | 1 +
> configs/platform-v8a/platforms/barebox.imx.in | 12 +++++++++
> .../platform-v8a/platforms/firmware-imx.in | 2 --
> configs/platform-v8a/rules/barebox.imx.make | 26 +++++++++++++++++++
> configs/platform-v8a/rules/firmware-imx.make | 20 --------------
> 5 files changed, 39 insertions(+), 22 deletions(-)
> create mode 100644 configs/platform-v8a/platforms/barebox.imx.in
> create mode 100644 configs/platform-v8a/rules/barebox.imx.make
>
> diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
> index 65c767a..ba33191 100644
> --- a/configs/platform-v8a/platformconfig
> +++ b/configs/platform-v8a/platformconfig
> @@ -183,6 +183,7 @@ PTXCONF_BAREBOX_BUILDSYSTEM_VERSION="${PTXDIST_VCS_VERSION}"
> PTXCONF_BAREBOX_MD5="dcb443c48b64662b52974502c502427e"
> PTXCONF_BAREBOX_CONFIG="barebox.config"
> PTXCONF_BAREBOX_FIRMWARE=y
> +PTXCONF_BAREBOX_NEEDS_FIRMWARE_IMX=y
> PTXCONF_BAREBOX_EXTRA_ENV=y
> PTXCONF_BAREBOX_EXTRA_ENV_PATH="barebox-common-defaultenv"
> # PTXCONF_BAREBOX_BAREBOXENV is not set
> diff --git a/configs/platform-v8a/platforms/barebox.imx.in b/configs/platform-v8a/platforms/barebox.imx.in
> new file mode 100644
> index 0000000..971fc9b
> --- /dev/null
> +++ b/configs/platform-v8a/platforms/barebox.imx.in
> @@ -0,0 +1,12 @@
> +## SECTION=barebox_firmware
> +
> +config BAREBOX_NEEDS_FIRMWARE_IMX
> + bool
> + prompt "barebox needs firmware-imx"
> + help
> + Select this if barebox needs the non-free IMX firmware blobs.
> +
> +config BAREBOX_DEPENDENCIES
> + tristate
> + select FIRMWARE_IMX if BAREBOX_NEEDS_FIRMWARE_IMX
> + select FIRMWARE_IMX_BOOTIMAGE_IMX8 if BAREBOX_NEEDS_FIRMWARE_IMX
> diff --git a/configs/platform-v8a/platforms/firmware-imx.in b/configs/platform-v8a/platforms/firmware-imx.in
> index c93e9f8..a08afbe 100644
> --- a/configs/platform-v8a/platforms/firmware-imx.in
> +++ b/configs/platform-v8a/platforms/firmware-imx.in
> @@ -56,6 +56,4 @@ endif
>
> config BAREBOX_DEPENDENCIES
> tristate
> - select FIRMWARE_IMX
> - select FIRMWARE_IMX_BOOTIMAGE_IMX8
> select TF_A
After speaking about this in IRC … I think defining a dependency from
barebox to tf-a here is in the wrong place. I mean this is the
firmware-imx package. This dependency should go to something like
platforms/barebox.tf-a.in right?
Greets
Alex
> diff --git a/configs/platform-v8a/rules/barebox.imx.make b/configs/platform-v8a/rules/barebox.imx.make
> new file mode 100644
> index 0000000..4c6404c
> --- /dev/null
> +++ b/configs/platform-v8a/rules/barebox.imx.make
> @@ -0,0 +1,26 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2024 by Alexander Dahl <ada@thorsis.com>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +ifdef PTXCONF_FIRMWARE_IMX
> +BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
> +BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
> +BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
> +BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
> +ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
> +BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin:firmware/lpddr4_pmu_train_2d_dmem.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_imem.bin:firmware/lpddr4_pmu_train_2d_imem.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_1d.bin:firmware/ddr4_dmem_1d.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_2d.bin:firmware/ddr4_dmem_2d.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_1d.bin:firmware/ddr4_imem_1d.bin
> +BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_2d.bin:firmware/ddr4_imem_2d.bin
> +endif
> +endif
> +
> +# vim: syntax=make
> diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
> index 1cdc3ee..906691c 100644
> --- a/configs/platform-v8a/rules/firmware-imx.make
> +++ b/configs/platform-v8a/rules/firmware-imx.make
> @@ -26,26 +26,6 @@ FIRMWARE_IMX_LICENSE := NXP-Software-License-Agreement
> FIRMWARE_IMX_LICENSE_FILES := \
> file://COPYING;md5=44a8052c384584ba09077e85a3d1654f
>
> -#
> -# Firmware blobs for barebox
> -#
> -ifdef PTXCONF_FIRMWARE_IMX
> -BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
> -BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
> -BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
> -BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
> -ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
> -BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_dmem.bin:firmware/lpddr4_pmu_train_2d_dmem.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/lpddr4_pmu_train_2d_imem.bin:firmware/lpddr4_pmu_train_2d_imem.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_1d.bin:firmware/ddr4_dmem_1d.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_dmem_2d.bin:firmware/ddr4_dmem_2d.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_1d.bin:firmware/ddr4_imem_1d.bin
> -BAREBOX_INJECT_FILES += ddr/synopsys/ddr4_imem_2d.bin:firmware/ddr4_imem_2d.bin
> -endif
> -endif
> -
> # ----------------------------------------------------------------------------
> # Extract
> # ----------------------------------------------------------------------------
> --
> 2.39.2
>
>
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 7/9] platform: v8a: firmware-rockchip: Move barebox injects to separate package
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (5 preceding siblings ...)
2024-04-25 8:02 ` [DistroKit] [PATCH 6/9] platform: v8a: firmware-imx: Move barebox injects to separate package Alexander Dahl
@ 2024-04-25 8:03 ` Alexander Dahl
2024-04-25 8:03 ` [DistroKit] [PATCH 8/9] platform: v8a: barebox: Remove extra host prog Alexander Dahl
` (2 subsequent siblings)
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:03 UTC (permalink / raw)
To: distrokit
This is what 'barebox_firmware' was invented for. Done to avoid
cluttering the firmware-rockchip package with bootloader specific stuff.
Approach inspired by the patch series which introduced that
infrastructure in ptxdist. Same as with firmware-imx package.
Link: https://lore.ptxdist.org/ptxdist/20220129070330.2601433-6-michael.riesch@wolfvision.net/
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platformconfig | 1 +
.../platforms/barebox.rockchip.in | 14 +++++++++++++
.../platforms/firmware-rockchip.in | 5 -----
.../platform-v8a/rules/barebox.rockchip.make | 20 +++++++++++++++++++
.../platform-v8a/rules/firmware-rockchip.make | 10 ----------
5 files changed, 35 insertions(+), 15 deletions(-)
create mode 100644 configs/platform-v8a/platforms/barebox.rockchip.in
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index ba33191..342aa11 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -184,6 +184,7 @@ PTXCONF_BAREBOX_MD5="dcb443c48b64662b52974502c502427e"
PTXCONF_BAREBOX_CONFIG="barebox.config"
PTXCONF_BAREBOX_FIRMWARE=y
PTXCONF_BAREBOX_NEEDS_FIRMWARE_IMX=y
+PTXCONF_BAREBOX_NEEDS_FIRMWARE_ROCKCHIP=y
PTXCONF_BAREBOX_EXTRA_ENV=y
PTXCONF_BAREBOX_EXTRA_ENV_PATH="barebox-common-defaultenv"
# PTXCONF_BAREBOX_BAREBOXENV is not set
diff --git a/configs/platform-v8a/platforms/barebox.rockchip.in b/configs/platform-v8a/platforms/barebox.rockchip.in
new file mode 100644
index 0000000..3291085
--- /dev/null
+++ b/configs/platform-v8a/platforms/barebox.rockchip.in
@@ -0,0 +1,14 @@
+## SECTION=barebox_firmware
+
+config BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
+ bool
+ prompt "barebox needs firmware-rockchip"
+ help
+ Select this if barebox needs the non-free Rockchip firmware blobs.
+
+config BAREBOX_DEPENDENCIES
+ tristate
+ select FIRMWARE_ROCKCHIP if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
+ select FIRMWARE_ROCKCHIP_RK3568_SDRAM if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
+ select FIRMWARE_ROCKCHIP_RK356x_BL31 if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
+ select FIRMWARE_ROCKCHIP_RK356x_BL32 if BAREBOX_NEEDS_FIRMWARE_ROCKCHIP
diff --git a/configs/platform-v8a/platforms/firmware-rockchip.in b/configs/platform-v8a/platforms/firmware-rockchip.in
index 87a1490..aa70241 100644
--- a/configs/platform-v8a/platforms/firmware-rockchip.in
+++ b/configs/platform-v8a/platforms/firmware-rockchip.in
@@ -39,8 +39,3 @@ config FIRMWARE_ROCKCHIP_RK356x_BL32
and the Rockchip RK3568 EVB1 board.
endif
-
-config BAREBOX_DEPENDENCIES
- tristate
- select FIRMWARE_ROCKCHIP
-
diff --git a/configs/platform-v8a/rules/barebox.rockchip.make b/configs/platform-v8a/rules/barebox.rockchip.make
index 17092a9..fad39c9 100644
--- a/configs/platform-v8a/rules/barebox.rockchip.make
+++ b/configs/platform-v8a/rules/barebox.rockchip.make
@@ -9,4 +9,24 @@
# TODO: remove this when it is added in PTXdist upstream
BAREBOX_PROGS_HOST += rk-usb-loader
+#
+# Firmware blobs for barebox
+#
+ifdef PTXCONF_FIRMWARE_ROCKCHIP
+
+ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL31
+BAREBOX_INJECT_FILES += rk3568_bl31_v1.24.elf:firmware/rk3568-bl31.bin
+endif
+
+ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL32
+BAREBOX_INJECT_FILES += rk3568_bl32_v1.05.bin:firmware/rk3568-op-tee.bin
+endif
+
+ifdef PTXCONF_FIRMWARE_ROCKCHIP_RK3568_SDRAM
+BAREBOX_INJECT_FILES += rk3568_ddr_1560MHz_v1.08.bin:arch/arm/boards/rockchip-rk3568-evb/sdram-init.bin
+BAREBOX_INJECT_FILES += rk3568_ddr_1560MHz_v1.08.bin:arch/arm/boards/radxa-rock3/sdram-init.bin
+endif
+
+endif
+
# vim: syntax=make
diff --git a/configs/platform-v8a/rules/firmware-rockchip.make b/configs/platform-v8a/rules/firmware-rockchip.make
index 6949148..dd50c86 100644
--- a/configs/platform-v8a/rules/firmware-rockchip.make
+++ b/configs/platform-v8a/rules/firmware-rockchip.make
@@ -20,16 +20,6 @@ FIRMWARE_ROCKCHIP_SOURCE := $(SRCDIR)/$(FIRMWARE_ROCKCHIP).$(FIRMWARE_ROCKCHIP_S
FIRMWARE_ROCKCHIP_DIR := $(BUILDDIR)/$(FIRMWARE_ROCKCHIP)
FIRMWARE_ROCKCHIP_LICENSE := proprietary
-#
-# Firmware blobs for barebox
-#
-ifdef PTXCONF_FIRMWARE_ROCKCHIP
-BAREBOX_INJECT_FILES += rk3568_bl31_v1.24.elf:firmware/rk3568-bl31.bin
-BAREBOX_INJECT_FILES += rk3568_bl32_v1.05.bin:firmware/rk3568-op-tee.bin
-BAREBOX_INJECT_FILES += rk3568_ddr_1560MHz_v1.08.bin:arch/arm/boards/rockchip-rk3568-evb/sdram-init.bin
-BAREBOX_INJECT_FILES += rk3568_ddr_1560MHz_v1.08.bin:arch/arm/boards/radxa-rock3/sdram-init.bin
-endif
-
# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 8/9] platform: v8a: barebox: Remove extra host prog
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (6 preceding siblings ...)
2024-04-25 8:03 ` [DistroKit] [PATCH 7/9] platform: v8a: firmware-rockchip: " Alexander Dahl
@ 2024-04-25 8:03 ` Alexander Dahl
2024-04-25 8:03 ` [DistroKit] [PATCH 8/8] platform: v8a: firmware-sentinel: Add new package Alexander Dahl
2024-04-25 8:03 ` [DistroKit] [PATCH 9/9] " Alexander Dahl
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:03 UTC (permalink / raw)
To: distrokit
Added to ptxdist-2023.07.0 and thus TODO completed.
Before removal BAREBOX_PROGS_HOST had this twice:
% p print BAREBOX_PROGS_HOST
bareboxenv kernel-install bareboxcrc32 bareboximd setupmbr/setupmbr imx/imx-usb-loader rk-usb-loader rk-usb-loader
Fixes: cd9e439e789e ("ptxdist: version bump 2023.06.0 -> 2023.07.1")
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/rules/barebox.rockchip.make | 3 ---
1 file changed, 3 deletions(-)
diff --git a/configs/platform-v8a/rules/barebox.rockchip.make b/configs/platform-v8a/rules/barebox.rockchip.make
index fad39c9..c0789c6 100644
--- a/configs/platform-v8a/rules/barebox.rockchip.make
+++ b/configs/platform-v8a/rules/barebox.rockchip.make
@@ -6,9 +6,6 @@
# see the README file.
#
-# TODO: remove this when it is added in PTXdist upstream
-BAREBOX_PROGS_HOST += rk-usb-loader
-
#
# Firmware blobs for barebox
#
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 8/8] platform: v8a: firmware-sentinel: Add new package
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (7 preceding siblings ...)
2024-04-25 8:03 ` [DistroKit] [PATCH 8/9] platform: v8a: barebox: Remove extra host prog Alexander Dahl
@ 2024-04-25 8:03 ` Alexander Dahl
2024-04-25 8:03 ` [DistroKit] [PATCH 9/9] " Alexander Dahl
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:03 UTC (permalink / raw)
To: distrokit
U-Boot for i.MX93 on Ka-Ro QS93-5210 SoM requires this additional firmware.
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platformconfig | 1 +
.../platforms/firmware-sentinel.in | 5 ++
.../platform-v8a/rules/firmware-sentinel.make | 69 +++++++++++++++++++
3 files changed, 75 insertions(+)
create mode 100644 configs/platform-v8a/platforms/firmware-sentinel.in
create mode 100644 configs/platform-v8a/rules/firmware-sentinel.make
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 342aa11..d7df8b8 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -364,4 +364,5 @@ PTXCONF_FIRMWARE_ROCKCHIP=y
PTXCONF_FIRMWARE_ROCKCHIP_RK3568_SDRAM=y
PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL31=y
PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL32=y
+# PTXCONF_FIRMWARE_SENTINEL is not set
# end of non-free firmware blobs
diff --git a/configs/platform-v8a/platforms/firmware-sentinel.in b/configs/platform-v8a/platforms/firmware-sentinel.in
new file mode 100644
index 0000000..9225969
--- /dev/null
+++ b/configs/platform-v8a/platforms/firmware-sentinel.in
@@ -0,0 +1,5 @@
+## SECTION=non_free_firmware
+
+menuconfig FIRMWARE_SENTINEL
+ tristate
+ prompt "firmware-sentinel "
diff --git a/configs/platform-v8a/rules/firmware-sentinel.make b/configs/platform-v8a/rules/firmware-sentinel.make
new file mode 100644
index 0000000..855e58d
--- /dev/null
+++ b/configs/platform-v8a/rules/firmware-sentinel.make
@@ -0,0 +1,69 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2024 by Alexander Dahl <ada@thorsis.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_FIRMWARE_SENTINEL) += firmware-sentinel
+
+#
+# Paths and names
+#
+FIRMWARE_SENTINEL_VERSION := 0.11
+FIRMWARE_SENTINEL_MD5 := 339011b6b199151d835c03089a3c2221
+FIRMWARE_SENTINEL_SKIP := 47053
+FIRMWARE_SENTINEL := firmware-sentinel-$(FIRMWARE_SENTINEL_VERSION)
+FIRMWARE_SENTINEL_SUFFIX := bin
+FIRMWARE_SENTINEL_URL := http://www.nxp.com/lgfiles/NMG/MAD/YOCTO/$(FIRMWARE_SENTINEL).$(FIRMWARE_SENTINEL_SUFFIX)
+FIRMWARE_SENTINEL_SOURCE := $(SRCDIR)/$(FIRMWARE_SENTINEL).$(FIRMWARE_SENTINEL_SUFFIX)
+FIRMWARE_SENTINEL_DIR := $(BUILDDIR)/$(FIRMWARE_SENTINEL)
+FIRMWARE_SENTINEL_LICENSE := NXP-Software-License-Agreement
+FIRMWARE_SENTINEL_LICENSE_FILES := \
+ file://COPYING;md5=db4762b09b6bda63da103963e6e081de
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.extract:
+ @$(call targetinfo)
+ @$(call clean, $(FIRMWARE_SENTINEL_DIR))
+ @mkdir -p "$(FIRMWARE_SENTINEL_DIR)"
+ @dd if="$(FIRMWARE_SENTINEL_SOURCE)" bs=$(FIRMWARE_SENTINEL_SKIP) skip=1 \
+ | tar -xj --strip-components=2 -C "$(FIRMWARE_SENTINEL_DIR)"
+ @$(call patchin, FIRMWARE_SENTINEL)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+FIRMWARE_SENTINEL_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.compile:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.install:
+ @$(call targetinfo)
+
+ @install -d -m755 $(FIRMWARE_SENTINEL_PKGDIR)/usr/lib/firmware
+ @install -v -m644 $(FIRMWARE_SENTINEL_DIR)/mx93a1-ahab-container.img \
+ $(FIRMWARE_SENTINEL_PKGDIR)/usr/lib/firmware/
+
+ @$(call touch)
+
+# vim: syntax=make
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread
* [DistroKit] [PATCH 9/9] platform: v8a: firmware-sentinel: Add new package
2024-04-25 8:02 [DistroKit] [PATCH 0/9] platform: v8a: firmware: Rework for upper layers with different boards Alexander Dahl
` (8 preceding siblings ...)
2024-04-25 8:03 ` [DistroKit] [PATCH 8/8] platform: v8a: firmware-sentinel: Add new package Alexander Dahl
@ 2024-04-25 8:03 ` Alexander Dahl
9 siblings, 0 replies; 12+ messages in thread
From: Alexander Dahl @ 2024-04-25 8:03 UTC (permalink / raw)
To: distrokit
U-Boot for i.MX93 on Ka-Ro QS93-5210 SoM requires this additional firmware.
Signed-off-by: Alexander Dahl <ada@thorsis.com>
---
configs/platform-v8a/platformconfig | 1 +
.../platforms/firmware-sentinel.in | 5 ++
.../platform-v8a/rules/firmware-sentinel.make | 69 +++++++++++++++++++
3 files changed, 75 insertions(+)
create mode 100644 configs/platform-v8a/platforms/firmware-sentinel.in
create mode 100644 configs/platform-v8a/rules/firmware-sentinel.make
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 342aa11..d7df8b8 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -364,4 +364,5 @@ PTXCONF_FIRMWARE_ROCKCHIP=y
PTXCONF_FIRMWARE_ROCKCHIP_RK3568_SDRAM=y
PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL31=y
PTXCONF_FIRMWARE_ROCKCHIP_RK356x_BL32=y
+# PTXCONF_FIRMWARE_SENTINEL is not set
# end of non-free firmware blobs
diff --git a/configs/platform-v8a/platforms/firmware-sentinel.in b/configs/platform-v8a/platforms/firmware-sentinel.in
new file mode 100644
index 0000000..9225969
--- /dev/null
+++ b/configs/platform-v8a/platforms/firmware-sentinel.in
@@ -0,0 +1,5 @@
+## SECTION=non_free_firmware
+
+menuconfig FIRMWARE_SENTINEL
+ tristate
+ prompt "firmware-sentinel "
diff --git a/configs/platform-v8a/rules/firmware-sentinel.make b/configs/platform-v8a/rules/firmware-sentinel.make
new file mode 100644
index 0000000..855e58d
--- /dev/null
+++ b/configs/platform-v8a/rules/firmware-sentinel.make
@@ -0,0 +1,69 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2024 by Alexander Dahl <ada@thorsis.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_FIRMWARE_SENTINEL) += firmware-sentinel
+
+#
+# Paths and names
+#
+FIRMWARE_SENTINEL_VERSION := 0.11
+FIRMWARE_SENTINEL_MD5 := 339011b6b199151d835c03089a3c2221
+FIRMWARE_SENTINEL_SKIP := 47053
+FIRMWARE_SENTINEL := firmware-sentinel-$(FIRMWARE_SENTINEL_VERSION)
+FIRMWARE_SENTINEL_SUFFIX := bin
+FIRMWARE_SENTINEL_URL := http://www.nxp.com/lgfiles/NMG/MAD/YOCTO/$(FIRMWARE_SENTINEL).$(FIRMWARE_SENTINEL_SUFFIX)
+FIRMWARE_SENTINEL_SOURCE := $(SRCDIR)/$(FIRMWARE_SENTINEL).$(FIRMWARE_SENTINEL_SUFFIX)
+FIRMWARE_SENTINEL_DIR := $(BUILDDIR)/$(FIRMWARE_SENTINEL)
+FIRMWARE_SENTINEL_LICENSE := NXP-Software-License-Agreement
+FIRMWARE_SENTINEL_LICENSE_FILES := \
+ file://COPYING;md5=db4762b09b6bda63da103963e6e081de
+
+# ----------------------------------------------------------------------------
+# Extract
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.extract:
+ @$(call targetinfo)
+ @$(call clean, $(FIRMWARE_SENTINEL_DIR))
+ @mkdir -p "$(FIRMWARE_SENTINEL_DIR)"
+ @dd if="$(FIRMWARE_SENTINEL_SOURCE)" bs=$(FIRMWARE_SENTINEL_SKIP) skip=1 \
+ | tar -xj --strip-components=2 -C "$(FIRMWARE_SENTINEL_DIR)"
+ @$(call patchin, FIRMWARE_SENTINEL)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+FIRMWARE_SENTINEL_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.compile:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-sentinel.install:
+ @$(call targetinfo)
+
+ @install -d -m755 $(FIRMWARE_SENTINEL_PKGDIR)/usr/lib/firmware
+ @install -v -m644 $(FIRMWARE_SENTINEL_DIR)/mx93a1-ahab-container.img \
+ $(FIRMWARE_SENTINEL_PKGDIR)/usr/lib/firmware/
+
+ @$(call touch)
+
+# vim: syntax=make
--
2.39.2
^ permalink raw reply [flat|nested] 12+ messages in thread