# SPDX-License-Identifier: MIT
#.........................................................................
#                                WARNING
#
# This file is a kernel configuration fragment, and not a full kernel
# configuration file.  The final kernel configuration is made up of
# an assembly of processed fragments, each of which is designed to
# capture a specific part of the final configuration (e.g. platform
# configuration, feature configuration, and board specific hardware
# configuration).  For more information on kernel configuration, please
# consult the product documentation.
#
#.........................................................................

#
# Processor type and features
#
CONFIG_MCORE2=y
CONFIG_SMP=y
CONFIG_SCHED_SMT=y

CONFIG_NUMA=y
CONFIG_ACPI_NUMA=y
CONFIG_NODES_SHIFT=6

CONFIG_EXPERT=y
CONFIG_PROCESSOR_SELECT=y
CONFIG_CPU_SUP_INTEL=y
CONFIG_X86_EXTENDED_PLATFORM=y
CONFIG_KSM=y
CONFIG_X86_CHECK_BIOS_CORRUPTION=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y

CONFIG_X86_MCE=y
CONFIG_X86_MCE_INTEL=y
CONFIG_X86_MCELOG_LEGACY=y

CONFIG_MEMORY_FAILURE=y
CONFIG_HWPOISON_INJECT=m

CONFIG_X86_INTEL_LPSS=y
#
# I2C options
#
CONFIG_I2C_DESIGNWARE_CORE=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_PCI=y

#
# PC SMBus host controller drivers
#
CONFIG_I2C_I801=m
CONFIG_I2C_ISCH=m
CONFIG_I2C_ISMT=m

#
# Power management and ACPI options
#
CONFIG_PM=y

CONFIG_HIBERNATION=y

#
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
CONFIG_LPC_ICH=m
CONFIG_LPC_SCH=m

#
# GPIO drivers
#
CONFIG_GPIOLIB=y
CONFIG_GPIO_SCH=m
CONFIG_GPIO_ICH=m
CONFIG_GPIO_GENERIC_PLATFORM=m

#
# x86 CPU frequency scaling drivers
#
CONFIG_X86_INTEL_PSTATE=y
CONFIG_X86_PCC_CPUFREQ=m
CONFIG_X86_ACPI_CPUFREQ=m
CONFIG_CPU_FREQ_GOV_POWERSAVE=m

#
# Bus options (PCI etc.)
#
CONFIG_PCI=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_MSI=y
CONFIG_PCI_REALLOC_ENABLE_AUTO=y

CONFIG_HOTPLUG_PCI=y
CONFIG_HOTPLUG_PCI_ACPI=y

CONFIG_PCIEPORTBUS=y
CONFIG_PCIEAER=y
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y

CONFIG_PCI_STUB=m
CONFIG_PCI_IOV=y
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
CONFIG_HOTPLUG_PCI_PCIE=y

#
#SD/MMC
#
CONFIG_MMC=y
CONFIG_MMC_BLOCK=y
CONFIG_MMC_BLOCK_MINORS=8
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_PCI=y
CONFIG_MMC_SDHCI_ACPI=y
CONFIG_MMC_SDHCI_PLTFM=y

#
# Serial ATA and Parallel ATA drivers
#
CONFIG_ATA=y
CONFIG_ATA_PIIX=y
CONFIG_ATA_GENERIC=m
CONFIG_SATA_AHCI=y
CONFIG_SATA_AHCI_PLATFORM=y

#
# SCSI Transports
#
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_SAS_ATTRS=y
CONFIG_SCSI_SAS_LIBSAS=y
CONFIG_SCSI_SAS_ATA=y
CONFIG_SCSI_SAS_HOST_SMP=y
CONFIG_SCSI_ISCI=y
CONFIG_SCSI_MPT2SAS=y

#
# EEPROM support
#
CONFIG_EEPROM_LEGACY=m

#
# Intel Wireless WiFi Next Gen AGN
#
CONFIG_IWLWIFI_DEBUG=n
CONFIG_IWLDVM=m
CONFIG_IWLMVM=m
CONFIG_HOSTAP=y

#
# Realtek 8723BE PCI WiFi
#
CONFIG_RTL8723BE=m

#
# nvram support
#
CONFIG_NVRAM=m

#
# Multiple devices driver support
#
CONFIG_MD=y
CONFIG_BLK_DEV_MD=y
CONFIG_MD_RAID456=y

#
# Hardware Monitoring support
#
CONFIG_HWMON=y
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_CORETEMP=m

#
# Watchdog Device Drivers
#
CONFIG_I6300ESB_WDT=m
CONFIG_IE6XX_WDT=m
CONFIG_ITCO_WDT=m
CONFIG_ITCO_VENDOR_SUPPORT=y
CONFIG_WDAT_WDT=m

#
# Input device support
#
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=y
CONFIG_INPUT_ATLAS_BTNS=y

