Skip to content

Commit 0fc63e3

Browse files
configs/config.protectli_vp32xx_no_emmc: create viariant with disabled emmc
Adds ENABLE_EMMC option (default y) to support VP3210e and VP3230e — hardware variants without eMMC. SMBIOS product name gets an "e" suffix when the option is disabled. `ScsEmmcEnabled` is set by `soc_silicon_init_params()` via `is_devfn_enabled(PCH_DEVFN_EMMC)` before `mainboard_silicon_init_params()` is called, so overriding it directly in FSP UPD at the end of `mainboard_silicon_init_params()` is sufficient. `pcidev_path_on_root(PCH_DEVFN_EMMC)->enabled` is also cleared to prevent the device from appearing in ACPI tables. Upstream-Status: Inappropriate [Dasharo downstream] Signed-off-by: Wiktor Mowinski <wiktor.mowinski@3mdeb.com>
1 parent 5e4b1fc commit 0fc63e3

4 files changed

Lines changed: 81 additions & 2 deletions

File tree

build.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ usage() {
1313
echo -e "\tvp46xx - build Dasharo for Protectli VP46xx"
1414
echo -e "\tvp46xx_noemmc- build Dasharo for Protectli VP46xx variants without eMMC (VP46xxe, VP4651)"
1515
echo -e "\tvp32xx - build Dasharo for Protectli VP32xx"
16+
echo -e "\tvp32xx_noemmc - build Dasharo for Protectli VP32xx variants without eMMC (VP3210e, VP3230e)"
1617
echo -e "\tvp2440 - build Dasharo for Protectli VP2440"
1718
echo -e "\tvp2430 - build Dasharo for Protectli VP2430"
1819
echo -e "\tvp2420 - build Dasharo for Protectli VP2420"
@@ -376,6 +377,10 @@ case "$CMD" in
376377
BOARD="vp32xx"
377378
build_protectli_vault
378379
;;
380+
"vp32xx_noemmc" | "VP32XX_noemmc" | "vp32xxe" | "VP32XXe")
381+
BOARD="vp32xx"
382+
build_protectli_vault _no_emmc
383+
;;
379384
"vp2410" | "VP2410")
380385
BOARD="vp2410"
381386
build_protectli_vault
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
CONFIG_LOCALVERSION="v0.9.0-rc10"
2+
CONFIG_OPTION_BACKEND_NONE=y
3+
CONFIG_VENDOR_PROTECTLI=y
4+
CONFIG_VBOOT=y
5+
CONFIG_IFD_BIN_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/vp32xx/descriptor.bin"
6+
CONFIG_ME_BIN_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/vp32xx/me.bin"
7+
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x100000
8+
CONFIG_EDK2_BOOT_TIMEOUT=6
9+
CONFIG_HAVE_IFD_BIN=y
10+
CONFIG_TPM_MEASURED_BOOT=y
11+
# CONFIG_ENABLE_EMMC is not set
12+
CONFIG_EDK2_BOOTSPLASH_FILE="3rdparty/dasharo-blobs/protectli/black_background.bmp"
13+
CONFIG_POWER_STATE_OFF_AFTER_FAILURE=y
14+
CONFIG_HAVE_ME_BIN=y
15+
CONFIG_INTEL_ME_DISABLED_HECI=y
16+
# CONFIG_DASHARO_FIRMWARE_UPDATE_MODE is not set
17+
CONFIG_DRIVERS_EFI_VARIABLE_STORE=y
18+
CONFIG_DRIVERS_GENERIC_CBFS_SERIAL=y
19+
CONFIG_DRIVERS_GENERIC_CBFS_UUID=y
20+
CONFIG_TPM2=y
21+
CONFIG_BOOTMEDIA_LOCK_CONTROLLER=y
22+
CONFIG_BOOTMEDIA_LOCK_WPRO_VBOOT_RO=y
23+
CONFIG_BOOTMEDIA_LOCK_IN_VERSTAGE=y
24+
CONFIG_BOOTMEDIA_SMM_BWP=y
25+
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
26+
# CONFIG_CONSOLE_USE_LOGLEVEL_PREFIX is not set
27+
# CONFIG_CONSOLE_USE_ANSI_ESCAPES is not set
28+
CONFIG_PAYLOAD_EDK2=y
29+
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
30+
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
31+
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
32+
CONFIG_EDK2_CBMEM_LOGGING=y
33+
CONFIG_EDK2_FOLLOW_BGRT_SPEC=y
34+
# CONFIG_EDK2_PRIORITIZE_INTERNAL is not set
35+
# CONFIG_EDK2_PS2_SUPPORT is not set
36+
CONFIG_EDK2_SERIAL_SUPPORT=y
37+
CONFIG_BUILD_IPXE=y
38+
CONFIG_IPXE_NO_PROMPT=y
39+
CONFIG_IPXE_ADD_SCRIPT=y
40+
CONFIG_IPXE_SCRIPT="3rdparty/dasharo-blobs/dasharo/protectli.ipxe"
41+
CONFIG_IPXE_CUSTOM_BUILD_ID="0123456789"
42+
CONFIG_DASHARO=y
43+
CONFIG_EDK2_ENABLE_IPXE=y
44+
CONFIG_EDK2_IPXE_OPTION_NAME="Network Boot and Utilities"
45+
# CONFIG_EDK2_SECURE_BOOT_DEFAULT_ENABLE is not set
46+
CONFIG_EDK2_SETUP_PASSWORD=y
47+
CONFIG_EDK2_DASHARO_SYSTEM_FEATURES=y
48+
CONFIG_EDK2_DASHARO_SECURITY_OPTIONS=y
49+
CONFIG_EDK2_DASHARO_INTEL_ME_OPTIONS=y
50+
CONFIG_EDK2_DASHARO_USB_CONFIG=y
51+
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
52+
CONFIG_EDK2_FAN_CURVE_OPTION=y
53+
CONFIG_EDK2_FAN_OFF_CURVE_OPTION=y
54+
CONFIG_EDK2_CPU_THROTTLING_THRESHOLD_OPTION=y
55+
CONFIG_EDK2_DASHARO_NETWORK_BOOT_DEFAULT_ENABLE=y
56+
CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION_DEFAULT_ENABLE=y
57+
CONFIG_EDK2_HAVE_2ND_UART=y
58+
CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION2_DEFAULT_ENABLE=y
59+
CONFIG_EDK2_BOOT_MENU_KEY=0x0015
60+
CONFIG_EDK2_SETUP_MENU_KEY=0x0008
61+
CONFIG_EDK2_DISABLE_OPTION_ROMS=y
62+
CONFIG_EDK2_CREATE_PREINSTALLED_BOOT_OPTIONS=y

