efi_loader: Force a single FMP instance per hardware store
authorIlias Apalodimas <ilias.apalodimas@linaro.org>
Tue, 22 Jun 2021 14:38:52 +0000 (17:38 +0300)
committerHeinrich Schuchardt <xypron.glpk@gmx.de>
Fri, 2 Jul 2021 07:37:01 +0000 (09:37 +0200)
commitb891ff18f8999c89d00e1a963a4bc07afe3ae061
tree244a0552569a929209e9a33c35221516271a6f77
parent3ef772230db077a7122de11d93cfc4ff570fb4a7
efi_loader: Force a single FMP instance per hardware store

Chapter 23 of the EFI spec (rev 2.9) says:
"A specific updatable hardware firmware store must be represented by
exactly one FMP instance".
This is not the case for us, since both of our FMP protocols can be
installed at the same time because they are controlled by a single
'dfu_alt_info' env variable.
So make the config options depend on each other and allow the user to
install one of them at any given time.  If we fix the meta-data provided
by the 'dfu_alt_info' in the future,  to hint about the capsule type
(fit or raw) we can revise this and enable both FMPs to be installed, as
long as they target different firmware hardware stores

Note that we are not using a Kconfig 'choice' on purpose, since we
want to allow both of those to be installed and tested in sandbox

Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
configs/xilinx_zynqmp_virt_defconfig
lib/efi_loader/Kconfig