diff options
author | Ahmad Fatoum <a.fatoum@pengutronix.de> | 2022-07-25 14:04:43 +0200 |
---|---|---|
committer | Robert Schwebel <r.schwebel@pengutronix.de> | 2022-09-05 16:27:24 +0200 |
commit | 558d6d61f9249df33580215f1c004f93036fdc25 (patch) | |
tree | ab648a930b0efa7655945c3f9dad3849c9054e40 | |
parent | 338c6d7e4486e8162cfdb74d8427fed3924871da (diff) | |
download | DistroKit-558d6d61f9249df33580215f1c004f93036fdc25.tar.gz DistroKit-558d6d61f9249df33580215f1c004f93036fdc25.tar.xz |
v7a: tf-a: switch to FIP image
We have everything in place now to switch from stm32image to FIP.
This gives us upstream support for factory bootstrap via DFU and
avoids the breakage on v2.8, which will be the first release removing
support of the deprecated stm32image format.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Link: https://lore.pengutronix.de/20220725120445.1295669-6-a.fatoum@pengutronix.de
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
9 files changed, 24 insertions, 17 deletions
diff --git a/configs/platform-v7a/config/images/stm32mp.config b/configs/platform-v7a/config/images/stm32mp.config index eb6065c..52d0d0e 100644 --- a/configs/platform-v7a/config/images/stm32mp.config +++ b/configs/platform-v7a/config/images/stm32mp.config @@ -5,15 +5,15 @@ image @IMAGE@ { gpt-no-backup = true } partition fsbl1 { - image = "stm32mp1-tf-a-@STM32MP_BOARD_FSBL@.stm32" + image = "stm32mp1-tf-a-@STM32MP_BOARD@.stm32" size = 256K } partition fsbl2 { - image = "stm32mp1-tf-a-@STM32MP_BOARD_FSBL@.stm32" + image = "stm32mp1-tf-a-@STM32MP_BOARD@.stm32" size = 256K } - partition ssbl { - image = "barebox-@STM32MP_BOARD_SSBL@.img" + partition fip { + image = "@STM32MP_BOARD@.fip" size = 1M } partition barebox-environment { @@ -26,4 +26,15 @@ image @IMAGE@ { size = 100M } } + +image @STM32MP_BOARD@.fip { + fip { + fw-config = "stm32mp1-@STM32MP_BOARD@-fw-config.dtb" + hw-config = "barebox-@STM32MP_BOARD@.dtb" + nt-fw = "barebox-stm32mp-generic-bl33.img" + tos-fw = { "stm32mp1-bl32.bin" } + tos-fw-config = "stm32mp1-@STM32MP_BOARD@-bl32.dtb" + } + size = 1M +} /* vim: set tabstop=8 noexpandtab : */ diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig index 1444356..5b5c8bc 100644 --- a/configs/platform-v7a/platformconfig +++ b/configs/platform-v7a/platformconfig @@ -204,7 +204,7 @@ PTXCONF_TF_A_ARM_ARCH_MAJOR_7=y # PTXCONF_TF_A_ARM_ARCH_MAJOR_8_32_BIT is not set PTXCONF_TF_A_ARM_ARCH_MAJOR=7 PTXCONF_TF_A_PLATFORMS="stm32mp1" -PTXCONF_TF_A_EXTRA_ARGS="DTB_FILE_NAME='stm32mp157c-dk2.dtb stm32mp157c-ev1.dtb stm32mp157c-lxa-mc1.dtb' STM32MP_EMMC=1 STM32MP_SDMMC=1 STM32MP_USE_STM32IMAGE=1" +PTXCONF_TF_A_EXTRA_ARGS="DTB_FILE_NAME='stm32mp157c-dk2.dtb stm32mp157c-ev1.dtb stm32mp157c-lxa-mc1.dtb' STM32MP_EMMC=1 STM32MP_SDMMC=1 STM32MP_USB_PROGRAMMER=1" PTXCONF_TF_A_ARTIFACTS="tf-a-*.stm32 bl32.bin fdts/*-fw-config.dtb fdts/*-bl32.dtb" # @@ -316,6 +316,7 @@ PTXCONF_HOST_M4=y PTXCONF_HOST_MTOOLS=y PTXCONF_HOST_SYSTEM_BC=y PTXCONF_HOST_UTIL_LINUX_NG=y +PTXCONF_HOST_TF_A=y # # non-free firmware blobs diff --git a/configs/platform-v7a/platforms/image-lxa-mc1.in b/configs/platform-v7a/platforms/image-lxa-mc1.in index baae9c4..affb04e 100644 --- a/configs/platform-v7a/platforms/image-lxa-mc1.in +++ b/configs/platform-v7a/platforms/image-lxa-mc1.in @@ -3,6 +3,7 @@ config IMAGE_LXA_MC1 tristate select HOST_GENIMAGE + select HOST_TF_A select IMAGE_ROOT_EXT select BAREBOX_STM32MP select TF_A diff --git a/configs/platform-v7a/platforms/image-stm32mp157c-dk2.in b/configs/platform-v7a/platforms/image-stm32mp157c-dk2.in index d7b9c23..d146b96 100644 --- a/configs/platform-v7a/platforms/image-stm32mp157c-dk2.in +++ b/configs/platform-v7a/platforms/image-stm32mp157c-dk2.in @@ -3,6 +3,7 @@ config IMAGE_STM32MP157C_DK2 tristate select HOST_GENIMAGE + select HOST_TF_A select IMAGE_ROOT_EXT select BAREBOX_STM32MP select TF_A diff --git a/configs/platform-v7a/platforms/image-stm32mp157c-ev1.in b/configs/platform-v7a/platforms/image-stm32mp157c-ev1.in index d0b60a4..7bc91af 100644 --- a/configs/platform-v7a/platforms/image-stm32mp157c-ev1.in +++ b/configs/platform-v7a/platforms/image-stm32mp157c-ev1.in @@ -3,6 +3,7 @@ config IMAGE_STM32MP157C_EV1 tristate select HOST_GENIMAGE + select HOST_TF_A select IMAGE_ROOT_EXT select BAREBOX_STM32MP select TF_A diff --git a/configs/platform-v7a/rules/barebox-stm32mp.make b/configs/platform-v7a/rules/barebox-stm32mp.make index aeb141f..24df761 100644 --- a/configs/platform-v7a/rules/barebox-stm32mp.make +++ b/configs/platform-v7a/rules/barebox-stm32mp.make @@ -45,9 +45,7 @@ BAREBOX_STM32MP_CONF_OPT := \ BAREBOX_STM32MP_MAKE_OPT := $(BAREBOX_STM32MP_CONF_OPT) BAREBOX_STM32MP_IMAGES := \ - images/barebox-stm32mp15xx-dkx.img \ - images/barebox-stm32mp15x-ev1.img \ - images/barebox-stm32mp157c-lxa-mc1.img + images/barebox-stm32mp-generic-bl33.img BAREBOX_STM32MP_FIP_DTBS := \ stm32mp157c-dk2.dtb \ diff --git a/configs/platform-v7a/rules/image-lxa-mc1.make b/configs/platform-v7a/rules/image-lxa-mc1.make index 058a9d1..333a5f6 100644 --- a/configs/platform-v7a/rules/image-lxa-mc1.make +++ b/configs/platform-v7a/rules/image-lxa-mc1.make @@ -11,9 +11,7 @@ # IMAGE_PACKAGES-$(PTXCONF_IMAGE_LXA_MC1) += image-lxa-mc1 -IMAGE_LXA_MC1_ENV := \ - STM32MP_BOARD_FSBL=stm32mp157c-lxa-mc1 \ - STM32MP_BOARD_SSBL=stm32mp157c-lxa-mc1 +IMAGE_LXA_MC1_ENV := STM32MP_BOARD=stm32mp157c-lxa-mc1 # # Paths and names diff --git a/configs/platform-v7a/rules/image-stm32mp157c-dk2.make b/configs/platform-v7a/rules/image-stm32mp157c-dk2.make index 7c0f442..fb14c7a 100644 --- a/configs/platform-v7a/rules/image-stm32mp157c-dk2.make +++ b/configs/platform-v7a/rules/image-stm32mp157c-dk2.make @@ -11,9 +11,7 @@ # IMAGE_PACKAGES-$(PTXCONF_IMAGE_STM32MP157C_DK2) += image-stm32mp157c-dk2 -IMAGE_STM32MP157C_DK2_ENV := \ - STM32MP_BOARD_FSBL=stm32mp157c-dk2 \ - STM32MP_BOARD_SSBL=stm32mp15xx-dkx +IMAGE_STM32MP157C_DK2_ENV := STM32MP_BOARD=stm32mp157c-dk2 # # Paths and names diff --git a/configs/platform-v7a/rules/image-stm32mp157c-ev1.make b/configs/platform-v7a/rules/image-stm32mp157c-ev1.make index 862ea5a..297b0f6 100644 --- a/configs/platform-v7a/rules/image-stm32mp157c-ev1.make +++ b/configs/platform-v7a/rules/image-stm32mp157c-ev1.make @@ -11,9 +11,7 @@ # IMAGE_PACKAGES-$(PTXCONF_IMAGE_STM32MP157C_EV1) += image-stm32mp157c-ev1 -IMAGE_STM32MP157C_EV1_ENV := \ - STM32MP_BOARD_FSBL=stm32mp157c-ev1 \ - STM32MP_BOARD_SSBL=stm32mp15x-ev1 +IMAGE_STM32MP157C_EV1_ENV := STM32MP_BOARD=stm32mp157c-ev1 # # Paths and names |