1 ## SPDX-License-Identifier: GPL-2.0-only
3 config NORTHBRIDGE_INTEL_SANDYBRIDGE
5 select CACHE_MRC_SETTINGS
6 select CPU_INTEL_MODEL_206AX
7 select HAVE_DEBUG_RAM_SETUP
9 select NEED_SMALL_2MB_PAGE_TABLES
12 if NORTHBRIDGE_INTEL_SANDYBRIDGE
14 config CHIPSET_DEVICETREE
15 default "northbridge/intel/sandybridge/chipset.cb"
17 config SANDYBRIDGE_VBOOT_IN_ROMSTAGE
21 Selected by boards to force VBOOT_STARTS_IN_ROMSTAGE.
23 config SANDYBRIDGE_VBOOT_IN_BOOTBLOCK
25 depends on !SANDYBRIDGE_VBOOT_IN_ROMSTAGE
26 bool "Start verstage in bootblock"
28 select VBOOT_STARTS_IN_BOOTBLOCK
30 Sandy Bridge can either start verstage in a separate stage
31 right after the bootblock has run or it can start it
32 after romstage for compatibility reasons.
33 Sandy Bridge however uses a mrc.bin to initialize memory which
34 needs to be located at a fixed offset. Therefore even with
35 a separate verstage starting after the bootblock that same
36 binary is used meaning a jump is made from RW to the RO region
37 and back to the RW region after the binary is done.
40 select VBOOT_MUST_REQUEST_DISPLAY
41 select VBOOT_STARTS_IN_ROMSTAGE if !SANDYBRIDGE_VBOOT_IN_BOOTBLOCK
43 config USE_NATIVE_RAMINIT
44 bool "Use native raminit"
47 Select if you want to use coreboot implementation of raminit rather than
48 System Agent/MRC.bin. You should answer Y.
50 config NATIVE_RAMINIT_IGNORE_MAX_MEM_FUSES
51 bool "[OVERCLOCK] Ignore CAPID fuses that limit max DRAM frequency"
53 depends on USE_NATIVE_RAMINIT
55 Ignore the CAPID fuses that might limit the maximum DRAM frequency
56 on overclocking-capable parts. By selecting this option, the fuse
57 values will be ignored and the only limits on DRAM frequency are
58 determined by SPD values, per-board devicetree settings and hard
59 limits in the northbridge's MPLL. Disabled by default as it can
61 Consider this to be an overclocking option. Handle with care!
63 config NATIVE_RAMINIT_IGNORE_XMP_MAX_DIMMS
64 bool "[OVERCLOCK] Ignore XMP max DIMMs per channel"
66 depends on USE_NATIVE_RAMINIT
68 The more DIMMs are in a channel, the more signal integrity worsens.
69 Because of this, some DIMMs only support running at XMP timings if
70 the number of DIMMs in the channel is below a limit. This limit is
71 usually 1, i.e. there must be no other DIMMs in the channel to use
72 XMP timings. Otherwise, non-XMP timings are used.
73 When this option is enabled, the max DIMMs per channel restriction
74 in XMP is ignored. Depending on available margins, this could work
75 but it can also result in system instability.
76 Consider this to be an overclocking option. Handle with care!
78 config NATIVE_RAMINIT_IGNORE_XMP_REQUESTED_VOLTAGE
79 bool "Ignore XMP profile requested voltage"
81 depends on USE_NATIVE_RAMINIT
83 Native raminit only supports 1.5V operation, but there are DIMMs
84 which request 1.65V operation in XMP profiles. This option allows
85 raminit to use these XMP profiles anyway, instead of falling back
87 Disabled by default because it allows forcing memory to run out of
88 specification. Consider this to be an overclocking option.
98 config ECAM_MMCONF_BASE_ADDRESS
101 The MRC blob requires it to be at 0xf0000000.
103 config ECAM_MMCONF_BUS_NUMBER
107 # This number must be equal or lower than what's reported in ACPI PCI _CRS
108 config DOMAIN_RESOURCE_32BIT_LIMIT
109 default ECAM_MMCONF_BASE_ADDRESS
111 config DCACHE_RAM_BASE
115 config DCACHE_BSP_STACK_SIZE
119 The amount of BSP stack anticipated in bootblock and
122 if USE_NATIVE_RAMINIT
124 config DCACHE_RAM_SIZE
128 config DCACHE_RAM_MRC_VAR_SIZE
132 config RAMINIT_ALWAYS_ALLOW_DLL_OFF
133 bool "Also enable memory DLL-off mode on desktops and servers"
136 If enabled, allow enabling DLL-off mode for platforms other than
137 mobile. Saves power at the expense of higher exit latencies. Has
138 no effect on mobile platforms, where DLL-off is always allowed.
139 Power down is disabled for stability when running at high clocks.
141 config RAMINIT_ENABLE_ECC
142 bool "Enable ECC if supported"
145 Enable ECC if supported by both, host and RAM.
147 endif # USE_NATIVE_RAMINIT
149 if !USE_NATIVE_RAMINIT
151 config DCACHE_RAM_SIZE
155 config DCACHE_RAM_MRC_VAR_SIZE
160 string "Intel System Agent path and filename"
161 default "3rdparty/blobs/northbridge/intel/sandybridge/systemagent-r6.bin"
163 The path and filename of the file to use as System Agent
166 endif # !USE_NATIVE_RAMINIT
168 config INTEL_GMA_BCLV_OFFSET
171 config FIXED_MCHBAR_MMIO_BASE
174 config FIXED_DMIBAR_MMIO_BASE
177 config FIXED_EPBAR_MMIO_BASE
180 config PRERAM_CBFS_CACHE_SIZE
184 prompt "Default IGD Memory Allocation"
185 default IGD_DEFAULT_UMA_SIZE_32MB
187 The amount of system memory allocated for the integrated GPU if not
188 set via an option table.
190 config IGD_DEFAULT_UMA_SIZE_32MB
193 config IGD_DEFAULT_UMA_SIZE_64MB
196 config IGD_DEFAULT_UMA_SIZE_96MB
199 config IGD_DEFAULT_UMA_SIZE_128MB
204 config IGD_DEFAULT_UMA_INDEX
206 default 0 if IGD_DEFAULT_UMA_SIZE_32MB
207 default 1 if IGD_DEFAULT_UMA_SIZE_64MB
208 default 2 if IGD_DEFAULT_UMA_SIZE_96MB
209 default 3 if IGD_DEFAULT_UMA_SIZE_128MB