blob: 3abbddf98d826053a2aec921b476ed15dcc75212 [file] [log] [blame]
Angel Pons6e5aabd2020-03-23 23:44:42 +01001## SPDX-License-Identifier: GPL-2.0-only
Stefan Reinauer00636b02012-04-04 00:08:51 +02002
Alexandru Gagniucecf2eb42015-09-28 21:39:12 -07003config NORTHBRIDGE_INTEL_SANDYBRIDGE
Vladimir Serbinenko309fc4c2014-08-24 22:35:29 +02004 bool
Arthur Heymans7539b8c2017-12-24 10:42:57 +01005 select CACHE_MRC_SETTINGS
Vladimir Serbinenko309fc4c2014-08-24 22:35:29 +02006 select CPU_INTEL_MODEL_206AX
7 select HAVE_DEBUG_RAM_SETUP
Vladimir Serbinenkodd2bc3f2014-10-31 09:16:31 +01008 select INTEL_GMA_ACPI
Vladimir Serbinenko309fc4c2014-08-24 22:35:29 +02009
Nico Huber772a1542019-05-10 16:48:14 +020010if NORTHBRIDGE_INTEL_SANDYBRIDGE
Vladimir Serbinenko144eea02016-02-10 02:36:04 +010011
Patrick Rudolph1ee3dbc2020-02-28 13:11:13 +010012config SANDYBRIDGE_VBOOT_IN_ROMSTAGE
13 bool
14 default n
15 help
16 Selected by boards to force VBOOT_STARTS_IN_ROMSTAGE.
17
18config SANDYBRIDGE_VBOOT_IN_BOOTBLOCK
19 depends on VBOOT
20 depends on !SANDYBRIDGE_VBOOT_IN_ROMSTAGE
21 bool "Start verstage in bootblock"
22 default y
23 select VBOOT_STARTS_IN_BOOTBLOCK
Patrick Rudolph1ee3dbc2020-02-28 13:11:13 +010024 help
25 Sandy Bridge can either start verstage in a separate stage
26 right after the bootblock has run or it can start it
27 after romstage for compatibility reasons.
28 Sandy Bridge however uses a mrc.bin to initialize memory which
29 needs to be located at a fixed offset. Therefore even with
30 a separate verstage starting after the bootblock that same
31 binary is used meaning a jump is made from RW to the RO region
32 and back to the RW region after the binary is done.
33
Julius Werner1210b412017-03-27 19:26:32 -070034config VBOOT
Patrick Rudolph1ee3dbc2020-02-28 13:11:13 +010035 select VBOOT_MUST_REQUEST_DISPLAY
36 select VBOOT_STARTS_IN_ROMSTAGE if !SANDYBRIDGE_VBOOT_IN_BOOTBLOCK
Julius Werner1210b412017-03-27 19:26:32 -070037
Vladimir Serbinenko144eea02016-02-10 02:36:04 +010038config USE_NATIVE_RAMINIT
39 bool "Use native raminit"
40 default y
41 help
42 Select if you want to use coreboot implementation of raminit rather than
43 System Agent/MRC.bin. You should answer Y.
Stefan Reinauer00636b02012-04-04 00:08:51 +020044
Patrick Rudolphb794a692017-08-08 13:13:51 +020045config NATIVE_RAMINIT_IGNORE_MAX_MEM_FUSES
46 bool "Ignore vendor programmed fuses that limit max. DRAM frequency"
47 default n
48 depends on USE_NATIVE_RAMINIT
49 help
50 Ignore the mainboard's vendor programmed fuses that might limit the
51 maximum DRAM frequency. By selecting this option the fuses will be
52 ignored and the only limits on DRAM frequency are set by RAM's SPD and
53 hard fuses in southbridge's clockgen.
54 Disabled by default as it might causes system instability.
55 Handle with care!
56
Vagiz Trakhanov771be482017-10-02 10:02:35 +000057config NATIVE_RAMINIT_IGNORE_XMP_MAX_DIMMS
58 bool "Ignore XMP profile max DIMMs per channel"
59 default n
60 depends on USE_NATIVE_RAMINIT
61 help
62 Ignore the max DIMMs per channel restriciton defined in XMP profiles.
63 Disabled by default as it might cause system instability.
64 Handle with care!
65
Angel Pons3170e9c2020-12-12 16:22:18 +010066config NATIVE_RAMINIT_IGNORE_XMP_REQUESTED_VOLTAGE
67 bool "Ignore XMP profile requested voltage"
68 default n
69 depends on USE_NATIVE_RAMINIT
70 help
71 Native raminit only supports 1.5V operation, but there are DIMMs
72 which request 1.65V operation in XMP profiles. This option allows
73 raminit to use these XMP profiles anyway, instead of falling back
74 to non-XMP settings.
75 Disabled by default because it allows forcing memory to run out of
76 specification. Consider this to be an overclocking option.
77 Handle with care!
78
Martin Roth59ff3402016-02-09 09:06:46 -070079config CBFS_SIZE
Martin Roth59ff3402016-02-09 09:06:46 -070080 default 0x100000
81
Stefan Reinauer00636b02012-04-04 00:08:51 +020082config VGA_BIOS_ID
83 string
84 default "8086,0106"
85
Shelley Chen4e9bb332021-10-20 15:43:45 -070086config ECAM_MMCONF_BASE_ADDRESS
Nico Huber2b5c0212017-07-29 01:10:49 +020087 default 0xf0000000
88 help
Arthur Heymans742a0e92018-01-29 16:34:46 +010089 The MRC blob requires it to be at 0xf0000000.
Nico Huber2b5c0212017-07-29 01:10:49 +020090
Shelley Chen4e9bb332021-10-20 15:43:45 -070091config ECAM_MMCONF_BUS_NUMBER
Angel Pons10f9b832021-01-20 14:58:32 +010092 int
93 default 64
94
Stefan Reinauer00636b02012-04-04 00:08:51 +020095config DCACHE_RAM_BASE
96 hex
Kyösti Mälkki9551bed2016-07-20 10:49:38 +030097 default 0xfefe0000
Stefan Reinauer00636b02012-04-04 00:08:51 +020098
Arthur Heymans67d59d12019-11-16 20:06:20 +010099config DCACHE_BSP_STACK_SIZE
100 hex
Arthur Heymans8d821092019-11-25 06:56:04 +0100101 default 0x10000
102 help
103 The amount of BSP stack anticipated in bootblock and
104 other stages.
Arthur Heymans01c83a22019-06-05 13:36:55 +0200105
106if USE_NATIVE_RAMINIT
107
Stefan Reinauer00636b02012-04-04 00:08:51 +0200108config DCACHE_RAM_SIZE
109 hex
110 default 0x20000
111
Kyösti Mälkki9551bed2016-07-20 10:49:38 +0300112config DCACHE_RAM_MRC_VAR_SIZE
113 hex
114 default 0x0
115
Angel Pons09fc4b92020-11-19 12:02:07 +0100116config RAMINIT_ALWAYS_ALLOW_DLL_OFF
117 bool "Also enable memory DLL-off mode on desktops and servers"
118 default n
119 help
120 If enabled, allow enabling DLL-off mode for platforms other than
121 mobile. Saves power at the expense of higher exit latencies. Has
122 no effect on mobile platforms, where DLL-off is always allowed.
123 Power down is disabled for stability when running at high clocks.
124
Patrick Rudolphdd662872017-10-28 18:20:11 +0200125config RAMINIT_ENABLE_ECC
126 bool "Enable ECC if supported"
127 default y
128 help
129 Enable ECC if supported by both, host and RAM.
130
Kyösti Mälkki9551bed2016-07-20 10:49:38 +0300131endif # USE_NATIVE_RAMINIT
132
133if !USE_NATIVE_RAMINIT
134
Kyösti Mälkki9551bed2016-07-20 10:49:38 +0300135config DCACHE_RAM_SIZE
136 hex
Arthur Heymans01c83a22019-06-05 13:36:55 +0200137 default 0x17000
Kyösti Mälkkifbdb0852013-07-01 11:21:53 +0300138
Stefan Reinauer00636b02012-04-04 00:08:51 +0200139config DCACHE_RAM_MRC_VAR_SIZE
140 hex
Arthur Heymans01c83a22019-06-05 13:36:55 +0200141 default 0x9000
Stefan Reinauer00636b02012-04-04 00:08:51 +0200142
Stefan Reinauer00636b02012-04-04 00:08:51 +0200143config MRC_FILE
144 string "Intel System Agent path and filename"
Patrick Georgi26e24cc2015-05-05 22:27:25 +0200145 default "3rdparty/blobs/northbridge/intel/sandybridge/systemagent-r6.bin"
Stefan Reinauer00636b02012-04-04 00:08:51 +0200146 help
147 The path and filename of the file to use as System Agent
148 binary.
149
Kyösti Mälkki9551bed2016-07-20 10:49:38 +0300150endif # !USE_NATIVE_RAMINIT
Kyösti Mälkki0306e6a2016-06-23 12:41:40 +0300151
Nico Huber612a8672019-02-19 19:11:29 +0100152config INTEL_GMA_BCLV_OFFSET
153 default 0x48254
154
Angel Ponsd9e58dc2021-01-20 01:22:20 +0100155config FIXED_MCHBAR_MMIO_BASE
156 default 0xfed10000
157
158config FIXED_DMIBAR_MMIO_BASE
159 default 0xfed18000
160
161config FIXED_EPBAR_MMIO_BASE
162 default 0xfed19000
163
Stefan Reinauer00636b02012-04-04 00:08:51 +0200164endif