# This image was built using coreboot 4.3-1778-g9551bed-dirty
CONFIG_LOCALVERSION="RAPTOR-NORMAL"
CONFIG_CBFS_PREFIX="normal"
CONFIG_USE_OPTION_TABLE=y
CONFIG_COLLECT_TIMESTAMPS=y
CONFIG_BOOTBLOCK_NORMAL=y
CONFIG_UPDATE_IMAGE=y
CONFIG_VENDOR_ASUS=y
# CONFIG_ONBOARD_VGA_IS_PRIMARY is not set
CONFIG_BOARD_ASUS_KFSN4_DRE_K8=y
# CONFIG_POST_IO is not set
# CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT is not set
# CONFIG_POST_DEVICE is not set
CONFIG_DRIVERS_PS2_KEYBOARD=y
CONFIG_CONSOLE_POST=y
CONFIG_UART_PCI_ADDR=0x0
# CONFIG_CONSOLE_SERIAL is not set
# CONFIG_GENERATE_PIRQ_TABLE is not set
CONFIG_MAINBOARD_SMBIOS_PRODUCT_NAME="KFSN4-DRE"
CONFIG_SEABIOS_MASTER=y
CONFIG_SEABIOS_VGA_COREBOOT=y
CONFIG_DEBUG_CBFS=y
CONFIG_DEBUG_RAM_SETUP=y
CONFIG_DEBUG_CAR=y
CONFIG_DEBUG_ACPI=y
