Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ jobs:
strategy:
matrix:
vendor: [ hardkernel ]
model: [ odroid_h4 ]
model: [ odroid_h4, odroid_h4_netcard ]
steps:
- name: Checkout repository
uses: actions/checkout@v4
Expand Down
15 changes: 10 additions & 5 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ usage() {
echo -e "\tqemu - build Dasharo for QEMU Q35"
echo -e "\tqemu_full - build Dasharo for QEMU Q35 with all menus available"
echo -e "\todroid_h4 - build Dasharo compatible with Hardkernel ODROID H4"
echo -e "\todroid_h4_netcard - build Dasharo compatible with Hardkernel ODROID H4 for netcard support"
}

DASHARO_SDK=${DASHARO_SDK:-"ghcr.io/dasharo/dasharo-sdk:v1.6.0"}
Expand Down Expand Up @@ -286,7 +287,8 @@ function build_qemu {
}

function build_odroid_h4 {
DEFCONFIG="configs/config.hardkernel_odroid_h4"
VARIANT=$1
DEFCONFIG="configs/config.hardkernel_${VARIANT}"
FW_VERSION=$(cat ${DEFCONFIG} | grep CONFIG_LOCALVERSION | cut -d '=' -f 2 | tr -d '"')

# checkout several submodules needed by these boards (some others are checked
Expand All @@ -297,10 +299,10 @@ function build_odroid_h4 {

build_start

cp build/coreboot.rom hardkernel_odroid_h4_${FW_VERSION}.rom
cp build/coreboot.rom hardkernel_${VARIANT}_${FW_VERSION}.rom
if [ $? -eq 0 ]; then
echo "Result binary placed in $PWD/hardkernel_odroid_h4_${FW_VERSION}.rom"
sha256sum hardkernel_odroid_h4_${FW_VERSION}.rom > hardkernel_odroid_h4_${FW_VERSION}.rom.sha256
echo "Result binary placed in $PWD/hardkernel_${VARIANT}_${FW_VERSION}.rom"
sha256sum hardkernel_${VARIANT}_${FW_VERSION}.rom > hardkernel_${VARIANT}_${FW_VERSION}.rom.sha256
else
echo "Build failed!"
exit 1
Expand Down Expand Up @@ -430,7 +432,10 @@ case "$CMD" in
build_qemu "_all_menus"
;;
"odroid_h4" | "odroid_H4" | "ODROID_H4" )
build_odroid_h4
build_odroid_h4 "odroid_h4"
;;
"odroid_h4_netcard" | "odroid_H4_netcard" | "ODROID_H4_NETCARD" )
build_odroid_h4 "odroid_h4_netcard"
;;
*)
echo "Invalid command: \"$CMD\""
Expand Down
10 changes: 8 additions & 2 deletions configs/config.hardkernel_odroid_h4
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
CONFIG_LOCALVERSION="v0.9.0-rc3"
CONFIG_LOCALVERSION="v0.9.1-rc1"
CONFIG_OPTION_BACKEND_NONE=y
CONFIG_VENDOR_HARDKERNEL=y
CONFIG_VBOOT=y
Expand Down Expand Up @@ -26,7 +26,7 @@ CONFIG_BOOTMEDIA_SMM_BWP=y
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2"
CONFIG_EDK2_TAG_OR_REV="30f81450ee668975cc8a2fad2a2ac665dd79c5fa"
CONFIG_EDK2_TAG_OR_REV="13f29f75a2daab32e62496fb86b414f5f62cca71"
CONFIG_EDK2_CBMEM_LOGGING=y
CONFIG_EDK2_FOLLOW_BGRT_SPEC=y
CONFIG_EDK2_SERIAL_SUPPORT=y
Expand All @@ -41,19 +41,25 @@ CONFIG_EDK2_ENABLE_IPXE=y
CONFIG_EDK2_SATA_PASSWORD=y
CONFIG_EDK2_OPAL_PASSWORD=y
CONFIG_EDK2_SETUP_PASSWORD=y
CONFIG_EDK2_PERFORMANCE_MEASUREMENT_ENABLE=y
CONFIG_EDK2_DASHARO_SYSTEM_FEATURES=y
CONFIG_EDK2_DASHARO_SECURITY_OPTIONS=y
CONFIG_EDK2_DASHARO_INTEL_ME_OPTIONS=y
CONFIG_EDK2_DASHARO_USB_CONFIG=y
CONFIG_EDK2_DASHARO_NETWORK_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_CPU_THROTTLING_THRESHOLD_OPTION=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_IBECC_OPTION=y
CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION_DEFAULT_ENABLE=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
CONFIG_EDK2_BOOT_MENU_KEY=0x0015
CONFIG_EDK2_SETUP_MENU_KEY=0x0008
CONFIG_EDK2_CREATE_PREINSTALLED_BOOT_OPTIONS=y
CONFIG_EDK2_ENABLE_FAST_BOOT_FEATURE=y
CONFIG_EDK2_ENABLE_QUIET_BOOT_FEATURE=y
CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
CONFIG_DISPLAY_FSP_HEADER=y
66 changes: 66 additions & 0 deletions configs/config.hardkernel_odroid_h4_netcard
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
CONFIG_LOCALVERSION="v0.9.1-rc1"
CONFIG_OPTION_BACKEND_NONE=y
CONFIG_VENDOR_HARDKERNEL=y
CONFIG_VBOOT=y
CONFIG_EDK2_CPU_THROTTLING_THRESHOLD_DEFAULT=10
CONFIG_IFD_BIN_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/descriptor_netcard.bin"
CONFIG_ME_BIN_PATH="3rdparty/dasharo-blobs/$(MAINBOARDDIR)/me.bin"
CONFIG_CONSOLE_CBMEM_BUFFER_SIZE=0x100000
CONFIG_PCIEXP_DEFAULT_MAX_RESIZABLE_BAR_BITS=37
CONFIG_ODROID_H4_NETCARD_SUPPORT=y
CONFIG_HAVE_IFD_BIN=y
CONFIG_EDK2_BOOTSPLASH_FILE="3rdparty/dasharo-blobs/dasharo/bootsplash.bmp"
CONFIG_TPM_MEASURED_BOOT=y
CONFIG_POWER_STATE_OFF_AFTER_FAILURE=y
CONFIG_HAVE_ME_BIN=y
CONFIG_DASHARO_PREFER_S3_SLEEP=y
CONFIG_PCIEXP_SUPPORT_RESIZABLE_BARS=y
CONFIG_DRIVERS_EFI_VARIABLE_STORE=y
CONFIG_DRIVERS_GENERIC_CBFS_SERIAL=y
CONFIG_DRIVERS_GENERIC_CBFS_UUID=y
# CONFIG_DRIVERS_MTK_WIFI is not set
CONFIG_TPM2=y
CONFIG_BOOTMEDIA_LOCK_CONTROLLER=y
CONFIG_BOOTMEDIA_LOCK_WPRO_VBOOT_RO=y
CONFIG_BOOTMEDIA_LOCK_IN_VERSTAGE=y
CONFIG_BOOTMEDIA_SMM_BWP=y
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2"
CONFIG_EDK2_TAG_OR_REV="244b28fddfcd6631d0f661638ddcd0b9aec6295b"
CONFIG_EDK2_CBMEM_LOGGING=y
CONFIG_EDK2_FOLLOW_BGRT_SPEC=y
CONFIG_EDK2_SERIAL_SUPPORT=y
CONFIG_BUILD_IPXE=y
CONFIG_IPXE_NO_PROMPT=y
CONFIG_IPXE_ADD_SCRIPT=y
CONFIG_IPXE_SCRIPT="3rdparty/dasharo-blobs/dasharo/dasharo.ipxe"
CONFIG_IPXE_CUSTOM_BUILD_ID="0123456789"
CONFIG_EDK2_SKIP_PS2_DETECT=y
CONFIG_EDK2_ENABLE_IPXE=y
# CONFIG_EDK2_SECURE_BOOT_DEFAULT_ENABLE is not set
CONFIG_EDK2_SATA_PASSWORD=y
CONFIG_EDK2_OPAL_PASSWORD=y
CONFIG_EDK2_SETUP_PASSWORD=y
CONFIG_EDK2_PERFORMANCE_MEASUREMENT_ENABLE=y
CONFIG_EDK2_DASHARO_SYSTEM_FEATURES=y
CONFIG_EDK2_DASHARO_SECURITY_OPTIONS=y
CONFIG_EDK2_DASHARO_INTEL_ME_OPTIONS=y
CONFIG_EDK2_DASHARO_USB_CONFIG=y
CONFIG_EDK2_DASHARO_NETWORK_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_CPU_THROTTLING_THRESHOLD_OPTION=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_IBECC_OPTION=y
CONFIG_EDK2_DASHARO_SERIAL_REDIRECTION_DEFAULT_ENABLE=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
CONFIG_EDK2_BOOT_MENU_KEY=0x0015
CONFIG_EDK2_SETUP_MENU_KEY=0x0008
CONFIG_EDK2_CREATE_PREINSTALLED_BOOT_OPTIONS=y
CONFIG_EDK2_ENABLE_FAST_BOOT_FEATURE=y
CONFIG_EDK2_ENABLE_QUIET_BOOT_FEATURE=y
CONFIG_DISPLAY_FSP_CALLS_AND_STATUS=y
CONFIG_DISPLAY_FSP_HEADER=y
3 changes: 2 additions & 1 deletion configs/config.msi_ms7d25_ddr4
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
CONFIG_POST_DEVICE_PCI_PCIE=y
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2.git"
CONFIG_EDK2_TAG_OR_REV="30f81450ee668975cc8a2fad2a2ac665dd79c5fa"
CONFIG_EDK2_TAG_OR_REV="244b28fddfcd6631d0f661638ddcd0b9aec6295b"
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
Expand All @@ -68,6 +68,7 @@ CONFIG_EDK2_DASHARO_CHIPSET_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
Expand Down
3 changes: 2 additions & 1 deletion configs/config.msi_ms7d25_ddr5
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
# CONFIG_CONSOLE_USE_ANSI_ESCAPES is not set
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2.git"
CONFIG_EDK2_TAG_OR_REV="30f81450ee668975cc8a2fad2a2ac665dd79c5fa"
CONFIG_EDK2_TAG_OR_REV="244b28fddfcd6631d0f661638ddcd0b9aec6295b"
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
Expand All @@ -65,6 +65,7 @@ CONFIG_EDK2_DASHARO_CHIPSET_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
Expand Down
3 changes: 2 additions & 1 deletion configs/config.msi_ms7e06_ddr4
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
# CONFIG_CONSOLE_USE_ANSI_ESCAPES is not set
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2.git"
CONFIG_EDK2_TAG_OR_REV="30f81450ee668975cc8a2fad2a2ac665dd79c5fa"
CONFIG_EDK2_TAG_OR_REV="244b28fddfcd6631d0f661638ddcd0b9aec6295b"
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
Expand All @@ -65,6 +65,7 @@ CONFIG_EDK2_DASHARO_CHIPSET_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
Expand Down
3 changes: 2 additions & 1 deletion configs/config.msi_ms7e06_ddr5
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ CONFIG_DEFAULT_CONSOLE_LOGLEVEL_0=y
# CONFIG_CONSOLE_USE_ANSI_ESCAPES is not set
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_REPOSITORY="https://github.com/Dasharo/edk2.git"
CONFIG_EDK2_TAG_OR_REV="30f81450ee668975cc8a2fad2a2ac665dd79c5fa"
CONFIG_EDK2_TAG_OR_REV="244b28fddfcd6631d0f661638ddcd0b9aec6295b"
CONFIG_EDK2_USE_EDK2_PLATFORMS=y
CONFIG_EDK2_PLATFORMS_REPOSITORY="https://github.com/Dasharo/edk2-platforms"
CONFIG_EDK2_PLATFORMS_TAG_OR_REV="1002a59639f111a2f8178b77d1f5fde0ea8d976f"
Expand All @@ -65,6 +65,7 @@ CONFIG_EDK2_DASHARO_CHIPSET_CONFIG=y
CONFIG_EDK2_DASHARO_POWER_CONFIG=y
CONFIG_EDK2_DASHARO_PCI_CONFIG=y
CONFIG_EDK2_DASHARO_MEMORY_CONFIG=y
CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION=y
CONFIG_EDK2_DASHARO_CPU_CONFIG=y
CONFIG_EDK2_CORE_DISABLE_OPTION=y
CONFIG_EDK2_HYPERTHREADING_OPTION=y
Expand Down
4 changes: 3 additions & 1 deletion payloads/external/Makefile.mk
Original file line number Diff line number Diff line change
Expand Up @@ -290,7 +290,9 @@ $(obj)/UEFIPAYLOAD.fd: $(DOTCONFIG) $(IPXE_EFI)
CONFIG_EDK2_DGPU_POWER_OPTION=$(CONFIG_EDK2_DGPU_POWER_OPTION) \
CONFIG_DGPU_ONLY_AVAILABLE=$(CONFIG_DGPU_ONLY_AVAILABLE) \
CONFIG_EDK2_FTDI_USB_UART_SUPPORT=$(CONFIG_EDK2_FTDI_USB_UART_SUPPORT) \
CONFIG_QEMU_PLATFORM=$(CONFIG_CPU_QEMU_X86)
CONFIG_QEMU_PLATFORM=$(CONFIG_CPU_QEMU_X86) \
CONFIG_EDK2_DASHARO_IBECC_OPTION=$(CONFIG_EDK2_DASHARO_IBECC_OPTION) \
CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION=$(CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION)


