* [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit
@ 2025-05-23 8:10 Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 01/12] v8a: barebox: bump version v2025.03.0 -> v2025.05.0 Lars Schmidt
` (11 more replies)
0 siblings, 12 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
BeaglePlay has a multi stage boot process. It boots from a 32bit Cortex-R5 first
and then continues boot on its 64bit Cortex-A. So barebox-r5 is added as first stage
bootloader. TF-A needs another argument for k3. So TF-A firmware is added and can be removed,
once the ptxdist version in DistroKit is updated. A patch has already been applied in ptxdist.
Also a fip image is created for boot process. Some changes had to be made in kernel and barebox
config for beagleplay. barebox v2025.05 included some patches which were necessary for successful
boot.
Lars Schmidt (12):
v8a: barebox: bump version v2025.03.0 -> v2025.05.0
beagleplay: tf-a: needs adaption for k3 boards
tf-a: k3 needs an additional compile argument
beagleplay: k3: barebox needs part of tf-a firmware
tf-a: unify handling of firmware parts for barebox
beagleplay: firmware-ti: initial package
beagleplay: barebox: first stage bootloader for Cortex-R5
beagleplay: fipimage: add fip image for K3
beagleplay: add full image including bootloaders and rootfs
beagleplay: add initial kernel configuration
beagleplay: barebox: update config for beagleplay
beagleplay: add initial platform config
configs/platform-v8a/barebox-r5.config | 700 ++++++++++++++++++
configs/platform-v8a/barebox.config | 89 ++-
.../config/images/image-beagleplay.config | 43 ++
.../config/images/image-fip-k3.config | 7 +
configs/platform-v8a/kernelconfig | 132 +++-
configs/platform-v8a/platformconfig | 74 +-
configs/platform-v8a/platforms/barebox-r5.in | 15 +
configs/platform-v8a/platforms/firmware-ti.in | 7 +
.../platforms/image-beagleplay.in | 11 +
.../platform-v8a/platforms/image-fip-k3.in | 10 +
.../platform-v8a/platforms/tf-a-barebox.in | 7 +
configs/platform-v8a/rules/barebox-r5.make | 99 +++
configs/platform-v8a/rules/firmware-imx.make | 7 -
configs/platform-v8a/rules/firmware-ti.make | 67 ++
.../platform-v8a/rules/image-beagleplay.make | 39 +
configs/platform-v8a/rules/image-fip-k3.make | 39 +
configs/platform-v8a/rules/tf-a.barebox.make | 20 +
configs/platform-v8a/rules/tf-a.make | 117 +++
18 files changed, 1403 insertions(+), 80 deletions(-)
create mode 100644 configs/platform-v8a/barebox-r5.config
create mode 100644 configs/platform-v8a/config/images/image-beagleplay.config
create mode 100644 configs/platform-v8a/config/images/image-fip-k3.config
create mode 100644 configs/platform-v8a/platforms/barebox-r5.in
create mode 100644 configs/platform-v8a/platforms/firmware-ti.in
create mode 100644 configs/platform-v8a/platforms/image-beagleplay.in
create mode 100644 configs/platform-v8a/platforms/image-fip-k3.in
create mode 100644 configs/platform-v8a/platforms/tf-a-barebox.in
create mode 100644 configs/platform-v8a/rules/barebox-r5.make
create mode 100644 configs/platform-v8a/rules/firmware-ti.make
create mode 100644 configs/platform-v8a/rules/image-beagleplay.make
create mode 100644 configs/platform-v8a/rules/image-fip-k3.make
create mode 100644 configs/platform-v8a/rules/tf-a.barebox.make
create mode 100644 configs/platform-v8a/rules/tf-a.make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 01/12] v8a: barebox: bump version v2025.03.0 -> v2025.05.0
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 02/12] beagleplay: tf-a: needs adaption for k3 boards Lars Schmidt
` (10 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
This version includes necessary changes for upcoming beagleplay support.
See for further information see migration guide at [1]
[1]: https://www.barebox.org/doc/latest/migration-guides/migration-2025.05.0.html
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/barebox.config | 46 +++++++++++++++++------------
configs/platform-v8a/platformconfig | 4 +--
2 files changed, 29 insertions(+), 21 deletions(-)
diff --git a/configs/platform-v8a/barebox.config b/configs/platform-v8a/barebox.config
index 1576088..eccf3e9 100644
--- a/configs/platform-v8a/barebox.config
+++ b/configs/platform-v8a/barebox.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2025.03.0 Configuration
+# Barebox/arm 2025.05.0 Configuration
#
CONFIG_ARM=y
CONFIG_ARCH_LINUX_NAME="arm64"
@@ -25,7 +25,6 @@ CONFIG_ARCH_ROCKCHIP=y
#
# Processor Type
#
-CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_CPU_64=y
CONFIG_CPU_V8=y
CONFIG_CPU_64v8=y
@@ -74,6 +73,7 @@ CONFIG_MACH_TQ_MBA8MPXL=y
#
# i.MX93 boards
#
+# CONFIG_MACH_PHYTEC_PHYCORE_IMX93 is not set
CONFIG_MACH_TQMA93XX=y
# end of i.MX boards
@@ -131,11 +131,11 @@ CONFIG_ARM_EXCEPTIONS=y
CONFIG_ARM_SMCCC=y
CONFIG_ARM_PSCI_OF=y
CONFIG_ARM_PSCI_CLIENT=y
+# CONFIG_ARM_BOOTM_ELF is not set
+# CONFIG_ARM_BOOTM_FIP is not set
CONFIG_ARM_ATF=y
# end of ARM specific settings
-CONFIG_HAVE_ARCH_BOARD_GENERIC_DT=y
-
#
# General architecture-dependent options
#
@@ -143,15 +143,22 @@ CONFIG_BOARD_GENERIC_DT=y
# CONFIG_BOARD_GENERIC_FIT is not set
# end of General architecture-dependent options
+CONFIG_ARCH_HAS_STACK_DUMP=y
+CONFIG_ARCH_HAS_DATA_ABORT_MASK=y
+CONFIG_ARCH_HAS_ZERO_PAGE=y
+CONFIG_HAVE_ARCH_BOARD_GENERIC_DT=y
+CONFIG_ARCH_HAS_SJLJ=y
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_HAS_DEBUG_LL=y
+CONFIG_HAVE_ARCH_KASAN=y
CONFIG_BOARD_TQ=y
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=140201
CONFIG_CLANG_VERSION=0
CONFIG_GREGORIAN_CALENDER=y
CONFIG_HAS_KALLSYMS=y
-CONFIG_HAS_CACHE=y
CONFIG_HAS_DMA=y
-CONFIG_ARCH_HAS_SJLJ=y
CONFIG_GENERIC_GPIO=y
CONFIG_BLOCK=y
CONFIG_BLOCK_WRITE=y
@@ -159,11 +166,10 @@ CONFIG_BLOCK_STATS=y
CONFIG_FILETYPE=y
CONFIG_BINFMT=y
CONFIG_UIMAGE=y
-CONFIG_FITIMAGE=y
CONFIG_LOGBUF=y
CONFIG_STDDEV=y
+CONFIG_CDEV_ALIAS=y
CONFIG_MENUTREE=y
-CONFIG_ARCH_DMA_ADDR_T_64BIT=y
CONFIG_BOOT=y
CONFIG_FASTBOOT_BASE=y
@@ -242,12 +248,11 @@ CONFIG_BOOTM_OFTREE=y
CONFIG_BOOTM_UIMAGE=y
CONFIG_BOOTM_OFTREE_UIMAGE=y
# CONFIG_BOOTM_AIMAGE is not set
-# CONFIG_BOOTM_ELF is not set
-CONFIG_BOOTM_FITIMAGE=y
-# CONFIG_BOOTM_FITIMAGE_SIGNATURE is not set
+# CONFIG_BOOTM_FITIMAGE is not set
CONFIG_BOOTM_OPTIONAL_SIGNED_IMAGES=y
CONFIG_BLSPEC=y
CONFIG_FLEXIBLE_BOOTARGS=y
+CONFIG_ROOTWAIT_BOOTARG=y
CONFIG_MMCBLKDEV_ROOTARG=y
CONFIG_BAREBOX_UPDATE=y
CONFIG_SYSTEM_PARTITIONS=y
@@ -285,6 +290,8 @@ CONFIG_STATE=y
# CONFIG_STATE_CRYPTO is not set
# CONFIG_STATE_BACKWARD_COMPATIBLE is not set
CONFIG_BOOTCHOOSER=y
+CONFIG_BOOT_DEFAULTS=y
+CONFIG_BAREBOX_DT_2ND=y
CONFIG_RESET_SOURCE=y
CONFIG_MACHINE_ID=y
# CONFIG_SYSTEMD_OF_WATCHDOG is not set
@@ -294,6 +301,7 @@ CONFIG_EXTERNAL_DTS_FRAGMENTS="${PTXDIST_PLATFORMCONFIGDIR}/dts/bootstate.dtsi"
# OP-TEE loading
#
# CONFIG_PBL_OPTEE is not set
+CONFIG_FILETYPE_STRINGS=y
# end of OP-TEE loading
#
@@ -309,7 +317,6 @@ CONFIG_FASTBOOT_CMD_OEM=y
#
CONFIG_COMPILE_LOGLEVEL=6
CONFIG_DEFAULT_LOGLEVEL=7
-CONFIG_HAS_DEBUG_LL=y
# CONFIG_DEBUG_LL is not set
CONFIG_DEBUG_IMX_UART_PORT=1
CONFIG_DEBUG_ROCKCHIP_UART_PORT=2
@@ -324,7 +331,6 @@ CONFIG_FRAME_POINTER=y
# CONFIG_PBL_BREAK is not set
# CONFIG_PRINTF_FULL is not set
# CONFIG_UBSAN is not set
-CONFIG_HAVE_ARCH_KASAN=y
CONFIG_CC_HAS_KASAN_GENERIC=y
# CONFIG_KASAN is not set
# CONFIG_COMPILE_TEST is not set
@@ -371,6 +377,7 @@ CONFIG_CMD_BLKSTATS=y
CONFIG_CMD_REGULATOR=y
CONFIG_CMD_PM_DOMAIN=y
CONFIG_CMD_NVMEM=y
+# CONFIG_CMD_VARINFO is not set
CONFIG_CMD_VERSION=y
# CONFIG_CMD_MMC is not set
CONFIG_CMD_MMC_EXTCSD=y
@@ -431,6 +438,7 @@ CONFIG_CMD_DIRNAME=y
CONFIG_CMD_FILETYPE=y
CONFIG_CMD_LN=y
CONFIG_CMD_LS=y
+CONFIG_CMD_TREE=y
# CONFIG_CMD_STAT is not set
CONFIG_CMD_MD5SUM=y
CONFIG_CMD_MKDIR=y
@@ -441,6 +449,7 @@ CONFIG_CMD_RMDIR=y
CONFIG_CMD_SHA1SUM=y
# CONFIG_CMD_SHA224SUM is not set
# CONFIG_CMD_SHA256SUM is not set
+# CONFIG_CMD_BASE64 is not set
# CONFIG_CMD_SHA384SUM is not set
# CONFIG_CMD_SHA512SUM is not set
# CONFIG_CMD_FIPTOOL is not set
@@ -469,6 +478,7 @@ CONFIG_NET_CMD_IFUP=y
CONFIG_CMD_MIITOOL=y
CONFIG_CMD_PING=y
# CONFIG_CMD_TFTP is not set
+# CONFIG_CMD_IP is not set
CONFIG_CMD_IP_ROUTE_GET=y
# CONFIG_CMD_ETHLOG is not set
# end of Network
@@ -508,6 +518,7 @@ CONFIG_CMD_MW=y
#
CONFIG_CMD_CLK=y
CONFIG_CMD_DETECT=y
+# CONFIG_CMD_TRUNCATE is not set
CONFIG_CMD_SYNC=y
CONFIG_CMD_FLASH=y
CONFIG_CMD_GPIO=y
@@ -556,7 +567,6 @@ CONFIG_CMD_STATE=y
CONFIG_NET=y
CONFIG_NET_ETHADDR_FROM_MACHINE_ID=y
-CONFIG_NET_NFS=y
CONFIG_NET_NETCONSOLE=y
CONFIG_NET_RESOLV=y
CONFIG_NET_IFUP=y
@@ -796,6 +806,7 @@ CONFIG_MCI_WRITE=y
CONFIG_MCI_ERASE=y
CONFIG_MCI_MMC_BOOT_PARTITIONS=y
# CONFIG_MCI_MMC_GPP_PARTITIONS is not set
+# CONFIG_MCI_MMC_RPMB is not set
#
# --- MCI host drivers ---
@@ -859,7 +870,7 @@ CONFIG_MFD_RK808=y
CONFIG_STATE_DRV=y
CONFIG_DEV_MEM=y
# CONFIG_UBOOTVAR is not set
-# CONFIG_STORAGE_BY_UUID is not set
+# CONFIG_STORAGE_BY_ALIAS is not set
# end of Misc devices
CONFIG_LED=y
@@ -1178,9 +1189,6 @@ CONFIG_CRC_CCITT=y
CONFIG_PRINTF_UUID=y
CONFIG_NLS=y
# CONFIG_BLOBGEN is not set
-CONFIG_ARCH_HAS_STACK_DUMP=y
-CONFIG_ARCH_HAS_DATA_ABORT_MASK=y
-CONFIG_ARCH_HAS_ZERO_PAGE=y
# end of Library routines
#
@@ -1196,7 +1204,7 @@ CONFIG_ARCH_HAS_ZERO_PAGE=y
#
#
-# Extra care needs to be in secure booted systems.
+# Extra care needs to be taken in secure booted systems.
#
# CONFIG_BUG_ON_DATA_CORRUPTION is not set
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 61295ec..83b17dc 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -179,10 +179,10 @@ PTXCONF_CONSOLE_SPEED="115200"
PTXCONF_BAREBOX_ARCH_STRING="arm"
PTXCONF_BAREBOX_DEPENDENCIES=y
PTXCONF_BAREBOX=y
-PTXCONF_BAREBOX_VERSION="2025.03.0"
+PTXCONF_BAREBOX_VERSION="2025.05.0"
PTXCONF_BAREBOX_CONFIG_BUILDSYSTEM_VERSION=y
PTXCONF_BAREBOX_BUILDSYSTEM_VERSION="${PTXDIST_VCS_VERSION}"
-PTXCONF_BAREBOX_MD5="2b84bcf8644373db021c86864f2e5761"
+PTXCONF_BAREBOX_MD5="22046ac9b06e570a51e945c633a2b24c"
PTXCONF_BAREBOX_CONFIG="barebox.config"
PTXCONF_BAREBOX_FIRMWARE=y
PTXCONF_BAREBOX_EXTRA_ENV=y
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 02/12] beagleplay: tf-a: needs adaption for k3 boards
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 01/12] v8a: barebox: bump version v2025.03.0 -> v2025.05.0 Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 03/12] tf-a: k3 needs an additional compile argument Lars Schmidt
` (9 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
BeaglePlay needs changes to Trusted-Firmware-A for
its boot processon the Cortex-A53 core.
So the file from ptxdist is used as basis.
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/rules/tf-a.make | 115 +++++++++++++++++++++++++++
1 file changed, 115 insertions(+)
create mode 100644 configs/platform-v8a/rules/tf-a.make
diff --git a/configs/platform-v8a/rules/tf-a.make b/configs/platform-v8a/rules/tf-a.make
new file mode 100644
index 0000000..bff4edf
--- /dev/null
+++ b/configs/platform-v8a/rules/tf-a.make
@@ -0,0 +1,115 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2018 by Rouven Czerwinski <r.czerwinski@pengutronix.de>
+# 2019 by Ahmad Fatoum <a.fatoum@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_TF_A) += tf-a
+
+#
+# Paths and names
+#
+TF_A_VERSION := $(call ptx/config-version, PTXCONF_TF_A)
+TF_A_MD5 := $(call ptx/config-md5, PTXCONF_TF_A)
+TF_A := tf-a-$(TF_A_VERSION)
+TF_A_SUFFIX := tar.gz
+TF_A_URL := $(call remove_quotes, $(PTXCONF_TF_A_URL))/$(TF_A_VERSION).$(TF_A_SUFFIX)
+TF_A_SOURCE := $(SRCDIR)/$(TF_A).$(TF_A_SUFFIX)
+TF_A_DIR := $(BUILDDIR)/$(TF_A)
+TF_A_BUILD_DIR := $(TF_A_DIR)/build
+TF_A_BUILD_OOT := YES
+TF_A_LICENSE := BSD-3-Clause AND BSD-2-Clause \
+ AND (GPL-2.0-or-later OR BSD-2-Clause) \
+ AND (NCSA OR MIT) \
+ AND Zlib \
+ AND (GPL-2.0-or-later OR BSD-3-Clause)
+TF_A_CVE_PRODUCT:= arm:trusted_firmware-a
+TF_A_CVE_VERSION:= $(patsubst v%,%,$(TF_A_VERSION))
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+TF_A_PLATFORMS := $(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))
+TF_A_ARTIFACTS := $(call remove_quotes, $(PTXCONF_TF_A_ARTIFACTS))
+
+TF_A_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+TF_A_EXTRA_ARGS := $(call remove_quotes,$(PTXCONF_TF_A_EXTRA_ARGS))
+TF_A_BINDIR = $(TF_A_BUILD_DIR)/$(1)/$(if $(filter DEBUG=1,$(TF_A_EXTRA_ARGS)),debug,release)
+TF_A_MAKE_OPT := \
+ -C $(TF_A_DIR) \
+ CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE) \
+ HOSTCC=$(HOSTCC) \
+ ARCH=$(PTXCONF_TF_A_ARCH_STRING) \
+ ARM_ARCH_MAJOR=$(PTXCONF_TF_A_ARM_ARCH_MAJOR) \
+ BUILD_STRING=$(PTXCONF_TF_A_VERSION) \
+ $(TF_A_EXTRA_ARGS) \
+ all
+
+ifdef PTXCONF_TF_A_BL32_TSP
+TF_A_MAKE_OPT += ARM_TSP_RAM_LOCATION=$(PTXCONF_TF_A_BL32_TSP_RAM_LOCATION_STRING)
+endif
+ifdef PTXCONF_TF_A_ARM_ARCH_MINOR
+TF_A_MAKE_OPT += ARM_ARCH_MINOR=$(PTXCONF_TF_A_ARM_ARCH_MINOR)
+endif
+ifdef PTXCONF_TF_A_BL32_SP_MIN
+TF_A_MAKE_OPT += AARCH32_SP=sp_min
+endif
+
+ifdef PTXCONF_TF_A
+ifeq ($(TF_A_ARTIFACTS),)
+$(call ptx/error, TF_A_ARTIFACTS is empty. Nothing to install.)
+endif
+endif
+
+TF_A_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/tf-a.compile:
+ @$(call targetinfo)
+
+ @$(foreach plat, $(TF_A_PLATFORMS), \
+ $(call compile, TF_A, \
+ $(TF_A_MAKE_OPT) PLAT=$(plat))$(ptx/nl))
+
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+tf-a/inst_pkgdir = \
+ install -v -D -m 644 $(2) $(TF_A_PKGDIR)/usr/lib/firmware/$(3)
+
+tf-a/inst_plat = $(foreach artifact, \
+ $(wildcard $(addprefix $(TF_A_BINDIR)/, $(TF_A_ARTIFACTS))), \
+ $(call $(2),TF_A,$(artifact),$(1)-$(notdir $(artifact)))$(ptx/nl))
+
+tf-a/inst_bins = $(foreach plat, $(TF_A_PLATFORMS), $(call tf-a/inst_plat,$(plat),$(1)))
+
+$(STATEDIR)/tf-a.install:
+ @$(call targetinfo)
+ @$(call tf-a/inst_bins,tf-a/inst_pkgdir)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/tf-a.targetinstall:
+ @$(call targetinfo)
+ @$(call tf-a/inst_bins,ptx/image-install)
+ @$(call touch)
+
+# vim: syntax=make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 03/12] tf-a: k3 needs an additional compile argument
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 01/12] v8a: barebox: bump version v2025.03.0 -> v2025.05.0 Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 02/12] beagleplay: tf-a: needs adaption for k3 boards Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 04/12] beagleplay: k3: barebox needs part of tf-a firmware Lars Schmidt
` (8 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
apply patch from ptxdist
Link: https://lore.ptxdist.org/ptxdist/20250515135619.2599876-1-l.schmidt@pengutronix.de/
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/rules/tf-a.make | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/configs/platform-v8a/rules/tf-a.make b/configs/platform-v8a/rules/tf-a.make
index bff4edf..664f360 100644
--- a/configs/platform-v8a/rules/tf-a.make
+++ b/configs/platform-v8a/rules/tf-a.make
@@ -44,6 +44,7 @@ TF_A_WRAPPER_BLACKLIST := \
TF_A_EXTRA_ARGS := $(call remove_quotes,$(PTXCONF_TF_A_EXTRA_ARGS))
TF_A_BINDIR = $(TF_A_BUILD_DIR)/$(1)/$(if $(filter DEBUG=1,$(TF_A_EXTRA_ARGS)),debug,release)
+TF_A_BINDIR_BOARD = $(TF_A_BUILD_DIR)/$(1)/*/$(if $(filter DEBUG=1,$(TF_A_EXTRA_ARGS)),debug,release)
TF_A_MAKE_OPT := \
-C $(TF_A_DIR) \
CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE) \
@@ -93,7 +94,8 @@ tf-a/inst_pkgdir = \
install -v -D -m 644 $(2) $(TF_A_PKGDIR)/usr/lib/firmware/$(3)
tf-a/inst_plat = $(foreach artifact, \
- $(wildcard $(addprefix $(TF_A_BINDIR)/, $(TF_A_ARTIFACTS))), \
+ $(wildcard $(addprefix $(TF_A_BINDIR)/, $(TF_A_ARTIFACTS))) \
+ $(wildcard $(addprefix $(TF_A_BINDIR_BOARD)/, $(TF_A_ARTIFACTS))), \
$(call $(2),TF_A,$(artifact),$(1)-$(notdir $(artifact)))$(ptx/nl))
tf-a/inst_bins = $(foreach plat, $(TF_A_PLATFORMS), $(call tf-a/inst_plat,$(plat),$(1)))
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 04/12] beagleplay: k3: barebox needs part of tf-a firmware
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (2 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 03/12] tf-a: k3 needs an additional compile argument Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox Lars Schmidt
` (7 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/platforms/tf-a-barebox.in | 7 +++++++
configs/platform-v8a/rules/tf-a.barebox.make | 5 +++++
2 files changed, 12 insertions(+)
create mode 100644 configs/platform-v8a/platforms/tf-a-barebox.in
create mode 100644 configs/platform-v8a/rules/tf-a.barebox.make
diff --git a/configs/platform-v8a/platforms/tf-a-barebox.in b/configs/platform-v8a/platforms/tf-a-barebox.in
new file mode 100644
index 0000000..0744451
--- /dev/null
+++ b/configs/platform-v8a/platforms/tf-a-barebox.in
@@ -0,0 +1,7 @@
+## SECTION=non_free_firmware
+
+config BAREBOX_DEPENDENCIES
+ tristate
+ select TF_A
+ help
+ Inject necessary files from non-free firmware into Barebox
diff --git a/configs/platform-v8a/rules/tf-a.barebox.make b/configs/platform-v8a/rules/tf-a.barebox.make
new file mode 100644
index 0000000..4c61af2
--- /dev/null
+++ b/configs/platform-v8a/rules/tf-a.barebox.make
@@ -0,0 +1,5 @@
+ifdef PTXCONF_TF_A
+ifneq ($(filter k3,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += k3-bl31.bin:firmware/k3-bl31.bin
+endif
+endif
\ No newline at end of file
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (3 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 04/12] beagleplay: k3: barebox needs part of tf-a firmware Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:49 ` Alexander Dahl
2025-05-23 8:10 ` [DistroKit] [PATCH 06/12] beagleplay: firmware-ti: initial package Lars Schmidt
` (6 subsequent siblings)
11 siblings, 1 reply; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Technically the firmware parts are coming out of tf-a.
This moves the handling of the extra files for barebox all to
the same place and makes maintenance easier.
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/rules/firmware-imx.make | 7 -------
configs/platform-v8a/rules/tf-a.barebox.make | 15 +++++++++++++++
2 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
index 6b01af3..8a59b9f 100644
--- a/configs/platform-v8a/rules/firmware-imx.make
+++ b/configs/platform-v8a/rules/firmware-imx.make
@@ -29,12 +29,6 @@ FIRMWARE_IMX_LICENSE_FILES := \
#
# 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
-BAREBOX_INJECT_FILES += imx93-bl31.bin:firmware/imx93-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
@@ -45,7 +39,6 @@ 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
diff --git a/configs/platform-v8a/rules/tf-a.barebox.make b/configs/platform-v8a/rules/tf-a.barebox.make
index 4c61af2..6e22cba 100644
--- a/configs/platform-v8a/rules/tf-a.barebox.make
+++ b/configs/platform-v8a/rules/tf-a.barebox.make
@@ -2,4 +2,19 @@ ifdef PTXCONF_TF_A
ifneq ($(filter k3,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
BAREBOX_INJECT_FILES += k3-bl31.bin:firmware/k3-bl31.bin
endif
+ifneq ($(filter imx8mq,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
+endif
+ifneq ($(filter imx8mm,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
+endif
+ifneq ($(filter imx8mn,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
+endif
+ifneq ($(filter imx8mp,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
+endif
+ifneq ($(filter imx93,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
+BAREBOX_INJECT_FILES += imx93-bl31.bin:firmware/imx93-bl31.bin
+endif
endif
\ No newline at end of file
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 06/12] beagleplay: firmware-ti: initial package
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (4 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 07/12] beagleplay: barebox: first stage bootloader for Cortex-R5 Lars Schmidt
` (5 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Beagleplay needs ipc_echo_testb_mcu1_0_release_strip.xer5f
during boot process. This file will be copied into the FIP
image.
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/platforms/firmware-ti.in | 7 ++
configs/platform-v8a/rules/firmware-ti.make | 67 +++++++++++++++++++
2 files changed, 74 insertions(+)
create mode 100644 configs/platform-v8a/platforms/firmware-ti.in
create mode 100644 configs/platform-v8a/rules/firmware-ti.make
diff --git a/configs/platform-v8a/platforms/firmware-ti.in b/configs/platform-v8a/platforms/firmware-ti.in
new file mode 100644
index 0000000..0d8693c
--- /dev/null
+++ b/configs/platform-v8a/platforms/firmware-ti.in
@@ -0,0 +1,7 @@
+## SECTION=non_free_firmware
+
+config FIRMWARE_TI
+ tristate
+ prompt "firmware-ti"
+ help
+ Inject necessary files for boot process from TI firmware for into Barebox-R5
diff --git a/configs/platform-v8a/rules/firmware-ti.make b/configs/platform-v8a/rules/firmware-ti.make
new file mode 100644
index 0000000..16ff4de
--- /dev/null
+++ b/configs/platform-v8a/rules/firmware-ti.make
@@ -0,0 +1,67 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Michael Olbrich <m.olbrich@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_FIRMWARE_TI) += firmware-ti
+
+#
+# Paths and names
+#
+FIRMWARE_TI_VERSION := 11.00.07
+FIRMWARE_TI_MD5 := 65377f3f8ada7f6276e088e1b87cc5c6
+FIRMWARE_TI := ti-linux-firmware-$(FIRMWARE_TI_VERSION)
+FIRMWARE_TI_SUFFIX := tar.gz
+FIRMWARE_TI_URL := https://git.ti.com/cgit/processor-firmware/ti-linux-firmware/snapshot/$(FIRMWARE_TI).$(FIRMWARE_TI_SUFFIX)
+FIRMWARE_TI_SOURCE := $(SRCDIR)/$(FIRMWARE_TI).$(FIRMWARE_TI_SUFFIX)
+FIRMWARE_TI_DIR := $(BUILDDIR)/$(FIRMWARE_TI)
+FIRMWARE_TI_LICENSE := unknown
+FIRMWARE_TI_LICENSE_FILES :=
+
+FIRMWARE_TI_FIRMWARE_FILES := \
+ ti-fs-firmware-am62x-gp.bin \
+ ti-fs-firmware-am62x-hs-fs-cert.bin \
+ ti-fs-firmware-am62x-hs-fs-enc.bin
+
+#
+# Firmware blobs for barebox
+#
+ifdef PTXCONF_FIRMWARE_TI
+BAREBOX_R5_INJECT_FILES += \
+ $(foreach f,$(FIRMWARE_TI_FIRMWARE_FILES),ti-sysfw/$(f):firmware/$(f))
+endif
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+FIRMWARE_TI_CONF_TOOL := NO
+
+# ----------------------------------------------------------------------------
+# Compile
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-ti.compile:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/firmware-ti.install:
+ @$(call targetinfo)
+ @$(foreach f,$(FIRMWARE_TI_FIRMWARE_FILES), \
+ install -v -D -m644 $(FIRMWARE_TI_DIR)/ti-sysfw/$(f) \
+ $(FIRMWARE_TI_PKGDIR)/usr/lib/firmware/ti-sysfw/$(f)$(ptx/nl))
+ @install -v -D -m644 $(FIRMWARE_TI_DIR)/ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f \
+ $(FIRMWARE_TI_PKGDIR)/usr/lib/firmware/ti-dm/am62xx/ti-dm.bin
+ @$(call touch)
+
+# vim: syntax=make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 07/12] beagleplay: barebox: first stage bootloader for Cortex-R5
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (5 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 06/12] beagleplay: firmware-ti: initial package Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 08/12] beagleplay: fipimage: add fip image for K3 Lars Schmidt
` (4 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
The first stage of BeaglePlay's is happening on its
32bit Coretex-R5 core. So this needs a separate barebox
stage in order to boot up the BeaglePlay.
This also needs a separate 32bit toolchain selected in
order to compile
Link: https://git.pengutronix.de/cgit/barebox/tree/Documentation/boards/ti-k3.rst
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/barebox-r5.config | 700 +++++++++++++++++++
configs/platform-v8a/platforms/barebox-r5.in | 15 +
configs/platform-v8a/rules/barebox-r5.make | 99 +++
3 files changed, 814 insertions(+)
create mode 100644 configs/platform-v8a/barebox-r5.config
create mode 100644 configs/platform-v8a/platforms/barebox-r5.in
create mode 100644 configs/platform-v8a/rules/barebox-r5.make
diff --git a/configs/platform-v8a/barebox-r5.config b/configs/platform-v8a/barebox-r5.config
new file mode 100644
index 0000000..5edfeaf
--- /dev/null
+++ b/configs/platform-v8a/barebox-r5.config
@@ -0,0 +1,700 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Barebox/arm 2025.05.0 Configuration
+#
+CONFIG_ARM=y
+CONFIG_ARCH_LINUX_NAME="arm"
+CONFIG_ARCH_MKIMAGE_NAME="arm"
+CONFIG_ARM32=y
+CONFIG_ARCH_TEXT_BASE=0x00000000
+
+#
+# System Type
+#
+CONFIG_ARCH_MULTIARCH=y
+# CONFIG_ARCH_AT91 is not set
+# CONFIG_ARCH_CLPS711X is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_MXS is not set
+# CONFIG_ARCH_PXA is not set
+# CONFIG_ARCH_SOCFPGA is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_ZYNQ is not set
+# CONFIG_ARCH_BCM283X is not set
+# CONFIG_ARCH_IMX is not set
+CONFIG_ARCH_K3=y
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_LAYERSCAPE is not set
+# CONFIG_ARCH_OMAP_MULTI is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+# CONFIG_ARCH_STM32MP is not set
+# CONFIG_ARCH_VERSATILE is not set
+# CONFIG_ARCH_VEXPRESS is not set
+
+#
+# Processor Type
+#
+CONFIG_CPU_32=y
+CONFIG_CPU_V7=y
+CONFIG_CPU_32v7=y
+
+#
+# processor features
+#
+# CONFIG_BOOT_ENDIANNESS_SWITCH is not set
+CONFIG_ARMV7R_MPU=y
+
+#
+# K3 boards
+#
+CONFIG_MACH_K3_CORTEX_R5=y
+CONFIG_MACH_AM625_SK=y
+CONFIG_MACH_BEAGLEPLAY=y
+# CONFIG_ARCH_K3_AUTHENTICATE_IMAGE is not set
+# end of K3 boards
+
+CONFIG_AEABI=y
+# CONFIG_THUMB2_BAREBOX is not set
+# end of System Type
+
+# CONFIG_64BIT is not set
+CONFIG_32BIT=y
+
+#
+# ARM specific settings
+#
+CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y
+CONFIG_ARM_EXCEPTIONS=y
+# CONFIG_ARM_UNWIND is not set
+# CONFIG_ARM_SEMIHOSTING is not set
+# CONFIG_ARM_PSCI_CLIENT is not set
+# end of ARM specific settings
+
+#
+# General architecture-dependent options
+#
+# CONFIG_BOARD_GENERIC_DT is not set
+# end of General architecture-dependent options
+
+CONFIG_ARCH_HAS_DATA_ABORT_MASK=y
+CONFIG_ARCH_HAS_ZERO_PAGE=y
+CONFIG_HAVE_ARCH_BOARD_GENERIC_DT=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_ARCH_HAS_SJLJ=y
+CONFIG_HAS_DEBUG_LL=y
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=140201
+CONFIG_CLANG_VERSION=0
+CONFIG_HAS_KALLSYMS=y
+CONFIG_HAS_MODULES=y
+CONFIG_HAS_DMA=y
+CONFIG_GENERIC_GPIO=y
+CONFIG_BLOCK=y
+CONFIG_FILETYPE=y
+
+#
+# General Settings
+#
+CONFIG_LOCALVERSION=""
+CONFIG_LOCALVERSION_AUTO=y
+CONFIG_HAS_INSECURE_DEFAULTS=y
+CONFIG_INSECURE=y
+CONFIG_BANNER=y
+# CONFIG_MEMINFO is not set
+CONFIG_ENVIRONMENT_VARIABLES=y
+# CONFIG_GLOBALVAR is not set
+
+#
+# memory layout
+#
+CONFIG_HAVE_PBL_IMAGE=y
+CONFIG_HAVE_PBL_MULTI_IMAGES=y
+CONFIG_HAVE_IMAGE_COMPRESSION=y
+CONFIG_PBL_IMAGE=y
+CONFIG_PBL_MULTI_IMAGES=y
+CONFIG_USE_COMPRESSED_DTB=y
+CONFIG_PBL_RELOCATABLE=y
+CONFIG_IMAGE_COMPRESSION=y
+# CONFIG_IMAGE_COMPRESSION_LZ4 is not set
+# CONFIG_IMAGE_COMPRESSION_LZO is not set
+# CONFIG_IMAGE_COMPRESSION_GZIP is not set
+CONFIG_IMAGE_COMPRESSION_XZKERN=y
+# CONFIG_IMAGE_COMPRESSION_NONE is not set
+# CONFIG_MMU is not set
+CONFIG_BAREBOX_MAX_IMAGE_SIZE=0x10000000
+CONFIG_BAREBOX_MAX_PBL_SIZE=0xffffffff
+CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0xffffffff
+CONFIG_STACK_SIZE=0x8000
+CONFIG_MALLOC_SIZE=0x0
+CONFIG_MALLOC_ALIGNMENT=8
+# end of memory layout
+
+# CONFIG_EXPERIMENTAL is not set
+# CONFIG_MALLOC_DLMALLOC is not set
+CONFIG_MALLOC_TLSF=y
+# CONFIG_MALLOC_DUMMY is not set
+CONFIG_KALLSYMS=y
+CONFIG_RELOCATABLE=y
+# CONFIG_PANIC_POWEROFF is not set
+# CONFIG_PANIC_HANG is not set
+CONFIG_PANIC_RESET=y
+CONFIG_PROMPT="MLO>"
+CONFIG_BAUDRATE=115200
+CONFIG_SIMPLE_READLINE=y
+CONFIG_CBSIZE=1024
+CONFIG_FIRMWARE=y
+# CONFIG_SHELL_HUSH is not set
+# CONFIG_SHELL_SIMPLE is not set
+CONFIG_SHELL_NONE=y
+# CONFIG_GLOB is not set
+# CONFIG_PASSWORD is not set
+# CONFIG_ERRNO_MESSAGES is not set
+# CONFIG_BOOTM is not set
+CONFIG_ELF=y
+# CONFIG_BAREBOX_UPDATE is not set
+# CONFIG_IMD is not set
+CONFIG_CONSOLE_FULL=y
+# CONFIG_CONSOLE_SIMPLE is not set
+# CONFIG_CONSOLE_NONE is not set
+# CONFIG_CONSOLE_ACTIVATE_FIRST is not set
+# CONFIG_CONSOLE_ACTIVATE_ALL is not set
+# CONFIG_CONSOLE_ACTIVATE_ALL_FALLBACK is not set
+CONFIG_CONSOLE_ACTIVATE_NONE=y
+# CONFIG_CONSOLE_ALLOW_COLOR is not set
+CONFIG_CONSOLE_FLUSH_LINE_BREAK=y
+# CONFIG_CONSOLE_DISABLE_INPUT is not set
+CONFIG_PBL_CONSOLE=y
+CONFIG_PARTITION=y
+CONFIG_PARTITION_DISK=y
+CONFIG_PARTITION_DISK_DOS=y
+# CONFIG_PARTITION_DISK_EFI is not set
+# CONFIG_ENV_HANDLING is not set
+# CONFIG_DEFAULT_ENVIRONMENT is not set
+CONFIG_DEFAULT_COMPRESSION_NONE=y
+CONFIG_HAS_SCHED=y
+CONFIG_POLLER=y
+CONFIG_BTHREAD=y
+# CONFIG_STATE is not set
+# CONFIG_BOOTCHOOSER is not set
+# CONFIG_BOOT_DEFAULTS is not set
+# CONFIG_BAREBOX_DT_2ND is not set
+CONFIG_EXTERNAL_DTS_FRAGMENTS=""
+
+#
+# OP-TEE loading
+#
+# CONFIG_PBL_OPTEE is not set
+CONFIG_FILETYPE_STRINGS=y
+# end of OP-TEE loading
+# end of General Settings
+
+#
+# Debugging
+#
+CONFIG_COMPILE_LOGLEVEL=6
+CONFIG_DEFAULT_LOGLEVEL=7
+CONFIG_DEBUG_LL=y
+CONFIG_DEBUG_AM62X_UART=y
+CONFIG_DEBUG_K3_UART_PORT=0
+# CONFIG_DEBUG_INITCALLS is not set
+# CONFIG_DEBUG_PBL is not set
+CONFIG_DEBUG_PROBES=y
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_RESOURCES is not set
+# CONFIG_PBL_BREAK is not set
+# CONFIG_PRINTF_FULL is not set
+# CONFIG_UBSAN is not set
+CONFIG_CC_HAS_KASAN_GENERIC=y
+# CONFIG_KASAN is not set
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+
+#
+# arm Debugging
+#
+# end of Debugging
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_HAVE_EFI_STUB=y
+# end of EFI (Extensible Firmware Interface) Support
+
+# CONFIG_NET is not set
+
+#
+# Drivers
+#
+CONFIG_PM_GENERIC_DOMAINS=y
+CONFIG_REGMAP_FORMATTED=y
+CONFIG_REGMAP_I2C=y
+CONFIG_OFTREE=y
+CONFIG_OFTREE_MEM_GENERIC=y
+CONFIG_DTC=y
+CONFIG_OF=y
+CONFIG_OFDEVICE=y
+CONFIG_OF_GPIO=y
+# CONFIG_OF_OVERLAY is not set
+# CONFIG_AIODEV is not set
+
+#
+# serial drivers
+#
+# CONFIG_SERIAL_DEV_BUS is not set
+# CONFIG_DRIVER_SERIAL_ARM_DCC is not set
+CONFIG_DRIVER_SERIAL_NS16550=y
+# CONFIG_DRIVER_SERIAL_CADENCE is not set
+# CONFIG_SERIAL_SIFIVE is not set
+# end of serial drivers
+
+#
+# SPI drivers
+#
+# CONFIG_SPI is not set
+# end of SPI drivers
+
+CONFIG_I2C=y
+
+#
+# I2C Hardware Bus support
+#
+# CONFIG_I2C_GPIO is not set
+# CONFIG_I2C_DESIGNWARE is not set
+# CONFIG_I2C_MV64XXX is not set
+CONFIG_I2C_OMAP=y
+# end of I2C Hardware Bus support
+
+# CONFIG_I2C_MUX is not set
+# CONFIG_MTD is not set
+CONFIG_DISK=y
+# CONFIG_DISK_WRITE is not set
+
+#
+# drive types
+#
+# CONFIG_DISK_ATA is not set
+# CONFIG_DISK_AHCI is not set
+
+#
+# interface types
+#
+# CONFIG_DISK_INTF_PLATFORM_IDE is not set
+CONFIG_USB=y
+CONFIG_USB_HOST=y
+# CONFIG_USB_DWC2_HOST is not set
+# CONFIG_USB_DWC2_GADGET is not set
+CONFIG_USB_DWC3=y
+# CONFIG_USB_DWC3_HOST is not set
+CONFIG_USB_DWC3_GADGET=y
+# CONFIG_USB_DWC3_DUAL_ROLE is not set
+# CONFIG_USB_DWC3_OF_SIMPLE is not set
+CONFIG_USB_DWC3_AM62=y
+# CONFIG_USB_EHCI is not set
+# CONFIG_USB_OHCI is not set
+CONFIG_USB_XHCI=y
+# CONFIG_USB_ULPI is not set
+CONFIG_USB_OTGDEV=y
+# CONFIG_USB_STORAGE is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_HUB_USB251XB is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+# CONFIG_TYPEC_TUSB320 is not set
+CONFIG_USB_GADGET=y
+
+#
+# USB Gadget drivers
+#
+CONFIG_USB_GADGET_DFU=y
+# CONFIG_USB_GADGET_SERIAL is not set
+# CONFIG_USB_GADGET_FASTBOOT is not set
+CONFIG_USB_GADGET_MASS_STORAGE=y
+# CONFIG_USB_MUSB is not set
+# CONFIG_VIDEO is not set
+# CONFIG_SOUND is not set
+CONFIG_MCI_SDHCI=y
+CONFIG_MCI=y
+
+#
+# --- Feature list ---
+#
+# CONFIG_MCI_TUNING is not set
+# CONFIG_MCI_STARTUP is not set
+# CONFIG_MCI_WRITE is not set
+CONFIG_MCI_MMC_BOOT_PARTITIONS=y
+# CONFIG_MCI_MMC_GPP_PARTITIONS is not set
+CONFIG_MCI_MMC_RPMB=y
+
+#
+# --- MCI host drivers ---
+#
+# CONFIG_MCI_DWC_MSHC is not set
+# CONFIG_MCI_DW is not set
+# CONFIG_MCI_SUNXI_SMHC is not set
+# CONFIG_MCI_ROCKCHIP_DWCMSHC is not set
+# CONFIG_MCI_ARASAN is not set
+CONFIG_MCI_AM654=y
+CONFIG_HAVE_CLK=y
+CONFIG_CLKDEV_LOOKUP=y
+CONFIG_COMMON_CLK=y
+CONFIG_COMMON_CLK_OF_PROVIDER=y
+# CONFIG_TI_SCI_CLK is not set
+CONFIG_COMMON_CLK_GPIO=y
+
+#
+# Clocksource
+#
+CONFIG_CLOCKSOURCE_DUMMY_RATE=1000
+CONFIG_CLOCKSOURCE_ARM_ARCHITECTED_TIMER=y
+# CONFIG_CLOCKSOURCE_DW_APB_TIMER is not set
+CONFIG_CLOCKSOURCE_TI_DM=y
+# end of Clocksource
+
+#
+# Multifunction device drivers
+#
+# CONFIG_MFD_ACT8846 is not set
+# CONFIG_MFD_DA9053 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_LP3972 is not set
+# CONFIG_MFD_MC13XXX is not set
+# CONFIG_MFD_MC34704 is not set
+# CONFIG_MFD_MC9SDZ60 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+CONFIG_MFD_TPS65219=y
+# CONFIG_MFD_TWL4030 is not set
+# CONFIG_MFD_TWL6030 is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_PCA9450 is not set
+# CONFIG_MFD_RN568PMIC is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_RK808 is not set
+# CONFIG_MFD_AXP20X_I2C is not set
+# CONFIG_MFD_ROHM_BD718XX is not set
+# end of Multifunction device drivers
+
+#
+# Misc devices
+#
+# CONFIG_JTAG is not set
+# CONFIG_SRAM is not set
+# CONFIG_DEV_MEM is not set
+# CONFIG_UBOOTVAR is not set
+# CONFIG_STORAGE_BY_ALIAS is not set
+# end of Misc devices
+
+# CONFIG_LED is not set
+
+#
+# EEPROM support
+#
+# CONFIG_EEPROM_AT24 is not set
+# end of EEPROM support
+
+#
+# Input device support
+#
+# CONFIG_INPUT_EVBUG is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_USB is not set
+# CONFIG_INPUT_SPECIALKEYS is not set
+# end of Input device support
+
+# CONFIG_WATCHDOG is not set
+# CONFIG_PWM is not set
+# CONFIG_HWRNG is not set
+
+#
+# DMA support
+#
+# CONFIG_DMADEVICES is not set
+# end of DMA support
+
+CONFIG_GPIOLIB=y
+
+#
+# GPIO
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+CONFIG_GPIO_DAVINCI=y
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_DESIGNWARE is not set
+# CONFIG_GPIO_SX150X is not set
+# CONFIG_GPIO_SIFIVE is not set
+# CONFIG_GPIO_LATCH is not set
+# end of GPIO
+
+# CONFIG_W1 is not set
+
+#
+# Pin controllers
+#
+CONFIG_PINCTRL=y
+CONFIG_PINCTRL_SINGLE=y
+# end of Pin controllers
+
+# CONFIG_NVMEM is not set
+
+#
+# Bus devices
+#
+# end of Bus devices
+
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_FIXED=y
+# CONFIG_REGULATOR_FAN53555 is not set
+CONFIG_REGULATOR_TPS65219=y
+# CONFIG_REGULATOR_ANATOP is not set
+
+#
+# Remoteproc drivers
+#
+CONFIG_REMOTEPROC=y
+CONFIG_REMOTEPROC_TI_K3_ARM64=y
+CONFIG_REMOTEPROC_K3_SYSTEM_CONTROLLER=y
+# end of Remoteproc drivers
+
+# CONFIG_RESET_CONTROLLER is not set
+# CONFIG_RTC_CLASS is not set
+
+#
+# Firmware Drivers
+#
+# CONFIG_QEMU_FW_CFG is not set
+CONFIG_TI_SCI_PROTOCOL=y
+
+#
+# ARM System Control and Management Interface Protocol
+#
+# CONFIG_ARM_SCMI_PROTOCOL is not set
+# end of ARM System Control and Management Interface Protocol
+# end of Firmware Drivers
+
+#
+# FPGA Configuration Support
+#
+# CONFIG_FPGA is not set
+# end of FPGA Configuration Support
+
+# CONFIG_GENERIC_PHY is not set
+
+#
+# Hardware crypto devices
+#
+# end of Hardware crypto devices
+
+#
+# Memory controller drivers
+#
+# end of Memory controller drivers
+
+#
+# SoC drivers
+#
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# KVX SoC drivers
+#
+# end of KVX SoC drivers
+
+CONFIG_K3_ESM=y
+CONFIG_TI_K3_RINGACC=y
+# end of SoC drivers
+
+#
+# PM Domains
+#
+
+#
+# i.MX PM Domains
+#
+# end of i.MX PM Domains
+
+# CONFIG_TI_SCI_PM_DOMAINS is not set
+CONFIG_TI_K3_PM_DOMAINS=y
+# end of PM Domains
+
+#
+# NVME Support
+#
+# end of NVME Support
+
+CONFIG_K3_DDRSS=y
+# CONFIG_SYSCON_REBOOT_MODE is not set
+# CONFIG_POWER_RESET_SYSCON is not set
+# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
+# CONFIG_VIRTIO_MENU is not set
+CONFIG_MAILBOX=y
+CONFIG_TI_MESSAGE_MANAGER=y
+# CONFIG_TEE is not set
+# end of Drivers
+
+#
+# Filesystem support
+#
+CONFIG_FS=y
+CONFIG_FS_LEGACY=y
+CONFIG_FS_WRITABLE=y
+
+#
+# Some selected filesystems still use the legacy FS API.
+#
+
+#
+# Consider updating them.
+#
+# CONFIG_FS_CRAMFS is not set
+# CONFIG_FS_EXT4 is not set
+CONFIG_FS_RAMFS=y
+CONFIG_FS_DEVFS=y
+CONFIG_FS_FAT=y
+# CONFIG_FS_FAT_WRITE is not set
+CONFIG_FS_FAT_LFN=y
+# CONFIG_FS_BPKFS is not set
+# CONFIG_FS_UIMAGEFS is not set
+# CONFIG_FS_PSTORE is not set
+# CONFIG_FS_SQUASHFS is not set
+
+#
+# ZLIB support disabled
+#
+
+#
+# LZ4 support disabled
+#
+
+#
+# LZO support disabled
+#
+
+#
+# XZ support disabled
+#
+
+#
+# ZSTD support disabled
+#
+# end of Filesystem support
+
+#
+# Library routines
+#
+CONFIG_UNCOMPRESS=y
+# CONFIG_ZLIB is not set
+# CONFIG_BZLIB is not set
+# CONFIG_LZ4_DECOMPRESS is not set
+# CONFIG_ZSTD_DECOMPRESS is not set
+CONFIG_XZ_DECOMPRESS=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_ARM64=y
+# CONFIG_BASE64 is not set
+# CONFIG_LZO_DECOMPRESS is not set
+CONFIG_FIP=y
+# CONFIG_ALLOW_PRNG_FALLBACK is not set
+# CONFIG_CRC_CCITT is not set
+# CONFIG_CRC8 is not set
+
+#
+# Library gui routines
+#
+# end of Library gui routines
+
+# CONFIG_BOOTSTRAP is not set
+CONFIG_NLS=y
+# CONFIG_BLOBGEN is not set
+# end of Library routines
+
+#
+# Hardening options
+#
+
+#
+# This barebox configuration has CONFIG_HAS_INSECURE_DEFAULTS=y indicating
+#
+
+#
+# that some of the configured options have potentially insecure defaults.
+#
+
+#
+# Extra care needs to be taken in secure booted systems.
+#
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+# CONFIG_INIT_STACK_NONE is not set
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+CONFIG_INIT_STACK_ALL_ZERO=y
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+CONFIG_STACKPROTECTOR_NONE=y
+# CONFIG_STACKPROTECTOR_STRONG is not set
+CONFIG_PBL_STACKPROTECTOR_NONE=y
+# CONFIG_PBL_STACKPROTECTOR_STRONG is not set
+# end of Hardening options
+
+#
+# Crypto support
+#
+CONFIG_CRC32=y
+# CONFIG_DIGEST is not set
+# CONFIG_CRYPTO_RSA is not set
+# CONFIG_CRYPTO_ECDSA is not set
+# CONFIG_CRYPTO_BUILTIN_KEYS is not set
+# CONFIG_CRYPTO_KEYSTORE is not set
+# end of Crypto support
+
+#
+# Firmware files
+#
+CONFIG_EXTRA_FIRMWARE_DIR="firmware"
+CONFIG_MISSING_FIRMWARE_ERROR=y
+CONFIG_HAVE_FIRMWARE_VERIFY_NEXT_IMAGE=y
+# CONFIG_FIRMWARE_VERIFY_NEXT_IMAGE is not set
+# end of Firmware files
+
+#
+# Host Tools
+#
+# CONFIG_COMPILE_HOST_TOOLS is not set
+# end of Host Tools
+
+#
+# Target Tools
+#
+# CONFIG_KERNEL_INSTALL_TARGET is not set
+# CONFIG_BAREBOXENV_TARGET is not set
+# CONFIG_BAREBOXCRC32_TARGET is not set
+# CONFIG_MVEBU_KWBOOT_TARGET is not set
+# end of Target Tools
+
+# CONFIG_TEST is not set
diff --git a/configs/platform-v8a/platforms/barebox-r5.in b/configs/platform-v8a/platforms/barebox-r5.in
new file mode 100644
index 0000000..55147be
--- /dev/null
+++ b/configs/platform-v8a/platforms/barebox-r5.in
@@ -0,0 +1,15 @@
+## SECTION=bootloader
+
+config BAREBOX_R5
+ tristate
+ prompt "Barebox (r5)"
+ select HOST_SYSTEM_PYTHON3
+ select HOST_SYSTEM_PYTHON3_PYYAML
+ select FIRMWARE_TI
+ help
+ FIXME
+
+config COMPILERPREFIX_R5
+ string
+ prompt "compiler prefix (R5)"
+ default "arm-v7a-linux-gnueabihf-"
diff --git a/configs/platform-v8a/rules/barebox-r5.make b/configs/platform-v8a/rules/barebox-r5.make
new file mode 100644
index 0000000..37a38f2
--- /dev/null
+++ b/configs/platform-v8a/rules/barebox-r5.make
@@ -0,0 +1,99 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Lars Schmidt <l.schmidt@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_BAREBOX_R5) += barebox-r5
+
+#
+# Paths and names
+#
+BAREBOX_R5_VERSION := $(call ptx/config-version, PTXCONF_BAREBOX)
+BAREBOX_R5_MD5 := $(call ptx/config-md5, PTXCONF_BAREBOX)
+BAREBOX_R5 := barebox-r5-$(BAREBOX_R5_VERSION)
+BAREBOX_R5_SUFFIX := tar.bz2
+BAREBOX_R5_URL := $(call barebox-url, BAREBOX_R5)
+BAREBOX_R5_PATCHES := barebox-$(BAREBOX_R5_VERSION)
+BAREBOX_R5_SOURCE := $(SRCDIR)/$(BAREBOX_R5_PATCHES).$(BAREBOX_R5_SUFFIX)
+BAREBOX_R5_DIR := $(BUILDDIR)/$(BAREBOX_R5)
+BAREBOX_R5_BUILD_DIR := $(BAREBOX_R5_DIR)-build
+BAREBOX_R5_CONFIG := $(call ptx/in-platformconfigdir, barebox-r5.config)
+BAREBOX_R5_LICENSE := GPL-2.0-only
+BAREBOX_R5_LICENSE_FILES :=
+BAREBOX_R5_BUILD_OOT := KEEP
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+# use host pkg-config for host tools
+BAREBOX_R5_PATH := PATH=$(HOST_PATH)
+BAREBOX_R5_INJECT_PATH := $(PTXDIST_SYSROOT_TARGET)/usr/lib/firmware
+
+BAREBOX_R5_WRAPPER_BLACKLIST := \
+ $(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
+
+BAREBOX_R5_CONF_TOOL := kconfig
+BAREBOX_R5_CONF_OPT := \
+ -C $(BAREBOX_R5_DIR) \
+ O=$(BAREBOX_R5_BUILD_DIR) \
+ $(filter-out CROSS_COMPILE%, $(call barebox-opts, BAREBOX_R5)) \
+ CROSS_COMPILE=$(PTXDIST_WORKSPACE)/selected_toolchain_r5/$(PTXCONF_COMPILERPREFIX_R5)
+
+BAREBOX_R5_MAKE_OPT := $(BAREBOX_R5_CONF_OPT)
+
+BAREBOX_R5_IMAGES := images/barebox-beagleplay-r5.img
+BAREBOX_R5_IMAGES := $(addprefix $(BAREBOX_R5_BUILD_DIR)/,$(BAREBOX_R5_IMAGES))
+
+ifdef PTXCONF_BAREBOX_R5
+$(BAREBOX_R5_CONFIG):
+ @echo
+ @echo "****************************************************************************"
+ @echo " Please generate a bareboxconfig with 'ptxdist menuconfig barebox-r5'"
+ @echo "****************************************************************************"
+ @echo
+ @echo
+ @exit 1
+endif
+
+$(STATEDIR)/barebox-r5.prepare:
+ @$(call targetinfo)
+ @$(call world/inject,BAREBOX_R5)
+ @$(call world/prepare,BAREBOX_R5)
+ @$(call touch)
+
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/barebox-r5.install:
+ @$(call targetinfo)
+ @$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/barebox-r5.targetinstall:
+ @$(call targetinfo)
+ @$(foreach image, $(BAREBOX_R5_IMAGES), \
+ $(call ptx/image-install, BAREBOX_R5, $(image), \
+ $(notdir $(image)))$(ptx/nl))
+ @$(call touch)
+
+
+# ----------------------------------------------------------------------------
+# oldconfig / menuconfig
+# ----------------------------------------------------------------------------
+
+$(call ptx/kconfig-targets, barebox-r5): $(STATEDIR)/barebox-r5.extract
+ @$(call world/kconfig, BAREBOX_R5, $(subst barebox-r5_,,$@))
+
+# vim: syntax=make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 08/12] beagleplay: fipimage: add fip image for K3
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (6 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 07/12] beagleplay: barebox: first stage bootloader for Cortex-R5 Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 09/12] beagleplay: add full image including bootloaders and rootfs Lars Schmidt
` (3 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
In order to be able to boot from an eMMC boot partition,
a FIP image is mandatory.
Link: https://lore.kernel.org/all/20250113-k3-r5-v3-20-065fcdcc28d3@pengutronix.de/
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
.../config/images/image-fip-k3.config | 7 ++++
.../platform-v8a/platforms/image-fip-k3.in | 10 +++++
configs/platform-v8a/rules/image-fip-k3.make | 39 +++++++++++++++++++
3 files changed, 56 insertions(+)
create mode 100644 configs/platform-v8a/config/images/image-fip-k3.config
create mode 100644 configs/platform-v8a/platforms/image-fip-k3.in
create mode 100644 configs/platform-v8a/rules/image-fip-k3.make
diff --git a/configs/platform-v8a/config/images/image-fip-k3.config b/configs/platform-v8a/config/images/image-fip-k3.config
new file mode 100644
index 0000000..e636216
--- /dev/null
+++ b/configs/platform-v8a/config/images/image-fip-k3.config
@@ -0,0 +1,7 @@
+image @IMAGE@ {
+ fip {
+ nt-fw = @FIP_K3_BAREBOX@
+ soc-fw = @FIP_K3_BL31@
+ extraargs = "--blob uuid=9e8c2017-8b94-4e2b-a7b3-a0f88eabb8ae,file=@FIP_K3_DM_FW@"
+ }
+}
\ No newline at end of file
diff --git a/configs/platform-v8a/platforms/image-fip-k3.in b/configs/platform-v8a/platforms/image-fip-k3.in
new file mode 100644
index 0000000..aff8196
--- /dev/null
+++ b/configs/platform-v8a/platforms/image-fip-k3.in
@@ -0,0 +1,10 @@
+## SECTION=image
+
+config IMAGE_FIP_K3
+ tristate
+ prompt "Generate images/k3.fip"
+ select BAREBOX
+ select TF_A
+ select FIRMWARE_TI
+ help
+ Generates a fip image for Beagleplay
diff --git a/configs/platform-v8a/rules/image-fip-k3.make b/configs/platform-v8a/rules/image-fip-k3.make
new file mode 100644
index 0000000..4d133dc
--- /dev/null
+++ b/configs/platform-v8a/rules/image-fip-k3.make
@@ -0,0 +1,39 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Lars Schmidt <l.schmidt@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+IMAGE_PACKAGES-$(PTXCONF_IMAGE_FIP_K3) += image-fip-k3
+
+#
+# Paths and names
+#
+IMAGE_FIP_K3 := image-fip-k3
+IMAGE_FIP_K3_DIR := $(BUILDDIR)/$(IMAGE_FIP_K3)
+IMAGE_FIP_K3_IMAGE := $(IMAGEDIR)/k3.fip
+IMAGE_FIP_K3_CONFIG := image-fip-k3.config
+
+
+IMAGE_FIP_K3_ENV := \
+ FIP_K3_BL31=$(IMAGEDIR)/bl31.bin \
+ FIP_K3_DM_FW=$(SYSROOT)/usr/lib/firmware/ti-dm/am62xx/ti-dm.bin \
+ FIP_K3_BAREBOX=$(IMAGEDIR)/barebox-beagleplay.img
+
+# ----------------------------------------------------------------------------
+# Image
+# ----------------------------------------------------------------------------
+
+$(IMAGE_FIP_K3_IMAGE):
+ @$(call targetinfo)
+ @rm -f $(IMAGEDIR)/bl31.bin
+ @cp $(IMAGEDIR)/k3-bl31.bin $(IMAGEDIR)/bl31.bin
+ @$(call image/genimage, IMAGE_FIP_K3)
+ @$(call finish)
+
+# vim: syntax=make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 09/12] beagleplay: add full image including bootloaders and rootfs
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (7 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 08/12] beagleplay: fipimage: add fip image for K3 Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 10/12] beagleplay: add initial kernel configuration Lars Schmidt
` (2 subsequent siblings)
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
.../config/images/image-beagleplay.config | 43 +++++++++++++++++++
.../platforms/image-beagleplay.in | 11 +++++
.../platform-v8a/rules/image-beagleplay.make | 39 +++++++++++++++++
3 files changed, 93 insertions(+)
create mode 100644 configs/platform-v8a/config/images/image-beagleplay.config
create mode 100644 configs/platform-v8a/platforms/image-beagleplay.in
create mode 100644 configs/platform-v8a/rules/image-beagleplay.make
diff --git a/configs/platform-v8a/config/images/image-beagleplay.config b/configs/platform-v8a/config/images/image-beagleplay.config
new file mode 100644
index 0000000..44a8bd6
--- /dev/null
+++ b/configs/platform-v8a/config/images/image-beagleplay.config
@@ -0,0 +1,43 @@
+image @IMAGE@ {
+ hdimage {
+ partition-table-type = hybrid
+ align = 1M
+ }
+
+ partition boot {
+ image = @IMAGE@.boot.vfat
+ partition-type = 0xc
+ partition-type-uuid = F
+ bootable = true
+ }
+
+ partition root-A {
+ image = @IMAGE@.root.ext4
+ partition-type = 0x83
+ partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
+ size = 200M
+ }
+
+ partition root-B {
+ size = 200M
+ partition-type = 0x83
+ partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
+
+ }
+}
+
+image @IMAGE@.root.ext4 {
+ ext4 {}
+ size = 200M
+ mountpoint = "/"
+}
+
+image @IMAGE@.boot.vfat {
+ vfat {
+ file tiboot3.bin { image = @IMAGE_BAREBOX_R5@ }
+ file k3.fip { image = @IMAGE_FIP_K3@ }
+ }
+ name = boot-vfat
+ size = 128M
+ empty = true
+}
diff --git a/configs/platform-v8a/platforms/image-beagleplay.in b/configs/platform-v8a/platforms/image-beagleplay.in
new file mode 100644
index 0000000..6d997ba
--- /dev/null
+++ b/configs/platform-v8a/platforms/image-beagleplay.in
@@ -0,0 +1,11 @@
+## SECTION=image
+
+config IMAGE_BEAGLEPLAY
+ tristate
+ select HOST_GENIMAGE
+ select HOST_DOSFSTOOLS
+ select IMAGE_FIP_K3
+ prompt "Generate images/image-beagleplay.hdimg"
+ help
+ Complete image for BeaglePlay. Includes all barebox bootloader stages,
+ firmware images as well as root filesystem.
diff --git a/configs/platform-v8a/rules/image-beagleplay.make b/configs/platform-v8a/rules/image-beagleplay.make
new file mode 100644
index 0000000..123494a
--- /dev/null
+++ b/configs/platform-v8a/rules/image-beagleplay.make
@@ -0,0 +1,39 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Lars Schmidt <l.schmidt@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+IMAGE_PACKAGES-$(PTXCONF_IMAGE_BEAGLEPLAY) += image-beagleplay
+
+#
+# Paths and names
+#
+IMAGE_BEAGLEPLAY := image-beagleplay
+IMAGE_BEAGLEPLAY_DIR := $(BUILDDIR)/$(IMAGE_BEAGLEPLAY)
+IMAGE_BEAGLEPLAY_IMAGE := $(IMAGEDIR)/image-beagleplay.hdimg
+IMAGE_BEAGLEPLAY_FILES := $(IMAGEDIR)/root.tgz
+IMAGE_BEAGLEPLAY_CONFIG := image-beagleplay.config
+
+IMAGE_BEAGLEPLAY_ENV := \
+ IMAGE_FIP_K3=$(IMAGEDIR)/k3.fip \
+ IMAGE_BAREBOX_R5=$(IMAGEDIR)/barebox-beagleplay-r5.img \
+ IMAGE_BAREBOX=$(IMAGEDIR)/barebox-beagleplay.img
+
+
+
+# ----------------------------------------------------------------------------
+# Image
+# ----------------------------------------------------------------------------
+
+$(IMAGE_BEAGLEPLAY_IMAGE):
+ @$(call targetinfo)
+ @$(call image/genimage, IMAGE_BEAGLEPLAY)
+ @$(call finish)
+
+# vim: syntax=make
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 10/12] beagleplay: add initial kernel configuration
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (8 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 09/12] beagleplay: add full image including bootloaders and rootfs Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 11/12] beagleplay: barebox: update config for beagleplay Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 12/12] beagleplay: add initial platform config Lars Schmidt
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/kernelconfig | 132 ++++++++++++++++++++++++++----
1 file changed, 117 insertions(+), 15 deletions(-)
diff --git a/configs/platform-v8a/kernelconfig b/configs/platform-v8a/kernelconfig
index 0513e64..d6987a2 100644
--- a/configs/platform-v8a/kernelconfig
+++ b/configs/platform-v8a/kernelconfig
@@ -320,7 +320,7 @@ CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
# CONFIG_ARCH_BLAIZE is not set
# CONFIG_ARCH_EXYNOS is not set
# CONFIG_ARCH_SPARX5 is not set
-# CONFIG_ARCH_K3 is not set
+CONFIG_ARCH_K3=y
# CONFIG_ARCH_LG1K is not set
# CONFIG_ARCH_HISI is not set
# CONFIG_ARCH_KEEMBAY is not set
@@ -400,7 +400,7 @@ CONFIG_ARM64_ERRATUM_3194386=y
# CONFIG_CAVIUM_TX2_ERRATUM_219 is not set
# CONFIG_FUJITSU_ERRATUM_010001 is not set
# CONFIG_HISILICON_ERRATUM_161600802 is not set
-# CONFIG_HISILICON_ERRATUM_162100801 is not set
+CONFIG_HISILICON_ERRATUM_162100801=y
# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set
# CONFIG_QCOM_FALKOR_ERRATUM_1009 is not set
# CONFIG_QCOM_QDF2400_ERRATUM_0065 is not set
@@ -517,9 +517,9 @@ CONFIG_AS_HAS_MOPS=y
#
# ARMv8.9 architectural features
#
-# CONFIG_ARM64_POE is not set
+CONFIG_ARM64_POE=y
CONFIG_ARCH_PKEY_BITS=3
-# CONFIG_ARM64_HAFT is not set
+CONFIG_ARM64_HAFT=y
# end of ARMv8.9 architectural features
#
@@ -613,6 +613,7 @@ CONFIG_ARM_ARMADA_37XX_CPUFREQ=y
CONFIG_ARM_SCPI_CPUFREQ=y
CONFIG_ARM_IMX_CPUFREQ_DT=y
CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_ARM_TI_CPUFREQ=y
# end of CPU Frequency scaling
# end of CPU Power Management
@@ -622,11 +623,12 @@ CONFIG_CPU_MITIGATIONS=y
#
# General architecture-dependent options
#
-# CONFIG_KPROBES is not set
+CONFIG_KPROBES=y
CONFIG_JUMP_LABEL=y
# CONFIG_STATIC_KEYS_SELFTEST is not set
CONFIG_UPROBES=y
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_KRETPROBES=y
CONFIG_HAVE_IOREMAP_PROT=y
CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
@@ -730,6 +732,7 @@ CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
CONFIG_ARCH_HAS_HW_PTE_YOUNG=y
+CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG=y
CONFIG_ARCH_HAS_KERNEL_FPU_SUPPORT=y
#
@@ -897,6 +900,8 @@ CONFIG_ARCH_HAS_PTE_DEVMAP=y
CONFIG_ARCH_HAS_ZONE_DMA_SET=y
CONFIG_ZONE_DMA=y
CONFIG_ZONE_DMA32=y
+CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
+CONFIG_ARCH_HAS_PKEYS=y
CONFIG_VM_EVENT_COUNTERS=y
# CONFIG_PERCPU_STATS is not set
# CONFIG_GUP_TEST is not set
@@ -1295,6 +1300,7 @@ CONFIG_NET_9P_USBG=y
# CONFIG_LWTUNNEL is not set
CONFIG_NET_SELFTESTS=y
CONFIG_NET_SOCK_MSG=y
+CONFIG_NET_DEVLINK=y
CONFIG_PAGE_POOL=y
CONFIG_PAGE_POOL_STATS=y
CONFIG_FAILOVER=y
@@ -1357,6 +1363,7 @@ CONFIG_PCI_HOST_GENERIC=y
# Cadence-based PCIe controllers
#
# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
+# CONFIG_PCI_J721E_HOST is not set
# end of Cadence-based PCIe controllers
#
@@ -1374,6 +1381,7 @@ CONFIG_PCI_IMX6_HOST=y
# CONFIG_PCIE_DW_PLAT_HOST is not set
CONFIG_PCIE_ROCKCHIP_DW=y
CONFIG_PCIE_ROCKCHIP_DW_HOST=y
+# CONFIG_PCI_KEYSTONE_HOST is not set
# end of DesignWare-based PCIe controllers
#
@@ -1452,6 +1460,7 @@ CONFIG_GENERIC_ARCH_TOPOLOGY=y
#
# CONFIG_MOXTET is not set
# CONFIG_IMX_WEIM is not set
+CONFIG_TI_SYSC=y
# CONFIG_VEXPRESS_CONFIG is not set
# CONFIG_FSL_MC_BUS is not set
# CONFIG_MHI_BUS is not set
@@ -1492,8 +1501,8 @@ CONFIG_ARM_SCMI_TRANSPORT_SMC=y
#
# ARM SCMI NXP i.MX Vendor Protocols
#
-# CONFIG_IMX_SCMI_BBM_EXT is not set
-# CONFIG_IMX_SCMI_MISC_EXT is not set
+CONFIG_IMX_SCMI_BBM_EXT=y
+CONFIG_IMX_SCMI_MISC_EXT=y
# end of ARM SCMI NXP i.MX Vendor Protocols
CONFIG_ARM_SCMI_POWER_CONTROL=y
@@ -1502,6 +1511,7 @@ CONFIG_ARM_SCMI_POWER_CONTROL=y
CONFIG_ARM_SCPI_PROTOCOL=y
# CONFIG_FIRMWARE_MEMMAP is not set
# CONFIG_FW_CFG_SYSFS is not set
+CONFIG_TI_SCI_PROTOCOL=y
# CONFIG_TURRIS_MOX_RWTM is not set
# CONFIG_ARM_FFA_TRANSPORT is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1744,7 +1754,7 @@ CONFIG_SRAM=y
#
# EEPROM support
#
-CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT24=y
CONFIG_EEPROM_AT25=m
# CONFIG_EEPROM_MAX6875 is not set
# CONFIG_EEPROM_93CX6 is not set
@@ -2050,7 +2060,13 @@ CONFIG_DWMAC_IMX8=y
# CONFIG_NET_VENDOR_SUN is not set
# CONFIG_NET_VENDOR_SYNOPSYS is not set
# CONFIG_NET_VENDOR_TEHUTI is not set
-# CONFIG_NET_VENDOR_TI is not set
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TI_DAVINCI_MDIO=y
+# CONFIG_TI_CPSW_PHY_SEL is not set
+CONFIG_TI_K3_CPPI_DESC_POOL=y
+CONFIG_TI_K3_AM65_CPSW_NUSS=y
+# CONFIG_TI_K3_AM65_CPTS is not set
+# CONFIG_TLAN is not set
# CONFIG_NET_VENDOR_VERTEXCOM is not set
# CONFIG_NET_VENDOR_VIA is not set
# CONFIG_NET_VENDOR_WANGXUN is not set
@@ -2181,8 +2197,9 @@ CONFIG_MDIO_BUS=y
CONFIG_FWNODE_MDIO=y
CONFIG_OF_MDIO=y
CONFIG_MDIO_DEVRES=y
-# CONFIG_MDIO_BITBANG is not set
+CONFIG_MDIO_BITBANG=y
# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_GPIO is not set
# CONFIG_MDIO_HISI_FEMAC is not set
# CONFIG_MDIO_MVUSB is not set
# CONFIG_MDIO_MSCC_MIIM is not set
@@ -2245,7 +2262,42 @@ CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_MISC is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BBNSM_PWRKEY is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+CONFIG_INPUT_TPS65219_PWRBUTTON=y
+# CONFIG_INPUT_AXP20X_PEK is not set
+# CONFIG_INPUT_UINPUT is not set
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_RK805_PWRKEY is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IBM_PANEL is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+# CONFIG_INPUT_CMA3000 is not set
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
# CONFIG_RMI4_CORE is not set
#
@@ -2286,6 +2338,8 @@ CONFIG_SERIAL_8250_DWLIB=y
CONFIG_SERIAL_8250_FSL=y
CONFIG_SERIAL_8250_DW=y
# CONFIG_SERIAL_8250_RT288X is not set
+CONFIG_SERIAL_8250_OMAP=y
+CONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=y
# CONFIG_SERIAL_8250_PERICOM is not set
CONFIG_SERIAL_OF_PLATFORM=y
@@ -2420,6 +2474,7 @@ CONFIG_I2C_IMX_LPI2C=y
CONFIG_I2C_MV64XXX=y
# CONFIG_I2C_NOMADIK is not set
# CONFIG_I2C_OCORES is not set
+CONFIG_I2C_OMAP=y
# CONFIG_I2C_PCA_PLATFORM is not set
CONFIG_I2C_PXA=y
# CONFIG_I2C_PXA_SLAVE is not set
@@ -2480,6 +2535,7 @@ CONFIG_SPI_IMX=y
# CONFIG_SPI_MICROCHIP_CORE is not set
# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
# CONFIG_SPI_OC_TINY is not set
+CONFIG_SPI_OMAP24XX=y
# CONFIG_SPI_ORION is not set
# CONFIG_SPI_PCI1XXXX is not set
CONFIG_SPI_PL022=y
@@ -2554,7 +2610,7 @@ CONFIG_PINCTRL_MAX77620=y
# CONFIG_PINCTRL_RK805 is not set
CONFIG_PINCTRL_ROCKCHIP=y
# CONFIG_PINCTRL_SCMI is not set
-# CONFIG_PINCTRL_SINGLE is not set
+CONFIG_PINCTRL_SINGLE=y
# CONFIG_PINCTRL_STMFX is not set
# CONFIG_PINCTRL_SX150X is not set
CONFIG_PINCTRL_IMX=y
@@ -2593,6 +2649,7 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_74XX_MMIO is not set
# CONFIG_GPIO_ALTERA is not set
# CONFIG_GPIO_CADENCE is not set
+CONFIG_GPIO_DAVINCI=y
# CONFIG_GPIO_DWAPB is not set
# CONFIG_GPIO_FTGPIO010 is not set
# CONFIG_GPIO_GENERIC_PLATFORM is not set
@@ -2636,6 +2693,7 @@ CONFIG_GPIO_PCA953X_IRQ=y
#
CONFIG_GPIO_BD9571MWV=m
CONFIG_GPIO_MAX77620=y
+CONFIG_GPIO_TPS65219=y
# end of MFD GPIO expanders
#
@@ -2936,6 +2994,7 @@ CONFIG_THERMAL_EMULATION=y
# CONFIG_THERMAL_MMIO is not set
# CONFIG_IMX_THERMAL is not set
CONFIG_IMX8MM_THERMAL=y
+# CONFIG_K3_THERMAL is not set
# CONFIG_MAX77620_THERMAL is not set
CONFIG_QORIQ_THERMAL=y
CONFIG_ROCKCHIP_THERMAL=y
@@ -2966,6 +3025,7 @@ CONFIG_ARM_SBSA_WATCHDOG=y
CONFIG_ARMADA_37XX_WATCHDOG=y
# CONFIG_CADENCE_WATCHDOG is not set
CONFIG_DW_WATCHDOG=y
+CONFIG_K3_RTI_WATCHDOG=y
# CONFIG_MAX63XX_WATCHDOG is not set
# CONFIG_MAX77620_WATCHDOG is not set
CONFIG_IMX2_WDT=y
@@ -3072,6 +3132,7 @@ CONFIG_MFD_SEC_CORE=y
# CONFIG_MFD_SKY81452 is not set
# CONFIG_MFD_STMPE is not set
CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_TI_AM335X_TSCADC is not set
# CONFIG_MFD_LP3943 is not set
# CONFIG_MFD_LP8788 is not set
# CONFIG_MFD_TI_LMU is not set
@@ -3085,7 +3146,7 @@ CONFIG_MFD_SYSCON=y
# CONFIG_MFD_TI_LP873X is not set
# CONFIG_MFD_TI_LP87565 is not set
# CONFIG_MFD_TPS65218 is not set
-# CONFIG_MFD_TPS65219 is not set
+CONFIG_MFD_TPS65219=y
# CONFIG_MFD_TPS6586X is not set
# CONFIG_MFD_TPS65910 is not set
# CONFIG_MFD_TPS65912_I2C is not set
@@ -3208,6 +3269,7 @@ CONFIG_REGULATOR_ROHM=y
# CONFIG_REGULATOR_TPS65023 is not set
# CONFIG_REGULATOR_TPS6507X is not set
# CONFIG_REGULATOR_TPS65132 is not set
+CONFIG_REGULATOR_TPS65219=y
# CONFIG_REGULATOR_TPS6524X is not set
# CONFIG_REGULATOR_VCTRL is not set
# CONFIG_RC_CORE is not set
@@ -3444,8 +3506,10 @@ CONFIG_USB_DWC3_DUAL_ROLE=y
#
# Platform Glue Driver Support
#
+CONFIG_USB_DWC3_KEYSTONE=y
CONFIG_USB_DWC3_OF_SIMPLE=y
CONFIG_USB_DWC3_IMX8MP=y
+CONFIG_USB_DWC3_AM62=y
CONFIG_USB_DWC2=y
# CONFIG_USB_DWC2_HOST is not set
@@ -3641,6 +3705,7 @@ CONFIG_MMC_CQHCI=y
# CONFIG_MMC_TOSHIBA_PCI is not set
# CONFIG_MMC_MTK is not set
CONFIG_MMC_SDHCI_XENON=y
+CONFIG_MMC_SDHCI_AM654=y
# CONFIG_SCSI_UFSHCD is not set
# CONFIG_MEMSTICK is not set
CONFIG_NEW_LEDS=y
@@ -3853,7 +3918,9 @@ CONFIG_RTC_DRV_ARMADA38X=y
# CONFIG_RTC_DRV_MXC_V2 is not set
CONFIG_RTC_DRV_SNVS=y
# CONFIG_RTC_DRV_BBNSM is not set
+CONFIG_RTC_DRV_IMX_BBM_SCMI=y
# CONFIG_RTC_DRV_R7301 is not set
+CONFIG_RTC_DRV_TI_K3=y
#
# HID Sensor RTC drivers
@@ -3893,6 +3960,9 @@ CONFIG_PL330_DMA=y
# CONFIG_DW_DMAC_PCI is not set
# CONFIG_DW_EDMA is not set
# CONFIG_SF_PDMA is not set
+CONFIG_TI_K3_UDMA=y
+CONFIG_TI_K3_UDMA_GLUE_LAYER=y
+CONFIG_TI_K3_PSIL=y
#
# DMA Clients
@@ -3989,6 +4059,9 @@ CONFIG_CLK_IMX8MQ=y
# CONFIG_CLK_IMX8ULP is not set
CONFIG_CLK_IMX93=y
CONFIG_CLK_IMX95_BLK_CTL=y
+CONFIG_TI_SCI_CLK=y
+# CONFIG_TI_SCI_CLK_PROBE_FROM_FW is not set
+CONFIG_TI_SYSCON_CLK=y
CONFIG_ARMADA_AP_CP_HELPER=y
CONFIG_ARMADA_37XX_CLK=y
CONFIG_ARMADA_AP806_SYSCON=y
@@ -4000,7 +4073,7 @@ CONFIG_COMMON_CLK_ROCKCHIP=y
# CONFIG_CLK_RK3368 is not set
# CONFIG_CLK_RK3399 is not set
CONFIG_CLK_RK3568=y
-# CONFIG_CLK_RK3576 is not set
+CONFIG_CLK_RK3576=y
CONFIG_CLK_RK3588=y
# CONFIG_XILINX_VCU is not set
# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
@@ -4012,6 +4085,7 @@ CONFIG_CLK_RK3588=y
CONFIG_TIMER_OF=y
CONFIG_TIMER_PROBE=y
CONFIG_CLKSRC_MMIO=y
+CONFIG_OMAP_DM_TIMER=y
CONFIG_ROCKCHIP_TIMER=y
CONFIG_ARM_ARCH_TIMER=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
@@ -4031,8 +4105,10 @@ CONFIG_IMX_MBOX=y
# CONFIG_PLATFORM_MHU is not set
# CONFIG_PL320_MBOX is not set
CONFIG_ARMADA_37XX_RWTM_MBOX=y
+CONFIG_OMAP2PLUS_MBOX=y
# CONFIG_ROCKCHIP_MBOX is not set
# CONFIG_ALTERA_MBOX is not set
+CONFIG_TI_MESSAGE_MANAGER=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_IOMMU_IOVA=y
CONFIG_IOMMU_API=y
@@ -4067,6 +4143,9 @@ CONFIG_REMOTEPROC=y
CONFIG_REMOTEPROC_CDEV=y
CONFIG_IMX_REMOTEPROC=y
# CONFIG_IMX_DSP_REMOTEPROC is not set
+CONFIG_TI_K3_DSP_REMOTEPROC=y
+# CONFIG_TI_K3_M4_REMOTEPROC is not set
+CONFIG_TI_K3_R5_REMOTEPROC=y
# end of Remoteproc drivers
#
@@ -4124,7 +4203,11 @@ CONFIG_SOC_IMX8M=y
CONFIG_ROCKCHIP_GRF=y
CONFIG_ROCKCHIP_IODOMAIN=y
-# CONFIG_SOC_TI is not set
+CONFIG_SOC_TI=y
+CONFIG_TI_K3_RINGACC=y
+CONFIG_TI_K3_SOCINFO=y
+# CONFIG_TI_PRUSS is not set
+CONFIG_TI_SCI_INTA_MSI_DOMAIN=y
#
# Xilinx SoC drivers
@@ -4163,6 +4246,7 @@ CONFIG_IMX8M_BLK_CTRL=y
# end of Qualcomm PM Domains
CONFIG_ROCKCHIP_PM_DOMAINS=y
+CONFIG_TI_SCI_PM_DOMAINS=y
# end of PM Domains
CONFIG_PM_DEVFREQ=y
@@ -4200,6 +4284,7 @@ CONFIG_EXTCON_USB_GPIO=y
# CONFIG_EXTCON_USBC_TUSB320 is not set
CONFIG_MEMORY=y
# CONFIG_ARM_PL172_MPMC is not set
+# CONFIG_OMAP_GPMC is not set
# CONFIG_IIO is not set
# CONFIG_NTB is not set
CONFIG_PWM=y
@@ -4212,8 +4297,11 @@ CONFIG_PWM=y
# CONFIG_PWM_IMX1 is not set
# CONFIG_PWM_IMX27 is not set
# CONFIG_PWM_IMX_TPM is not set
+# CONFIG_PWM_OMAP_DMTIMER is not set
# CONFIG_PWM_PCA9685 is not set
CONFIG_PWM_ROCKCHIP=m
+# CONFIG_PWM_TIECAP is not set
+# CONFIG_PWM_TIEHRPWM is not set
# CONFIG_PWM_XILINX is not set
#
@@ -4238,6 +4326,8 @@ CONFIG_PARTITION_PERCPU=y
CONFIG_IMX_IRQSTEER=y
CONFIG_IMX_INTMUX=y
# CONFIG_IMX_MU_MSI is not set
+CONFIG_TI_SCI_INTR_IRQCHIP=y
+CONFIG_TI_SCI_INTA_IRQCHIP=y
# end of IRQ chip support
# CONFIG_IPACK_BUS is not set
@@ -4248,6 +4338,7 @@ CONFIG_RESET_IMX7=y
CONFIG_RESET_IMX8MP_AUDIOMIX=y
CONFIG_RESET_SCMI=y
# CONFIG_RESET_SIMPLE is not set
+CONFIG_RESET_TI_SCI=y
# CONFIG_RESET_TI_SYSCON is not set
# CONFIG_RESET_TI_TPS380X is not set
@@ -4302,7 +4393,11 @@ CONFIG_PHY_ROCKCHIP_SNPS_PCIE3=y
# CONFIG_PHY_ROCKCHIP_USB is not set
# CONFIG_PHY_ROCKCHIP_USBDP is not set
# CONFIG_PHY_SAMSUNG_USB2 is not set
+# CONFIG_PHY_AM654_SERDES is not set
+# CONFIG_PHY_J721E_WIZ is not set
+# CONFIG_OMAP_USB2 is not set
# CONFIG_PHY_TUSB1210 is not set
+CONFIG_PHY_TI_GMII_SEL=y
# end of PHY Subsystem
# CONFIG_POWERCAP is not set
@@ -4935,6 +5030,7 @@ CONFIG_CRYPTO_DEV_SAFEXCEL=y
# CONFIG_CRYPTO_DEV_CCREE is not set
# CONFIG_CRYPTO_DEV_HISI_SEC is not set
# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+# CONFIG_CRYPTO_DEV_SA2UL is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
CONFIG_X509_CERTIFICATE_PARSER=y
@@ -5085,6 +5181,7 @@ CONFIG_HAVE_GENERIC_VDSO=y
CONFIG_GENERIC_GETTIMEOFDAY=y
CONFIG_GENERIC_VDSO_TIME_NS=y
CONFIG_VDSO_GETRANDOM=y
+CONFIG_SG_SPLIT=y
CONFIG_SG_POOL=y
CONFIG_ARCH_STACKWALK=y
CONFIG_STACKDEPOT=y
@@ -5305,6 +5402,7 @@ CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
# CONFIG_LATENCYTOP is not set
+# CONFIG_DEBUG_CGROUP_REF is not set
CONFIG_USER_STACKTRACE_SUPPORT=y
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
@@ -5349,6 +5447,8 @@ CONFIG_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_BRANCH_PROFILE_NONE=y
# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
# CONFIG_BLK_DEV_IO_TRACE is not set
+CONFIG_KPROBE_EVENTS=y
+# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set
CONFIG_UPROBE_EVENTS=y
CONFIG_BPF_EVENTS=y
CONFIG_DYNAMIC_EVENTS=y
@@ -5368,6 +5468,7 @@ CONFIG_FTRACE_MCOUNT_USE_PATCHABLE_FUNCTION_ENTRY=y
# CONFIG_RING_BUFFER_STARTUP_TEST is not set
# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
+# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_RV is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
@@ -5388,6 +5489,7 @@ CONFIG_STRICT_DEVMEM=y
#
# CONFIG_KUNIT is not set
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FUNCTION_ERROR_INJECTION is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 11/12] beagleplay: barebox: update config for beagleplay
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (9 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 10/12] beagleplay: add initial kernel configuration Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 12/12] beagleplay: add initial platform config Lars Schmidt
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
Configure barebox for the second stage of the boot process
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/barebox.config | 47 ++++++++++++++++++++++++-----
1 file changed, 39 insertions(+), 8 deletions(-)
diff --git a/configs/platform-v8a/barebox.config b/configs/platform-v8a/barebox.config
index eccf3e9..1843a0e 100644
--- a/configs/platform-v8a/barebox.config
+++ b/configs/platform-v8a/barebox.config
@@ -16,7 +16,7 @@ CONFIG_ARCH_MULTIARCH=y
# CONFIG_ARCH_ARM64_VIRT is not set
# CONFIG_ARCH_BCM283X is not set
CONFIG_ARCH_IMX=y
-# CONFIG_ARCH_K3 is not set
+CONFIG_ARCH_K3=y
# CONFIG_ARCH_SUNXI is not set
# CONFIG_ARCH_LAYERSCAPE is not set
CONFIG_ARCH_ROCKCHIP=y
@@ -88,6 +88,16 @@ CONFIG_AHAB=y
# CONFIG_HAB_CERTS_ENV is not set
# end of i.MX specific settings
+#
+# K3 boards
+#
+CONFIG_MACH_K3_CORTEX_A=y
+CONFIG_MACH_AM625_SK=y
+CONFIG_MACH_BEAGLEPLAY=y
+# CONFIG_ARCH_K3_AUTHENTICATE_IMAGE is not set
+# CONFIG_ARCH_K3_COMMAND_AUTHENTICATE is not set
+# end of K3 boards
+
#
# Rockchip Features
#
@@ -132,7 +142,7 @@ CONFIG_ARM_SMCCC=y
CONFIG_ARM_PSCI_OF=y
CONFIG_ARM_PSCI_CLIENT=y
# CONFIG_ARM_BOOTM_ELF is not set
-# CONFIG_ARM_BOOTM_FIP is not set
+CONFIG_ARM_BOOTM_FIP=y
CONFIG_ARM_ATF=y
# end of ARM specific settings
@@ -319,6 +329,7 @@ CONFIG_COMPILE_LOGLEVEL=6
CONFIG_DEFAULT_LOGLEVEL=7
# CONFIG_DEBUG_LL is not set
CONFIG_DEBUG_IMX_UART_PORT=1
+CONFIG_DEBUG_K3_UART_PORT=0
CONFIG_DEBUG_ROCKCHIP_UART_PORT=2
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
@@ -619,6 +630,8 @@ CONFIG_PHYLIB=y
# Network drivers
#
# CONFIG_DRIVER_NET_BCMGENET is not set
+CONFIG_DRIVER_NET_TI_DAVINCI_MDIO=y
+CONFIG_DRIVER_NET_TI_K3_AM65_CPSW_NUSS=y
# CONFIG_DRIVER_NET_DESIGNWARE_GENERIC is not set
CONFIG_DRIVER_NET_DESIGNWARE_EQOS=y
CONFIG_DRIVER_NET_DESIGNWARE_IMX8=y
@@ -695,6 +708,7 @@ CONFIG_I2C_IMX=y
CONFIG_I2C_IMX_LPI2C=y
# CONFIG_I2C_DESIGNWARE is not set
# CONFIG_I2C_MV64XXX is not set
+CONFIG_I2C_OMAP=y
CONFIG_I2C_RK3X=y
# end of I2C Hardware Bus support
@@ -765,6 +779,7 @@ CONFIG_USB_DWC3=y
# CONFIG_USB_DWC3_GADGET is not set
CONFIG_USB_DWC3_DUAL_ROLE=y
CONFIG_USB_DWC3_OF_SIMPLE=y
+CONFIG_USB_DWC3_AM62=y
CONFIG_USB_EHCI=y
CONFIG_USB_XHCI=y
# CONFIG_USB_ULPI is not set
@@ -806,7 +821,7 @@ CONFIG_MCI_WRITE=y
CONFIG_MCI_ERASE=y
CONFIG_MCI_MMC_BOOT_PARTITIONS=y
# CONFIG_MCI_MMC_GPP_PARTITIONS is not set
-# CONFIG_MCI_MMC_RPMB is not set
+CONFIG_MCI_MMC_RPMB=y
#
# --- MCI host drivers ---
@@ -820,13 +835,14 @@ CONFIG_MCI_IMX_ESDHC=y
# CONFIG_MCI_IMX_ESDHC_PIO is not set
# CONFIG_MCI_MMCI is not set
CONFIG_MCI_ARASAN=y
-# CONFIG_MCI_AM654 is not set
+CONFIG_MCI_AM654=y
# CONFIG_MCI_SPI is not set
CONFIG_MCI_IMX_ESDHC_PBL=y
CONFIG_HAVE_CLK=y
CONFIG_CLKDEV_LOOKUP=y
CONFIG_COMMON_CLK=y
CONFIG_COMMON_CLK_OF_PROVIDER=y
+CONFIG_TI_SCI_CLK=y
CONFIG_COMMON_CLK_GPIO=y
#
@@ -849,7 +865,7 @@ CONFIG_CLOCKSOURCE_ARM_ARCHITECTED_TIMER=y
# CONFIG_MFD_MC9SDZ60 is not set
# CONFIG_MFD_STMPE is not set
CONFIG_MFD_SYSCON=y
-# CONFIG_MFD_TPS65219 is not set
+CONFIG_MFD_TPS65219=y
# CONFIG_MFD_TWL4030 is not set
# CONFIG_MFD_TWL6030 is not set
# CONFIG_RAVE_SP_CORE is not set
@@ -907,13 +923,19 @@ CONFIG_WATCHDOG_IMX=y
# CONFIG_WATCHDOG_IMXULP is not set
# CONFIG_GPIO_WATCHDOG is not set
# CONFIG_CADENCE_WATCHDOG is not set
+CONFIG_K3_RTI_WDT=y
# CONFIG_PWM is not set
# CONFIG_HWRNG is not set
#
# DMA support
#
-# CONFIG_DMADEVICES is not set
+CONFIG_DMADEVICES=y
+
+#
+# DMA Devices
+#
+CONFIG_TI_K3_UDMA=y
# end of DMA support
CONFIG_GPIOLIB=y
@@ -924,6 +946,7 @@ CONFIG_GPIOLIB=y
CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_74164 is not set
# CONFIG_GPIO_74XX_MMIO is not set
+CONFIG_GPIO_DAVINCI=y
# CONFIG_GPIO_GENERIC_PLATFORM is not set
CONFIG_GPIO_IMX=y
CONFIG_GPIO_VF610=y
@@ -945,7 +968,7 @@ CONFIG_GPIO_ROCKCHIP=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_IMX_IOMUX_V3=y
CONFIG_PINCTRL_ROCKCHIP=y
-# CONFIG_PINCTRL_SINGLE is not set
+CONFIG_PINCTRL_SINGLE=y
# end of Pin controllers
CONFIG_NVMEM=y
@@ -967,6 +990,7 @@ CONFIG_REGULATOR=y
CONFIG_REGULATOR_FIXED=y
# CONFIG_REGULATOR_FAN53555 is not set
# CONFIG_REGULATOR_PFUZE is not set
+CONFIG_REGULATOR_TPS65219=y
# CONFIG_REGULATOR_ANATOP is not set
CONFIG_REGULATOR_RK808=y
@@ -1007,6 +1031,7 @@ CONFIG_RTC_DRV_DS1307=y
#
# CONFIG_FIRMWARE_ALTERA_SERIAL is not set
# CONFIG_QEMU_FW_CFG is not set
+CONFIG_TI_SCI_PROTOCOL=y
#
# ARM System Control and Management Interface Protocol
@@ -1060,6 +1085,8 @@ CONFIG_IMX8M_FEATCTRL=y
#
# CONFIG_ROCKCHIP_IODOMAIN is not set
# end of Rockchip SoC drivers
+
+CONFIG_TI_K3_RINGACC=y
# end of SoC drivers
#
@@ -1072,6 +1099,8 @@ CONFIG_IMX8M_FEATCTRL=y
CONFIG_IMX_GPCV2_PM_DOMAINS=y
CONFIG_IMX8M_BLK_CTRL=y
# end of i.MX PM Domains
+
+CONFIG_TI_SCI_PM_DOMAINS=y
# end of PM Domains
#
@@ -1095,7 +1124,8 @@ CONFIG_SYSCON_REBOOT_MODE=y
# CONFIG_POWER_RESET_GPIO is not set
# CONFIG_POWER_RESET_GPIO_RESTART is not set
# CONFIG_VIRTIO_MENU is not set
-# CONFIG_MAILBOX is not set
+CONFIG_MAILBOX=y
+CONFIG_TI_MESSAGE_MANAGER=y
# CONFIG_TEE is not set
# end of Drivers
@@ -1175,6 +1205,7 @@ CONFIG_LZO_DECOMPRESS=y
CONFIG_FNMATCH=y
CONFIG_QSORT=y
CONFIG_IMAGE_SPARSE=y
+CONFIG_FIP=y
CONFIG_LIBFDT=y
# CONFIG_RATP is not set
# CONFIG_ALLOW_PRNG_FALLBACK is not set
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* [DistroKit] [PATCH 12/12] beagleplay: add initial platform config
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
` (10 preceding siblings ...)
2025-05-23 8:10 ` [DistroKit] [PATCH 11/12] beagleplay: barebox: update config for beagleplay Lars Schmidt
@ 2025-05-23 8:10 ` Lars Schmidt
11 siblings, 0 replies; 14+ messages in thread
From: Lars Schmidt @ 2025-05-23 8:10 UTC (permalink / raw)
To: distrokit; +Cc: Lars Schmidt
The first stages of BeaglePlay's boot process use a 32bit
Cortex-R5 processor, whilst later stages use a 64bit Cortex-A53.
For this reason, barebox needs two stages to boot.
So we add barebox_r5 which needs selected_toolchain_r5 with
a 32bit toolchain for compilation.
TF-A does also need K3 as target platform and the extra arg
TARGET_BOARD=lite for compilation.
Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
---
configs/platform-v8a/platformconfig | 70 ++++++++++++++++-------------
1 file changed, 39 insertions(+), 31 deletions(-)
diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
index 83b17dc..25ef37f 100644
--- a/configs/platform-v8a/platformconfig
+++ b/configs/platform-v8a/platformconfig
@@ -9,7 +9,7 @@ PTXCONF__platformconfig_MAGIC__=y
#
#
-# Target Platform Configuration
+# Target Platform Configuration
#
#
@@ -25,7 +25,7 @@ PTXCONF_VIRTUAL_AUTOGEN_TOOLS=y
PTXCONF_PLATFORMCONFIG_VERSION="2025.05.0"
#
-# architecture
+# architecture
#
# PTXCONF_ARCH_ALPHA is not set
# PTXCONF_ARCH_AVR32 is not set
@@ -57,15 +57,15 @@ PTXCONF_SIZEOF_LONG_DOUBLE="16"
PTXCONF_ARCH_STRING="arm64"
#
-# paths & directories
+# paths & directories
#
PTXCONF_SYSROOT_TARGET="${PTXDIST_PLATFORMDIR}/sysroot-target"
PTXCONF_SYSROOT_HOST="${PTXDIST_PLATFORMDIR}/sysroot-host"
PTXCONF_SYSROOT_CROSS="${PTXDIST_PLATFORMDIR}/sysroot-cross"
-# end of paths & directories
+# end of paths & directories
#
-# toolchain
+# toolchain
#
PTXCONF_CROSSCHAIN_VENDOR="OSELAS.Toolchain-2024.11.1"
PTXCONF_CROSSCHAIN_CHECK="14.2.1"
@@ -77,10 +77,10 @@ PTXCONF_COMPILER_PREFIX="${PTXCONF_GNU_TARGET}-"
PTXCONF_COMPILER_PREFIX_KERNEL="${PTXCONF_COMPILER_PREFIX}"
PTXCONF_COMPILER_PREFIX_BOOTLOADER="${PTXCONF_COMPILER_PREFIX}"
PTXCONF_RUST_TARGET="${PTXCONF_GNU_TARGET}"
-# end of toolchain
+# end of toolchain
#
-# hardening options
+# hardening options
#
# PTXCONF_TARGET_HARDEN_STACK_NONE is not set
PTXCONF_TARGET_HARDEN_STACK=y
@@ -92,10 +92,10 @@ PTXCONF_TARGET_HARDEN_RELRO=y
PTXCONF_TARGET_HARDEN_BINDNOW=y
PTXCONF_TARGET_HARDEN_PIE=y
PTXCONF_TARGET_HARDEN_GLIBCXX_ASSERTIONS=y
-# end of hardening options
+# end of hardening options
#
-# extra toolchain options
+# extra toolchain options
#
# PTXCONF_TARGET_LINKER_HASH_DEFAULT is not set
# PTXCONF_TARGET_LINKER_HASH_SYSV is not set
@@ -114,8 +114,8 @@ PTXCONF_TARGET_EXTRA_CPPFLAGS=""
PTXCONF_TARGET_EXTRA_CFLAGS=""
PTXCONF_TARGET_EXTRA_CXXFLAGS=""
PTXCONF_TARGET_EXTRA_LDFLAGS=""
-# end of extra toolchain options
-# end of architecture
+# end of extra toolchain options
+# end of architecture
PTXCONF_KERNEL=y
PTXCONF_KERNEL_XPKG=y
@@ -137,7 +137,7 @@ PTXCONF_KERNEL_IMAGE_RAW=y
PTXCONF_KERNEL_IMAGE="Image"
PTXCONF_KERNEL_DTB=y
PTXCONF_KERNEL_DTS_PATH="${PTXDIST_PLATFORMCONFIG_SUBDIR}/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts"
-PTXCONF_KERNEL_DTS="armada-3720-community.dts freescale/imx8mm-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mp-evk.dts freescale/imx8mq-evk.dts rockchip/rk3568-rock-3a.dts freescale/imx8mp-tqma8mpql-mba8mpxl.dts freescale/imx93-tqma9352-mba93xxca.dts"
+PTXCONF_KERNEL_DTS="armada-3720-community.dts freescale/imx8mm-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mp-evk.dts freescale/imx8mq-evk.dts rockchip/rk3568-rock-3a.dts freescale/imx8mp-tqma8mpql-mba8mpxl.dts freescale/imx93-tqma9352-mba93xxca.dts ti/k3-am625-beagleplay.dts"
# PTXCONF_KERNEL_DTBO is not set
# PTXCONF_KERNEL_CODE_SIGNING is not set
# PTXCONF_KERNEL_ZSTD is not set
@@ -150,11 +150,11 @@ PTXCONF_KERNEL_OPENSSL=y
PTXCONF_KERNEL_CONFIG_BASE_VERSION=y
#
-# patching & configuration
+# patching & configuration
#
PTXCONF_KERNEL_SERIES="series"
PTXCONF_KERNEL_CONFIG="kernelconfig"
-# end of patching & configuration
+# end of patching & configuration
#
# Development features
@@ -162,20 +162,22 @@ PTXCONF_KERNEL_CONFIG="kernelconfig"
PTXCONF_KERNEL_EXTRA_MAKEVARS=""
#
-# console options
+# console options
#
PTXCONF_CONSOLE_NAME="ttyMV0"
PTXCONF_CONSOLE_SPEED="115200"
-# end of console options
+# end of console options
#
-# extra kernel
+# extra kernel
#
#
-# bootloaders
+# bootloaders
#
# PTXCONF_AT91BOOTSTRAP2 is not set
+PTXCONF_BAREBOX_R5=y
+PTXCONF_COMPILERPREFIX_R5="arm-v7a-linux-gnueabihf-"
PTXCONF_BAREBOX_ARCH_STRING="arm"
PTXCONF_BAREBOX_DEPENDENCIES=y
PTXCONF_BAREBOX=y
@@ -213,9 +215,9 @@ PTXCONF_TF_A_MD5="dea016f3707117c7935a8a26433a1e46 5b90a1c21210702e64234a2beb79f
PTXCONF_TF_A_ARCH_STRING="aarch64"
PTXCONF_TF_A_ARM_ARCH_MAJOR_8=y
PTXCONF_TF_A_ARM_ARCH_MAJOR=8
-PTXCONF_TF_A_PLATFORMS="imx8mq imx8mm imx8mn imx8mp imx93"
+PTXCONF_TF_A_PLATFORMS="imx8mq imx8mm imx8mn imx8mp imx93 k3"
PTXCONF_TF_A_ARM_ARCH_MINOR=0
-PTXCONF_TF_A_EXTRA_ARGS="IMX_BOOT_UART_BASE=auto"
+PTXCONF_TF_A_EXTRA_ARGS="IMX_BOOT_UART_BASE=auto TARGET_BOARD=lite"
PTXCONF_TF_A_ARTIFACTS="bl31.bin"
#
@@ -224,23 +226,25 @@ PTXCONF_TF_A_ARTIFACTS="bl31.bin"
PTXCONF_TF_A_BL32_NONE=y
# PTXCONF_TF_A_BL32_TSP is not set
# PTXCONF_U_BOOT is not set
-# end of bootloaders
+# end of bootloaders
#
-# bootloader spec entries
+# bootloader spec entries
#
PTXCONF_BLSPEC_ENTRY=y
PTXCONF_BLSPEC_ENTRY_DEVICETREE=y
PTXCONF_BLSPEC_ENTRY_CMDLINE="rootwait"
PTXCONF_BLSPEC_ENTRY_APPENDROOT=y
-# end of bootloader spec entries
+# end of bootloader spec entries
#
-# image creation options
+# image creation options
#
+PTXCONF_IMAGE_BEAGLEPLAY=y
# PTXCONF_IMAGE_BOOT_MLO is not set
# PTXCONF_IMAGE_BOOT_VFAT is not set
PTXCONF_IMAGE_ESPRESSOBIN=y
+PTXCONF_IMAGE_FIP_K3=y
# PTXCONF_IMAGE_HD_VDI is not set
# PTXCONF_IMAGE_HDIMG is not set
PTXCONF_IMAGE_IMX8MM_EVK=y
@@ -250,7 +254,7 @@ PTXCONF_IMAGE_IMX8MQ_EVK=y
PTXCONF_IMAGE_KERNEL=y
#
-# Generate images/linuximage
+# Generate images/linuximage
#
#
@@ -258,7 +262,7 @@ PTXCONF_IMAGE_KERNEL=y
#
PTXCONF_IMAGE_KERNEL_INSTALL_EARLY=y
# PTXCONF_IMAGE_KERNEL_LZOP is not set
-# end of Generate images/linuximage
+# end of Generate images/linuximage
PTXCONF_IMAGE_RAUC=y
PTXCONF_IMAGE_RAUC_BUNDLE_VERSION="${PTXDIST_BSP_AUTOVERSION}"
@@ -294,22 +298,23 @@ PTXCONF_IMAGE_TQ_MBA8MPXL=y
PTXCONF_IMAGE_TQ_MBA93XXCA=y
#
-# ipkg options
+# ipkg options
#
# PTXCONF_IMAGE_IPKG_PUSH_TO_REPOSITORY is not set
# PTXCONF_IMAGE_INSTALL_FROM_IPKG_REPOSITORY is not set
# PTXCONF_IMAGE_IPKG_INDEX is not set
PTXCONF_IMAGE_XPKG_EXTRA_ARGS=""
-# end of ipkg options
+# end of ipkg options
# PTXCONF_KERNEL_FIT is not set
-# end of image creation options
+# end of image creation options
PTXCONF_CODE_SIGNING=y
PTXCONF_CODE_SIGNING_PROVIDER="devel"
PTXCONF_CODE_SIGNING_PROVIDER_DEVEL=y
PTXCONF_HOST_PTX_CODE_SIGNING_DEV=y
PTXCONF_HOST_CMAKE=y
+PTXCONF_HOST_DOSFSTOOLS=y
PTXCONF_HOST_DTC=y
PTXCONF_HOST_E2FSPROGS=y
PTXCONF_HOST_EXTRACT_CERT=y
@@ -348,12 +353,14 @@ PTXCONF_HOST_SYSTEM_PYTHON3_SETUPTOOLS=y
PTXCONF_HOST_SYSTEM_PYTHON3_TOMLI=y
PTXCONF_HOST_SYSTEM_PYTHON3_WHEEL=y
PTXCONF_HOST_SYSTEM_PYTHON3=y
+PTXCONF_HOST_SYSTEM_PYTHON3_SYSTEM_PACKAGES=y
+PTXCONF_HOST_SYSTEM_PYTHON3_PYYAML=y
PTXCONF_HOST_UTIL_LINUX=y
PTXCONF_HOST_ZLIB=y
PTXCONF_HOST_ZSTD=y
#
-# non-free firmware blobs
+# non-free firmware blobs
#
PTXCONF_FIRMWARE_IMX=y
# PTXCONF_FIRMWARE_IMX_VPU_IMX27 is not set
@@ -369,4 +376,5 @@ 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
+PTXCONF_FIRMWARE_TI=y
+# end of non-free firmware blobs
--
2.39.5
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox
2025-05-23 8:10 ` [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox Lars Schmidt
@ 2025-05-23 8:49 ` Alexander Dahl
0 siblings, 0 replies; 14+ messages in thread
From: Alexander Dahl @ 2025-05-23 8:49 UTC (permalink / raw)
To: Lars Schmidt; +Cc: distrokit
Hello Lars,
Am Fri, May 23, 2025 at 10:10:42AM +0200 schrieb Lars Schmidt:
> Technically the firmware parts are coming out of tf-a.
> This moves the handling of the extra files for barebox all to
> the same place and makes maintenance easier.
I also think this does not belong to the firmware-imx package, but to
a separate package. I sent patches for this last year as part of a
different series, but those were dropped without further explanation.
See <20240425080303.171897-1-ada@thorsis.com> ff. for reference.
(I did not resend the not-merged parts of that series however, maybe I
should have done that.)
FWIW, I think this should go into an extension of the barebox package,
because it is barebox who wants to use those files, not the task of
the tf-a package to distribute it to all packages requiring this.
We have a bsp layer on top of DistroKit building U-Boot which also
needs artifacts built by the tf-a package. Extend tf-a for U-Boot
too? I'd say no, but instead create a package extension for U-Boot so
both barebox and U-Boot can inject files from tf-a.
Maybe I should just resend those remaining patches for better
understanding what I mean.
Greets
Alex
>
> Signed-off-by: Lars Schmidt <l.schmidt@pengutronix.de>
> ---
> configs/platform-v8a/rules/firmware-imx.make | 7 -------
> configs/platform-v8a/rules/tf-a.barebox.make | 15 +++++++++++++++
> 2 files changed, 15 insertions(+), 7 deletions(-)
>
> diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
> index 6b01af3..8a59b9f 100644
> --- a/configs/platform-v8a/rules/firmware-imx.make
> +++ b/configs/platform-v8a/rules/firmware-imx.make
> @@ -29,12 +29,6 @@ FIRMWARE_IMX_LICENSE_FILES := \
> #
> # 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
> -BAREBOX_INJECT_FILES += imx93-bl31.bin:firmware/imx93-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
> @@ -45,7 +39,6 @@ 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
> diff --git a/configs/platform-v8a/rules/tf-a.barebox.make b/configs/platform-v8a/rules/tf-a.barebox.make
> index 4c61af2..6e22cba 100644
> --- a/configs/platform-v8a/rules/tf-a.barebox.make
> +++ b/configs/platform-v8a/rules/tf-a.barebox.make
> @@ -2,4 +2,19 @@ ifdef PTXCONF_TF_A
> ifneq ($(filter k3,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> BAREBOX_INJECT_FILES += k3-bl31.bin:firmware/k3-bl31.bin
> endif
> +ifneq ($(filter imx8mq,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> +BAREBOX_INJECT_FILES += imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
> +endif
> +ifneq ($(filter imx8mm,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> +BAREBOX_INJECT_FILES += imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
> +endif
> +ifneq ($(filter imx8mn,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> +BAREBOX_INJECT_FILES += imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
> +endif
> +ifneq ($(filter imx8mp,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> +BAREBOX_INJECT_FILES += imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
> +endif
> +ifneq ($(filter imx93,$(call remove_quotes, $(PTXCONF_TF_A_PLATFORMS))),)
> +BAREBOX_INJECT_FILES += imx93-bl31.bin:firmware/imx93-bl31.bin
> +endif
> endif
> \ No newline at end of file
> --
> 2.39.5
>
>
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2025-05-23 8:49 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-23 8:10 [DistroKit] [PATCH 00/12] Add beagleplay support to DistroKit Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 01/12] v8a: barebox: bump version v2025.03.0 -> v2025.05.0 Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 02/12] beagleplay: tf-a: needs adaption for k3 boards Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 03/12] tf-a: k3 needs an additional compile argument Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 04/12] beagleplay: k3: barebox needs part of tf-a firmware Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 05/12] tf-a: unify handling of firmware parts for barebox Lars Schmidt
2025-05-23 8:49 ` Alexander Dahl
2025-05-23 8:10 ` [DistroKit] [PATCH 06/12] beagleplay: firmware-ti: initial package Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 07/12] beagleplay: barebox: first stage bootloader for Cortex-R5 Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 08/12] beagleplay: fipimage: add fip image for K3 Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 09/12] beagleplay: add full image including bootloaders and rootfs Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 10/12] beagleplay: add initial kernel configuration Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 11/12] beagleplay: barebox: update config for beagleplay Lars Schmidt
2025-05-23 8:10 ` [DistroKit] [PATCH 12/12] beagleplay: add initial platform config Lars Schmidt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox