blob: e4595be3aeba81a9efee5d786929c0037143c1b1 [file] [log] [blame]
Simon Glass8ef07572014-11-12 22:42:07 -07001#
2# From Coreboot src/northbridge/intel/sandybridge/Kconfig
3#
4# Copyright (C) 2010 Google Inc.
5#
6# SPDX-License-Identifier: GPL-2.0
7
8
9config NORTHBRIDGE_INTEL_SANDYBRIDGE
10 bool
11 select CACHE_MRC_BIN
12 select CPU_INTEL_MODEL_206AX
13
14config NORTHBRIDGE_INTEL_IVYBRIDGE
15 bool
16 select CACHE_MRC_BIN
17 select CPU_INTEL_MODEL_306AX
18
19if NORTHBRIDGE_INTEL_SANDYBRIDGE
20
21config VGA_BIOS_ID
22 string
23 default "8086,0106"
24
25config CACHE_MRC_SIZE_KB
26 int
27 default 256
28
Simon Glass8ef07572014-11-12 22:42:07 -070029config DCACHE_RAM_BASE
30 hex
31 default 0xff7f0000
32
33config DCACHE_RAM_SIZE
34 hex
35 default 0x10000
36
37endif
38
39if NORTHBRIDGE_INTEL_IVYBRIDGE
40
41config VGA_BIOS_ID
42 string
43 default "8086,0166"
44
45config EXTERNAL_MRC_BLOB
46 bool
47 default n
48
49config CACHE_MRC_SIZE_KB
50 int
51 default 512
52
Simon Glass8ef07572014-11-12 22:42:07 -070053config DCACHE_RAM_BASE
54 hex
55 default 0xff7e0000
56
57config DCACHE_RAM_SIZE
58 hex
59 default 0x20000
60
61endif
62
63if NORTHBRIDGE_INTEL_SANDYBRIDGE || NORTHBRIDGE_INTEL_IVYBRIDGE
64
65config HAVE_MRC
66 bool "Add a System Agent binary"
67 help
68 Select this option to add a System Agent binary to
69 the resulting U-Boot image. MRC stands for Memory Reference Code.
70 It is a binary blob which U-Boot uses to set up SDRAM.
71
72 Note: Without this binary U-Boot will not be able to set up its
73 SDRAM so will not boot.
74
75config DCACHE_RAM_MRC_VAR_SIZE
76 hex
77 default 0x4000
78 help
79 This is the amount of CAR (Cache as RAM) reserved for use by the
80 memory reference code. This should be set to 16KB (0x4000 hex)
81 so that MRC has enough space to run.
82
83config MRC_FILE
84 string "Intel System Agent path and filename"
85 depends on HAVE_MRC
86 default "systemagent-ivybridge.bin" if NORTHBRIDGE_INTEL_IVYBRIDGE
87 default "systemagent-sandybridge.bin" if NORTHBRIDGE_INTEL_SANDYBRIDGE
88 help
89 The path and filename of the file to use as System Agent
90 binary.
91
92config CPU_SPECIFIC_OPTIONS
93 def_bool y
94 select SMM_TSEG
95 select ARCH_BOOTBLOCK_X86_32
96 select ARCH_ROMSTAGE_X86_32
97 select ARCH_RAMSTAGE_X86_32
98 select SMP
99 select SSE2
100 select UDELAY_LAPIC
101 select CPU_MICROCODE_IN_CBFS
102 select TSC_SYNC_MFENCE
103 select HAVE_INTEL_ME
Simon Glass65dd74a2014-11-12 22:42:28 -0700104 select X86_RAMTEST
Simon Glass8ef07572014-11-12 22:42:07 -0700105
106config SMM_TSEG_SIZE
107 hex
108 default 0x800000
109
110config ENABLE_VMX
111 bool "Enable VMX for virtualization"
112 default n
113 help
114 Virtual Machine Extensions are provided in many x86 CPUs. These
115 provide various facilities for allowing a host OS to provide an
116 environment where potentially several guest OSes have only
117 limited access to the underlying hardware. This is achieved
118 without resorting to software trapping and/or instruction set
119 emulation (which would be very slow).
120
121 Intel's implementation of this is called VT-x. This option enables
122 VT-x this so that the OS that is booted by U-Boot can make use of
123 these facilities. If this option is not enabled, then the host OS
124 will be unable to support virtualisation, or it will run very
125 slowly.
126
127endif
128
129config CPU_INTEL_SOCKET_RPGA989
130 bool
131
132if CPU_INTEL_SOCKET_RPGA989
133
134config SOCKET_SPECIFIC_OPTIONS # dummy
135 def_bool y
136 select MMX
137 select SSE
138 select CACHE_AS_RAM
139
140config CACHE_MRC_BIN
141 bool
142 default n
143
144endif