#
# PC SMBus host controller drivers
#
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=m

#
# USB Serial Converter support
#
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_CONSOLE=y
CONFIG_USB_SERIAL_PL2303=m
CONFIG_USB_SERIAL_FTDI_SIO=m
CONFIG_USB_SERIAL_CP210X=m
CONFIG_USB_SERIAL_GENERIC=y

#
# Real Time Clock
#
CONFIG_RTC_CLASS=y
CONFIG_RTC_DRV_CMOS=y
CONFIG_RTC_INTF_DEV_UIE_EMUL=y

#
# DMA Engine support
#
CONFIG_DMADEVICES=y
CONFIG_ASYNC_TX_DMA=y
CONFIG_DW_DMAC=y
CONFIG_DW_DMAC_CORE=y
CONFIG_DW_DMAC_PCI=y
CONFIG_INTEL_IDMA64=m

#
# X86 Platform Specific Device Drivers
#
CONFIG_INTEL_IPS=m

#
# Firmware Drivers
#
CONFIG_DMI_SYSFS=m

#
# Library routines
#
CONFIG_CRC_T10DIF=m

#
# Digest
#
CONFIG_CRYPTO_CRCT10DIF=m

#
# Ciphers
#
CONFIG_CRYPTO_AES_NI_INTEL=m

#
# HID
#
CONFIG_HID=y
CONFIG_I2C_HID_ACPI=y
CONFIG_HID_SENSOR_HUB=y

#
# Serial
#
CONFIG_SERIAL_8250_DW=y
CONFIG_X86_INTEL_MID=y
CONFIG_SERIAL_8250_MID=y
CONFIG_HSU_DMA_PCI=y

#
#SPI
#
CONFIG_SPI_DESIGNWARE=m
CONFIG_SPI_DW_DMA=y
CONFIG_SPI_DW_PCI=m
CONFIG_SPI_DW_MMIO=m
CONFIG_SPI_PXA2XX=y
CONFIG_SPI_PXA2XX_PCI=y

CONFIG_VT_HW_CONSOLE_BINDING=y

#
# MTD SPI
#
CONFIG_MTD_SPI_NOR=m
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
CONFIG_SPI_INTEL_PCI=m
CONFIG_SPI_INTEL_PLATFORM=m

# Bluetooth device drivers
CONFIG_BT_HCIBTUSB=m

# Realtek SDIO Wi-Fi/Bluetooth driver
CONFIG_RTL8723BS=m

# PWM Support
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
CONFIG_PWM_LPSS=y
CONFIG_PWM_LPSS_PCI=y
CONFIG_PWM_LPSS_PLATFORM=y
CONFIG_PWM_DWC=m

#
# USB Device Class drivers
#
CONFIG_USB_ACM=m

# USB OTG
CONFIG_USB_DWC3=m
CONFIG_USB_DWC3_PCI=m
CONFIG_USB_DWC3_DUAL_ROLE=y
CONFIG_USB_GADGET=y
CONFIG_USB_LIBCOMPOSITE=m
CONFIG_USB_MASS_STORAGE=m
CONFIG_USB_G_PRINTER=m
CONFIG_USB_PHY=y
CONFIG_NOP_USB_XCEIV=y

# NVMe support
CONFIG_BLK_DEV_NVME=y
CONFIG_NVME_HWMON=y

# PMC
CONFIG_MFD_INTEL_PMC_BXT=m

#CMA
CONFIG_CMA=y
CONFIG_DMA_CMA=y

# Realtek Network Driver
CONFIG_STAGING=y
CONFIG_NET_VENDOR_REALTEK=y
CONFIG_R8169=m

# Marvell WiFi-Ex Driver for PCIE 8766/8897/8997
CONFIG_MWIFIEX=m
CONFIG_MWIFIEX_PCIE=m

# Radeon support
CONFIG_DRM_RADEON=m
CONFIG_DRM_RADEON_USERPTR=y
CONFIG_FB_RADEON=m
CONFIG_FB_RADEON_I2C=y
CONFIG_FB_RADEON_BACKLIGHT=y

# Touchscreen and zforce
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_ZFORCE=m

# NVIDIA GeForce 210
CONFIG_DRM_NOUVEAU=m
CONFIG_DRM_NOUVEAU_BACKLIGHT=y

# AST server chips
CONFIG_DRM_AST=m

# x86 CPU resource control support
CONFIG_X86_CPU_RESCTRL=y

# Intel RAPL
CONFIG_IOSF_MBI=y
CONFIG_POWERCAP=y
CONFIG_INTEL_RAPL=m

CONFIG_INTEL_VSEC=m

CONFIG_EXTCON=y

# MII PHY device drivers
CONFIG_MARVELL_PHY=y
CONFIG_MARVELL_10G_PHY=y
CONFIG_MAXLINEAR_GPHY=y
CONFIG_DP83867_PHY=y
