#
# Automatically generated make config: don't edit
# libpayload version: 0.2.0
# Thu May  2 16:10:03 2013
#

#
# Generic Options
#
# CONFIG_EXPERIMENTAL is not set
# CONFIG_OBSOLETE is not set
# CONFIG_DEVELOPER is not set
# CONFIG_CHROMEOS is not set

#
# Architecture Options
#
# CONFIG_ARCH_ARMV7 is not set
# CONFIG_ARCH_POWERPC is not set
CONFIG_ARCH_X86=y
# CONFIG_MEMMAP_RAM_ONLY is not set
# CONFIG_MULTIBOOT is not set

#
# Standard Libraries
#
CONFIG_LIBC=y
CONFIG_CURSES=y
# CONFIG_TINYCURSES is not set
CONFIG_PDCURSES=y
CONFIG_CBFS=y
CONFIG_LZMA=y

#
# Console Options
#
# CONFIG_SKIP_CONSOLE_INIT is not set
CONFIG_CBMEM_CONSOLE=y
CONFIG_SERIAL_CONSOLE=y
CONFIG_X86_SERIAL_CONSOLE=y
CONFIG_SERIAL_IOBASE=0x3f8
# CONFIG_SERIAL_SET_SPEED is not set
# CONFIG_SERIAL_ACS_FALLBACK is not set
CONFIG_VIDEO_CONSOLE=y
CONFIG_VGA_VIDEO_CONSOLE=y
# CONFIG_GEODELX_VIDEO_CONSOLE is not set
CONFIG_COREBOOT_VIDEO_CONSOLE=y
CONFIG_PC_KEYBOARD=y
CONFIG_PC_KEYBOARD_LAYOUT_US=y
# CONFIG_PC_KEYBOARD_LAYOUT_DE is not set

#
# Drivers
#
CONFIG_PCI=y
CONFIG_NVRAM=y
# CONFIG_RTC_PORT_EXTENDED_VIA is not set
CONFIG_SPEAKER=y
CONFIG_STORAGE=y
# CONFIG_STORAGE_64BIT_LBA is not set
CONFIG_STORAGE_ATA=y
CONFIG_STORAGE_ATAPI=y
CONFIG_STORAGE_AHCI=y
CONFIG_STORAGE_AHCI_ONLY_TESTED=y
CONFIG_USB=y
CONFIG_USB_UHCI=y
CONFIG_USB_OHCI=y
CONFIG_USB_EHCI=y
CONFIG_USB_XHCI=y
CONFIG_USB_HID=y
CONFIG_USB_HUB=y
CONFIG_USB_MSC=y
CONFIG_USB_PCI=y
# CONFIG_USB_MEMORY is not set
# CONFIG_BIG_ENDIAN is not set
CONFIG_LITTLE_ENDIAN=y
CONFIG_IO_ADDRESS_SPACE=y
CONFIG_ARCH_SPECIFIC_OPTIONS=y