$(obj)/ShimmedUniversalPayload.elf: $(DOTCONFIG)
Expand Down
16 changes: 16 additions & 0 deletions payloads/external/edk2/Kconfig.dasharo
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,22 @@ config EDK2_DASHARO_MEMORY_CONFIG
help
Enables the EDK2 Memory configuration submenu in Dasharo System Features menu.

config EDK2_DASHARO_SPD_PROFILE_OPTION
bool "Show Memory SPD profile in Dasharo Memory Configuration Menu"
depends on EDK2_DASHARO_MEMORY_CONFIG
default n
help
Shows the Memory SPD profile option in EDK2 Memory configuration
submenu in Dasharo System Features menu.

config EDK2_DASHARO_IBECC_OPTION
bool "Show In-band ECC in Dasharo Memory Configuration Menu"
depends on EDK2_DASHARO_MEMORY_CONFIG
default n
help
Shows the In-band ECC option in EDK2 Memory configuration submenu in
Dasharo System Features menu.

config EDK2_DASHARO_NETWORK_BOOT_DEFAULT_ENABLE
bool "Enable EDK2 network boot option by default"
default n
Expand Down
8 changes: 7 additions & 1 deletion payloads/external/edk2/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -305,10 +305,16 @@ endif # CONFIG_EDK2_DASHARO_POWER_CONFIG
ifeq ($(CONFIG_EDK2_DASHARO_PCI_CONFIG),y)
BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowPciMenu=TRUE
endif
# DASHARO_MEMORY_CONFIG = FALSE
# PcdShowMemoryMenu = FALSE
ifeq ($(CONFIG_EDK2_DASHARO_MEMORY_CONFIG),y)
BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowMemoryMenu=TRUE
ifeq ($(CONFIG_EDK2_DASHARO_SPD_PROFILE_OPTION),y)
BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowMemorySpdProfileOption=TRUE
endif
ifeq ($(CONFIG_EDK2_DASHARO_IBECC_OPTION),y)
BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdShowMemoryIbeccOption=TRUE
endif
endif # PcdShowMemoryMenu
# DASHARO_NETWORK_BOOT_DEFAULT_ENABLE = FALSE
ifeq ($(CONFIG_EDK2_DASHARO_NETWORK_BOOT_DEFAULT_ENABLE),y)
BUILD_STR += --pcd gDasharoSystemFeaturesTokenSpaceGuid.PcdDefaultNetworkBootEnable=TRUE
Expand Down
17 changes: 17 additions & 0 deletions src/mainboard/hardkernel/odroid-h4/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,21 @@ config ODROID_H4_ENABLE_SAGV
If unsure, keep enabled. If reflashing often, disabling this
option can be useful to reduce memory training time.

