# This image was built using coreboot 4.6-1897-gaa8e5d36b1
CONFIG_CCACHE=y
CONFIG_USE_OPTION_TABLE=y
CONFIG_USE_BLOBS=y
CONFIG_VENDOR_LENOVO=y
CONFIG_CBFS_SIZE=0xfe0000
# CONFIG_ONBOARD_VGA_IS_PRIMARY is not set
CONFIG_HAVE_IFD_BIN=y
CONFIG_HAVE_ME_BIN=y
CONFIG_HAVE_GBE_BIN=y
CONFIG_BOARD_LENOVO_T430S=y
CONFIG_USBDEBUG=y
CONFIG_PCIEXP_L1_SUB_STATE=y
CONFIG_PCIEXP_CLK_PM=y
CONFIG_UART_PCI_ADDR=0
CONFIG_NATIVE_RAMINIT_IGNORE_MAX_MEM_FUSES=y
CONFIG_LOCK_SPI_FLASH_RO=y
# CONFIG_INTEL_CHIPSET_LOCKDOWN is not set
CONFIG_CHECK_ME=y
CONFIG_BOOTBLOCK_NORMAL=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_USBDEBUG_DEFAULT_PORT=2
CONFIG_USBDEBUG_DONGLE_FTDI_FT232H=y
# CONFIG_DRIVERS_INTEL_WIFI is not set
CONFIG_LPC_TPM=y
CONFIG_CONSOLE_POST=y
CONFIG_PAYLOAD_ELF=y
CONFIG_NVRAMCUI_SECONDARY_PAYLOAD=y
CONFIG_DEBUG_CBFS=y
CONFIG_DEBUG_RAM_SETUP=y
CONFIG_DEBUG_SMBUS=y
CONFIG_DEBUG_SMI=y
CONFIG_DEBUG_MALLOC=y
CONFIG_DEBUG_ACPI=y
CONFIG_DEBUG_SPI_FLASH=y
CONFIG_DEBUG_USBDEBUG=y
CONFIG_DEBUG_ADA_CODE=y
