# SPDX-License-Identifier: GPL-2.0
#
# From Coreboot src/northbridge/intel/sandybridge/Kconfig
#
# Copyright (C) 2010 Google Inc.
#

config NORTHBRIDGE_INTEL_IVYBRIDGE
	bool
	select CACHE_MRC_BIN if HAVE_MRC
	imply HAVE_INTEL_ME
	imply ENABLE_MRC_CACHE
	imply AHCI_PCI
	imply ICH_SPI
	imply INTEL_ICH6_GPIO
	imply SCSI
	imply SCSI_AHCI
	imply SPI_FLASH
	imply USB
	imply USB_EHCI_HCD
	imply VIDEO_VESA

if NORTHBRIDGE_INTEL_IVYBRIDGE

config DCACHE_RAM_BASE
	default 0xff7e0000

config DCACHE_RAM_SIZE
	default 0x20000

config DCACHE_RAM_MRC_VAR_SIZE
	default 0x4000

config CPU_SPECIFIC_OPTIONS
	def_bool y
	select SMM_TSEG
	select X86_RAMTEST

config SMM_TSEG_SIZE
	hex
	default 0x800000

config ENABLE_VMX
	bool "Enable VMX for virtualization"
	default n
	help
	  Virtual Machine Extensions are provided in many x86 CPUs. These
	  provide various facilities for allowing a host OS to provide an
	  environment where potentially several guest OSes have only
	  limited access to the underlying hardware. This is achieved
	  without resorting to software trapping and/or instruction set
	  emulation (which would be very slow).

	  Intel's implementation of this is called VT-x. This option enables
	  VT-x this so that the OS that is booted by U-Boot can make use of
	  these facilities. If this option is not enabled, then the host OS
	  will be unable to support virtualisation, or it will run very
	  slowly.

config FSP_ADDR
	hex
	default 0xfff80000

config FSP_USE_UPD
	bool
	default n

config FSP_BROKEN_HOB
	bool
	default y

endif
