diff --git a/payloads/external/Makefile.mk b/payloads/external/Makefile.mk index 1a494486db..a15ec2f378 100644 --- a/payloads/external/Makefile.mk +++ b/payloads/external/Makefile.mk @@ -152,7 +152,8 @@ payloads/external/depthcharge/depthcharge/build/depthcharge.elf depthcharge: $(D DEPTHCHARGE_STABLE=$(CONFIG_DEPTHCHARGE_STABLE) \ DEPTHCHARGE_REVISION=$(CONFIG_DEPTHCHARGE_REVISION) \ DEPTHCHARGE_REVISION_ID=$(CONFIG_DEPTHCHARGE_REVISION_ID) \ - OVERRIDE_DEFCONFIG=$(CONFIG_LP_DEFCONFIG_OVERRIDE) + OVERRIDE_DEFCONFIG=$(CONFIG_LP_DEFCONFIG_OVERRIDE) \ + OVERRIDE_DEFCONFIG_64=$(CONFIG_LP_DEFCONFIG_OVERRIDE_X64) # edk2 diff --git a/payloads/external/depthcharge/Kconfig b/payloads/external/depthcharge/Kconfig index 86b20abcaf..7a9c7d7596 100644 --- a/payloads/external/depthcharge/Kconfig +++ b/payloads/external/depthcharge/Kconfig @@ -62,4 +62,15 @@ config LP_DEFCONFIG_OVERRIDE instead. This is can be a convenience for development purposes, or if the defaults in defconfig are sufficient for your system. +config LP_DEFCONFIG_OVERRIDE_X64 + bool "Use default 64-bit libpayload config" + depends on !LP_DEFCONFIG_OVERRIDE + help + The Depthcharge makefile looks for a file config. in the + libpayload/configs directory. Say Y here to use the file defconfig + for 64-bit format instead. This can be convenient for development for + a new board, or if the defaults in 64-bit defconfig file (i.e. + defconfig_64) are sufficient for your system without creating + board.[name] file. + endif diff --git a/payloads/external/depthcharge/Makefile b/payloads/external/depthcharge/Makefile index af303da872..2328d6d2c6 100644 --- a/payloads/external/depthcharge/Makefile +++ b/payloads/external/depthcharge/Makefile @@ -30,6 +30,9 @@ BOARD:=$(notdir $(CONFIG_MAINBOARD_DIR)) ifeq ($(OVERRIDE_DEFCONFIG),y) libpayload_config=$(libpayload_dir)/configs/defconfig DEPTHCHARGE_LIBPAYLOAD_MSG="Depthcharge: Using default defconfig for libpayload" +else ifeq ($(OVERRIDE_DEFCONFIG_64),y) +libpayload_config=$(libpayload_dir)/configs/defconfig_64 +DEPTHCHARGE_LIBPAYLOAD_MSG="Depthcharge: Using default defconfig for 64-bit libpayload" else libpayload_config=$(libpayload_dir)/configs/config.$(BOARD) DEPTHCHARGE_LIBPAYLOAD_MSG="Depthcharge: Using $(libpayload_dir)/configs/config.$(BOARD)" diff --git a/payloads/libpayload/configs/defconfig_64 b/payloads/libpayload/configs/defconfig_64 new file mode 100644 index 0000000000..9db83c0635 --- /dev/null +++ b/payloads/libpayload/configs/defconfig_64 @@ -0,0 +1,9 @@ +CONFIG_LP_ARCH_X86_64=y +# CONFIG_LP_MULTIBOOT is not set +CONFIG_LP_COREBOOT_VIDEO_CONSOLE=y +CONFIG_LP_USB=y +CONFIG_LP_USB_UHCI=y +CONFIG_LP_USB_OHCI=y +CONFIG_LP_USB_EHCI=y +CONFIG_LP_USB_XHCI=y +CONFIG_LP_HEAP_SIZE=1048576 diff --git a/payloads/libpayload/curses/Makefile.mk b/payloads/libpayload/curses/Makefile.mk index 99f8d70e05..8c8c401c65 100644 --- a/payloads/libpayload/curses/Makefile.mk +++ b/payloads/libpayload/curses/Makefile.mk @@ -38,7 +38,10 @@ includes-$(CONFIG_LP_TINYCURSES) += curses.h ifeq ($(CONFIG_LP_PDCURSES),y) PDCURSES := PDCurses -INCLUDES += -D_LP64=0 -Icurses/$(PDCURSES) -Icurses/pdcurses-backend -Icurses/menu -Icurses/form +ifneq ($(CONFIG_LP_ARCH_X86_64),y) +INCLUDES += -D_LP64=0 +endif +INCLUDES += -Icurses/$(PDCURSES) -Icurses/pdcurses-backend -Icurses/menu -Icurses/form endif libcurses-$(CONFIG_LP_PDCURSES) += pdcurses-backend/pdcdisp.c