src/mainboard/protectli/vault_adl_n/Kconfig

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,4 +92,10 @@ config BEEP_ON_BOOT
9292
May serve as a useful indicator in headless mode that platform is
9393
properly booting.
9494

95+
config ENABLE_EMMC
96+
bool "Enable eMMC support"
97+
default y
98+
help
99+
Enable the eMMC storage controller
100+
95101
endif

src/mainboard/protectli/vault_adl_n/mainboard.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#include <device/device.h>
77
#include <pc80/i8254.h>
88
#include <smbios.h>
9+
#include <soc/pci_devs.h>
910
#include <soc/ramstage.h>
1011
#include <superio/ite/it8659e/chip.h>
1112
#include <superio/ite/it8659e/it8659e.h>
@@ -41,9 +42,9 @@ const char *smbios_mainboard_product_name(void)
4142
}
4243

4344
if (strstr(str, "N100") != NULL)
44-
return "VP3210";
45+
return CONFIG(ENABLE_EMMC) ? "VP3210" : "VP3210e";
4546
else if (strstr(str, "N305") != NULL)
46-
return "VP3230";
47+
return CONFIG(ENABLE_EMMC) ? "VP3230" : "VP3230e";
4748
else
4849
return CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME;
4950
}
@@ -126,6 +127,11 @@ void mainboard_silicon_init_params(FSP_S_CONFIG *params)
126127
params->EnableTcssCovTypeA[1] = 1;
127128
params->MappingPchXhciUsbA[1] = 6;
128129
}
130+
131+
if (!CONFIG(ENABLE_EMMC)) {
132+
params->ScsEmmcEnabled = 0;
133+
pcidev_path_on_root(PCH_DEVFN_EMMC)->enabled = 0;
134+
}
129135
}
130136

131137
static void mainboard_final(void *chip_info)

0 commit comments

Comments
 (0)