From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 23 May 2025 10:10:59 +0200 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uINUZ-001pPV-0W for lore@lore.pengutronix.de; Fri, 23 May 2025 10:10:59 +0200 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1uINUY-0001ZN-AR; Fri, 23 May 2025 10:10:58 +0200 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1uINUW-0001UR-NK; Fri, 23 May 2025 10:10:56 +0200 Received: from dude06.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::5c]) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uINUW-000rzb-1K; Fri, 23 May 2025 10:10:56 +0200 Received: from lsc by dude06.red.stw.pengutronix.de with local (Exim 4.96) (envelope-from ) id 1uINUW-007Aze-17; Fri, 23 May 2025 10:10:56 +0200 From: Lars Schmidt To: distrokit@pengutronix.de Date: Fri, 23 May 2025 10:10:39 +0200 Message-Id: <20250523081049.1693633-3-l.schmidt@pengutronix.de> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250523081049.1693633-1-l.schmidt@pengutronix.de> References: <20250523081049.1693633-1-l.schmidt@pengutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [DistroKit] [PATCH 02/12] beagleplay: tf-a: needs adaption for k3 boards X-BeenThere: distrokit@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: DistroKit Mailinglist List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Lars Schmidt Sender: "DistroKit" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: distrokit-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false 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 --- 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 +# 2019 by Ahmad Fatoum +# +# 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