# This image was built using coreboot 4.5-260-g3d302b0
CONFIG_CCACHE=y
CONFIG_USE_OPTION_TABLE=y
CONFIG_COLLECT_TIMESTAMPS=y
CONFIG_BOOTBLOCK_NORMAL=y
CONFIG_VENDOR_LENOVO=y
CONFIG_CBFS_SIZE=0x5f0000
CONFIG_HAVE_IFD_BIN=y
CONFIG_HAVE_ME_BIN=y
CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT=y
CONFIG_HAVE_GBE_BIN=y
CONFIG_BOARD_LENOVO_X220=y
CONFIG_UART_PCI_ADDR=0
CONFIG_ENABLE_VMX=y
CONFIG_IFD_BIN_PATH="x220_blobs/descriptor.bin"
CONFIG_ME_BIN_PATH="x220_blobs/me.bin"
CONFIG_GBE_BIN_PATH="x220_blobs/gbe.bin"
# CONFIG_ON_DEVICE_ROM_LOAD is not set
CONFIG_PCIEXP_CLK_PM=y
CONFIG_PCIEXP_L1_SUB_STATE=y
CONFIG_LPC_TPM=y
CONFIG_PAYLOAD_ELF=y
CONFIG_PAYLOAD_FILE="grub2.elf"
CONFIG_COREINFO_SECONDARY_PAYLOAD=y
CONFIG_MEMTEST_SECONDARY_PAYLOAD=y
CONFIG_NVRAMCUI_SECONDARY_PAYLOAD=y
CONFIG_TINT_SECONDARY_PAYLOAD=y
