configs/config.protectli_vp2410_no_emmc: create config variant

Adds ENABLE_EMMC option (default y) to allow building firmware for
VP2410e — a hardware variant without eMMC. When disabled, the product
name reported via SMBIOS changes to "VP2410e".

`eMMCEnabled` is set by `parse_devicetree()` at the start of
`platform_fsp_silicon_init_params_cb()`, before `mainboard_silicon_init_params()`
is called. Overriding it directly in FSP UPD at the end of that function
is sufficient to prevent FSP from initializing the controller.

`pcidev_path_on_root(PCH_DEVFN_EMMC)->enabled` is also cleared so the
device does not appear in ACPI tables.

Upstream-Status: Inappropriate [Dasharo downstream]

Signed-off-by: Wiktor Mowinski <wiktor.mowinski@3mdeb.com>
This commit is contained in:
Wiktor Mowinski
2026-05-19 13:43:41 +02:00
committed by Filip Gołaś
parent 189381756a
commit d2f29ed5cf
5 changed files with 82 additions and 2 deletions
+4
View File
@@ -383,6 +383,10 @@ case "$CMD" in
BOARD="vp2410"
build_protectli_vault
;;
"vp2410_noemmc" | "VP2410_noemmc" | "vp2410e" | "VP2410e")
BOARD="vp2410"
build_protectli_vault _no_emmc
;;
"vp2420" | "VP2420")
BOARD="vp2420"
build_protectli_vault
+1 -1
View File
@@ -1,4 +1,4 @@
CONFIG_LOCALVERSION="v1.1.1"
CONFIG_LOCALVERSION="v1.1.2-rc1"
CONFIG_OPTION_BACKEND_NONE=y
CONFIG_VENDOR_PROTECTLI=y
CONFIG_ONBOARD_VGA_IS_PRIMARY=y
+63
View File
@@ -0,0 +1,63 @@
CONFIG_LOCALVERSION="v1.1.2-rc1"
CONFIG_OPTION_BACKEND_NONE=y
CONFIG_VENDOR_PROTECTLI=y
CONFIG_ONBOARD_VGA_IS_PRIMARY=y
# CONFIG_DISABLE_HECI1_AT_PRE_BOOT is not set
CONFIG_FSP_FD_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/GeminilakeFspBinPkg/Fsp.fd"
CONFIG_IFD_BIN_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/descriptor.bin"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x100000
CONFIG_EDK2_BOOT_TIMEOUT=6
CONFIG_IFWI_FILE_NAME="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/ifwi.bin"
CONFIG_HAVE_IFD_BIN=y
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_BOARD_PROTECTLI_VP2410=y
# CONFIG_ENABLE_EMMC is not set
CONFIG_DRIVERS_UART_8250IO=y
CONFIG_EDK2_BOOTSPLASH_FILE="3rdparty/dasharo-blobs/protectli/black_background.bmp"
CONFIG_FSP_HEADER_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/GeminilakeFspBinPkg/Include"
CONFIG_USE_INTEL_FSP_MP_INIT=y
CONFIG_ME_REGION_ALLOW_CPU_READ_ACCESS=y
CONFIG_DASHARO_PREFER_S3_SLEEP=y
# CONFIG_DASHARO_FIRMWARE_UPDATE_MODE is not set
CONFIG_DRIVERS_EFI_VARIABLE_STORE=y
CONFIG_SPI_FLASH_NO_FAST_READ=y
CONFIG_DRIVERS_GENERIC_CBFS_SERIAL=y
CONFIG_DRIVERS_GENERIC_CBFS_UUID=y
CONFIG_ADD_FSP_BINARIES=y
CONFIG_FSP_FULL_FD=y
CONFIG_TPM2=y
CONFIG_BOOTMEDIA_SMM_BWP=y
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
# CONFIG_CONSOLE_USE_LOGLEVEL_PREFIX is not set
# CONFIG_CONSOLE_USE_ANSI_ESCAPES is not set
CONFIG_POST_DEVICE_LPC=y
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
CONFIG_EDK2_CBMEM_LOGGING=y
CONFIG_EDK2_FOLLOW_BGRT_SPEC=y
# CONFIG_EDK2_PRIORITIZE_INTERNAL is not set
# CONFIG_EDK2_PS2_SUPPORT is not set
CONFIG_EDK2_SERIAL_SUPPORT=y
CONFIG_BUILD_IPXE=y
CONFIG_IPXE_ADD_SCRIPT=y
CONFIG_IPXE_SCRIPT="3rdparty/dasharo-blobs/dasharo/protectli.ipxe"
CONFIG_IPXE_CUSTOM_BUILD_ID="0123456789"
CONFIG_DASHARO=y
CONFIG_EDK2_ENABLE_IPXE=y
CONFIG_EDK2_IPXE_OPTION_NAME="Network Boot and Utilities"
# CONFIG_EDK2_SECURE_BOOT_DEFAULT_ENABLE is not set
CONFIG_EDK2_SETUP_PASSWORD=y
CONFIG_EDK2_DASHARO_SYSTEM_FEATURES=y
CONFIG_EDK2_DASHARO_SECURITY_OPTIONS=y
CONFIG_EDK2_DASHARO_USB_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_CPU_THROTTLING_THRESHOLD_OPTION=y
CONFIG_EDK2_DASHARO_NETWORK_BOOT_DEFAULT_ENABLE=y
CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION_DEFAULT_ENABLE=y
CONFIG_EDK2_BOOT_MENU_KEY=0x0015
CONFIG_EDK2_SETUP_MENU_KEY=0x0008
CONFIG_EDK2_DISABLE_OPTION_ROMS=y
CONFIG_EDK2_CREATE_PREINSTALLED_BOOT_OPTIONS=y
CONFIG_EDK2_USE_UEFIVAR_BACKED_TPM_PPI=y
+8 -1
View File
@@ -26,7 +26,8 @@ config DEVICETREE
config MAINBOARD_PART_NUMBER
string
default "VP2410"
default "VP2410" if ENABLE_EMMC
default "VP2410e"
config MAINBOARD_FAMILY
default "Vault Pro"
@@ -50,6 +51,12 @@ config FMDFILE
string
default "src/mainboard/\$(CONFIG_MAINBOARD_DIR)/board.fmd" if !VBOOT
config ENABLE_EMMC
bool "Enable eMMC support"
default y
help
Enable the eMMC storage controller
config BEEP_ON_BOOT
bool "Beep on successful boot"
default y
@@ -4,6 +4,7 @@
#include <device/device.h>
#include <fsp/api.h>
#include <pc80/i8254.h>
#include <soc/pci_devs.h>
#include <soc/ramstage.h>
static void mainboard_final(void *chip_info)
@@ -77,6 +78,11 @@ void mainboard_silicon_init_params(FSP_S_CONFIG *silconfig)
silconfig->PcieRpClkReqSupported[5] = 0x0;
silconfig->AdvancedErrorReporting[5] = 0x1;
silconfig->PmeInterrupt[5] = 0x1;
if (!CONFIG(ENABLE_EMMC)) {
silconfig->eMMCEnabled = 0;
pcidev_path_on_root(PCH_DEVFN_EMMC)->enabled = 0;
}
}
struct chip_operations mainboard_ops = {