blob: 67f7563a9267582e666c0fc97e392d80cd11f101 [file] [log] [blame]
Duncan Lauriec88c54c2014-04-30 16:36:13 -07001config SOC_INTEL_BROADWELL
2 bool
3 help
4 Intel Broadwell and Haswell ULT support.
5
6if SOC_INTEL_BROADWELL
7
8config CPU_SPECIFIC_OPTIONS
9 def_bool y
Aaron Durbin9e6d1432016-07-13 23:21:41 -050010 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Duncan Lauriec88c54c2014-04-30 16:36:13 -070011 select ARCH_BOOTBLOCK_X86_32
Stefan Reinauer77b16552015-01-14 19:51:47 +010012 select ARCH_VERSTAGE_X86_32
Duncan Lauriec88c54c2014-04-30 16:36:13 -070013 select ARCH_ROMSTAGE_X86_32
14 select ARCH_RAMSTAGE_X86_32
Aaron Durbine8e118d2016-08-12 15:00:10 -050015 select BOOT_DEVICE_SUPPORTS_WRITES
Duncan Lauriec88c54c2014-04-30 16:36:13 -070016 select CACHE_MRC_SETTINGS
Duncan Laurief059b242015-01-15 15:42:43 -080017 select MRC_SETTINGS_PROTECT
Sumeet R Pawnikarfa42d562020-05-08 22:18:09 +053018 select CPU_INTEL_COMMON
Duncan Lauriec88c54c2014-04-30 16:36:13 -070019 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Kyösti Mälkki4851bf22014-12-27 12:57:06 +020020 select SUPPORT_CPU_UCODE_IN_CBFS
Duncan Lauriec88c54c2014-04-30 16:36:13 -070021 select HAVE_SMI_HANDLER
Patrick Rudolph45022ae2018-10-01 19:17:11 +020022 select SOUTHBRIDGE_INTEL_COMMON_RESET
Arthur Heymans2abbe462019-06-04 14:12:01 +020023 select SOUTHBRIDGE_INTEL_COMMON_RTC
Kyösti Mälkkid1c69c62020-01-02 18:03:24 +020024 select SOUTHBRIDGE_INTEL_COMMON_SMBUS
Arthur Heymans47a66032019-10-25 23:43:14 +020025 select SOUTHBRIDGE_INTEL_COMMON_SPI_ICH9
Duncan Lauriec88c54c2014-04-30 16:36:13 -070026 select HAVE_USBDEBUG
27 select IOAPIC
Duncan Lauriec88c54c2014-04-30 16:36:13 -070028 select REG_SCRIPT
29 select PARALLEL_MP
Aaron Durbin16246ea2016-08-05 21:23:37 -050030 select RTC
Duncan Lauriec88c54c2014-04-30 16:36:13 -070031 select SMP
32 select SPI_FLASH
33 select SSE2
Duncan Lauriec88c54c2014-04-30 16:36:13 -070034 select TSC_SYNC_MFENCE
35 select UDELAY_TSC
Kyösti Mälkki5b15e012019-11-01 10:25:50 +020036 select TSC_MONOTONIC_TIMER
Stefan Reinauer9616f3c2015-04-29 10:45:22 -070037 select SOC_INTEL_COMMON
Sumeet R Pawnikarfa42d562020-05-08 22:18:09 +053038 select SOC_INTEL_COMMON_BLOCK
39 select SOC_INTEL_COMMON_BLOCK_CPU
40 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Stefan Tauneref8b9572018-09-06 00:34:28 +020041 select INTEL_DESCRIPTOR_MODE_CAPABLE
Duncan Laurie81a4c852015-09-08 16:10:30 -070042 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
Martin Roth3a543182015-09-28 15:27:24 -060043 select HAVE_SPI_CONSOLE_SUPPORT
Matt DeVillier773488f2017-10-18 12:27:25 -050044 select INTEL_GMA_ACPI
Nico Huber9faae2b2018-11-14 00:00:35 +010045 select HAVE_POWER_STATE_AFTER_FAILURE
46 select HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE
Arthur Heymans74f9fe62019-04-24 12:29:44 +020047 select NO_FIXED_XIP_ROM_SIZE
Duncan Lauriec88c54c2014-04-30 16:36:13 -070048
Youness Alaouib191c9f2017-05-08 15:22:03 -040049config PCIEXP_ASPM
50 bool
51 default y
52
Youness Alaoui71616782018-05-04 15:34:06 -040053config PCIEXP_AER
54 bool
55 default y
56
Youness Alaouib191c9f2017-05-08 15:22:03 -040057config PCIEXP_COMMON_CLOCK
58 bool
59 default y
60
61config PCIEXP_CLK_PM
62 bool
63 default y
64
65config PCIEXP_L1_SUB_STATE
66 bool
67 default y
68
Arthur Heymans4d56a062018-12-22 16:11:52 +010069config BROADWELL_VBOOT_IN_BOOTBLOCK
70 depends on VBOOT
71 bool "Start verstage in bootblock"
72 default y
73 select VBOOT_STARTS_IN_BOOTBLOCK
74 select VBOOT_SEPARATE_VERSTAGE
75 help
76 Broadwell can either start verstage in a separate stage
77 right after the bootblock has run or it can start it
78 after romstage for compatibility reasons.
79 Broadwell however uses a mrc.bin to initialse memory which
80 needs to be located at a fixed offset. Therefore even with
81 a separate verstage starting after the bootblock that same
82 binary is used meaning a jump is made from RW to the RO region
83 and back to the RW region after the binary is done.
84
Julius Werner1210b412017-03-27 19:26:32 -070085config VBOOT
Joel Kitching6672bd82019-04-10 16:06:21 +080086 select VBOOT_MUST_REQUEST_DISPLAY
Arthur Heymans4d56a062018-12-22 16:11:52 +010087 select VBOOT_STARTS_IN_ROMSTAGE if !BROADWELL_VBOOT_IN_BOOTBLOCK
Julius Werner1210b412017-03-27 19:26:32 -070088
Duncan Lauriec88c54c2014-04-30 16:36:13 -070089config MMCONF_BASE_ADDRESS
90 hex
91 default 0xf0000000
92
Duncan Lauriec88c54c2014-04-30 16:36:13 -070093config SMM_TSEG_SIZE
94 hex
95 default 0x800000
96
97config IED_REGION_SIZE
98 hex
99 default 0x400000
100
101config SMM_RESERVED_SIZE
102 hex
103 default 0x100000
104
105config VGA_BIOS_ID
106 string
107 default "8086,0406"
108
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700109config DCACHE_RAM_BASE
110 hex
111 default 0xff7c0000
112
113config DCACHE_RAM_SIZE
114 hex
115 default 0x10000
116 help
117 The size of the cache-as-ram region required during bootblock
118 and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
119 must add up to a power of 2.
120
121config DCACHE_RAM_MRC_VAR_SIZE
122 hex
123 default 0x30000
124 help
125 The amount of cache-as-ram region required by the reference code.
126
Arthur Heymans5bb15f12018-12-22 16:02:25 +0100127config DCACHE_BSP_STACK_SIZE
128 hex
129 default 0x2000
130 help
131 The amount of anticipated stack usage in CAR by bootblock and
132 other stages.
133
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700134config HAVE_MRC
135 bool "Add a Memory Reference Code binary"
136 help
137 Select this option to add a Memory Reference Code binary to
138 the resulting coreboot image.
139
140 Note: Without this binary coreboot will not work
141
142if HAVE_MRC
143
144config MRC_FILE
145 string "Intel Memory Reference Code path and filename"
146 depends on HAVE_MRC
147 default "mrc.bin"
148 help
149 The filename of the file to use as Memory Reference Code binary.
150
151config MRC_BIN_ADDRESS
152 hex
153 default 0xfffa0000
154
Arthur Heymans4d56a062018-12-22 16:11:52 +0100155# The UEFI System Agent binary needs to be at a fixed offset in the flash
156# and can therefore only reside in the COREBOOT fmap region
157config RO_REGION_ONLY
158 string
159 depends on VBOOT
160 default "mrc.bin"
161
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700162endif # HAVE_MRC
163
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700164config PRE_GRAPHICS_DELAY
165 int "Graphics initialization delay in ms"
166 default 0
167 help
168 On some systems, coreboot boots so fast that connected monitors
169 (mostly TVs) won't be able to wake up fast enough to talk to the
170 VBIOS. On those systems we need to wait for a bit before executing
171 the VBIOS.
172
Duncan Laurie61680272014-05-05 12:42:35 -0500173config INTEL_PCH_UART_CONSOLE
174 bool "Use Serial IO UART for console"
175 default n
Martin Rothdf02c332015-07-01 23:09:42 -0600176 select DRIVERS_UART_8250MEM
Duncan Laurie61680272014-05-05 12:42:35 -0500177
178config INTEL_PCH_UART_CONSOLE_NUMBER
179 hex "Serial IO UART number to use for console"
Martin Roth3b878122016-09-30 14:43:01 -0600180 default 0x0
Duncan Laurie61680272014-05-05 12:42:35 -0500181 depends on INTEL_PCH_UART_CONSOLE
182
183config TTYS0_BASE
184 hex
185 default 0xd6000000
186 depends on INTEL_PCH_UART_CONSOLE
187
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700188config EHCI_BAR
189 hex
190 default 0xd8000000
191
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700192config SERIRQ_CONTINUOUS_MODE
193 bool
194 default y
195 help
196 If you set this option to y, the serial IRQ machine will be
197 operated in continuous mode.
Patrick Georgie6e94932015-06-22 22:26:45 +0200198
199config HAVE_REFCODE_BLOB
200 depends on ARCH_X86
201 bool "An external reference code blob should be put into cbfs."
202 default n
203 help
204 The reference code blob will be placed into cbfs.
205
206if HAVE_REFCODE_BLOB
207
208config REFCODE_BLOB_FILE
209 string "Path and filename to reference code blob."
210 default "refcode.elf"
211 help
212 The path and filename to the file to be added to cbfs.
213
214endif # HAVE_REFCODE_BLOB
215
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700216endif