config ODROID_H4_NETCARD_SUPPORT
bool "Enable 4x1 netcard support in M.2 NVME slot"
default n
help
Enables 4x1 PCIe netcard support in the project. Enable this
option when the M.2 NVMe slot is bifurcated as 4x1 to support
the netcard. The option alone does not guarantee that the
bifurcation is enabled in the Intel Flash Descriptor. Use
proper flash desriptor when enabling this option.

By default the slot is bifurcated as 1x4 for NVMe.

config OVERRIDE_DEVICETREE
string
default "overridetree_netcard.cb" if ODROID_H4_NETCARD_SUPPORT
default "overridetree_nvme.cb"

endif #BOARD_HARDKERNEL_ODROID_H4
Binary file modified src/mainboard/hardkernel/odroid-h4/data.vbt
Binary file not shown.
16 changes: 5 additions & 11 deletions src/mainboard/hardkernel/odroid-h4/devicetree.cb
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ chip soc/intel/alderlake

register "tcc_offset" = "10" # TCC of 90C

register "ibecc" = "{
.enable = false,
.mode = IBECC_MODE_ALL
}"

device domain 0 on
subsystemid 0x8086 0x7270 inherit
device ref igpu on
Expand Down Expand Up @@ -175,16 +180,6 @@ chip soc/intel/alderlake
}"
end

device ref pcie_rp9 on # M.2 M NVMe (x4)
register "pch_pcie_rp[PCH_RP(9)]" = "{
.clk_src = 0,
.clk_req = 0,
.flags = PCIE_RP_LTR | PCIE_RP_AER | PCIE_RP_CLK_REQ_DETECT,
}"
smbios_slot_desc "SlotTypeM2Socket3" "SlotLengthOther"
"M.2/M 2280 (M2_SSD1)" "SlotDataBusWidth4X"
end

device ref pch_espi on
# LPC generic I/O ranges
register "gen1_dec" = "0x00fc0201"
Expand Down Expand Up @@ -217,7 +212,6 @@ chip soc/intel/alderlake
end
device ref p2sb hidden end
device ref hda on
register "pch_hda_dsp_enable" = "true"
register "pch_hda_sdi_enable[0]" = "true"
register "pch_hda_audio_link_hda_enable" = "true"
register "pch_hda_idisp_codec_enable" = "true"
Expand Down
11 changes: 11 additions & 0 deletions src/mainboard/hardkernel/odroid-h4/gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -133,8 +133,13 @@ static const struct pad_config gpio_table[] = {
PAD_CFG_NF(GPP_A10, NONE, DEEP, NF1),
/* GPP_A11 - GPIO */
PAD_NC(GPP_A11, NONE),
#if CONFIG(ODROID_H4_NETCARD_SUPPORT)
/* GPP_A12 - GPIO - unused with netcard support */
PAD_NC(GPP_A12, NONE),
#else
/* GPP_A12 - SATAXPCIE1 */
PAD_CFG_NF(GPP_A12, NONE, DEEP, NF1),
#endif
/* GPP_A13 - GPIO */
PAD_NC(GPP_A13, NONE),
/* GPP_A14 - GPIO */
Expand Down Expand Up @@ -273,8 +278,14 @@ static const struct pad_config gpio_table[] = {
PAD_NC(GPP_D3, NONE),
/* GPP_D4 - GPIO */
PAD_NC(GPP_D4, NONE),
#if CONFIG(ODROID_H4_NETCARD_SUPPORT)
/* GPP_D5 - GPIO */
/* Do not use SRCCLKREQ0# to PCIE RP 9 (NVMe), as the clock becomes shared */
PAD_NC(GPP_D5, NONE),
#else
/* GPP_D5 - SRCCLKREQ0# to PCIE RP 9 (NVMe) */
PAD_CFG_NF(GPP_D5, NONE, DEEP, NF1),
#endif
/* GPP_D6 - SRCCLKREQ1# to PCIE RP 3 (LAN1) */
PAD_CFG_NF(GPP_D6, NONE, DEEP, NF1),
/* GPP_D7 - SRCCLKREQ2# to PCIE RP 4 (LAN2) */
Expand Down
3 changes: 2 additions & 1 deletion src/mainboard/hardkernel/odroid-h4/mainboard.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ void mainboard_silicon_init_params(FSP_S_CONFIG *params)
params->PcieRpEnableCpm[2] = 1; // LAN1
params->PcieRpEnableCpm[3] = 1; // LAN2
params->PcieRpEnableCpm[6] = 1; // ASMedia PCIe to SATA
params->PcieRpEnableCpm[8] = 1; // NVMe
if (!CONFIG(ODROID_H4_NETCARD_SUPPORT))
params->PcieRpEnableCpm[8] = 1; // NVMe

// Max payload 256B
memset(params->PcieRpMaxPayload, 1, sizeof(params->PcieRpMaxPayload));
Expand Down
Loading
Loading