blob: 35129af8b7fbcb0578c96785917af75c781325ae [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
Angel Ponsa32df262020-09-25 10:20:11 +020011 select ARCH_ALL_STAGES_X86_32
Shelley Chen6c2568f2020-09-25 09:30:44 -070012 select BOOT_DEVICE_SPI_FLASH_NO_EARLY_WRITES
Aaron Durbine8e118d2016-08-12 15:00:10 -050013 select BOOT_DEVICE_SUPPORTS_WRITES
Duncan Lauriec88c54c2014-04-30 16:36:13 -070014 select CACHE_MRC_SETTINGS
Duncan Laurief059b242015-01-15 15:42:43 -080015 select MRC_SETTINGS_PROTECT
Sumeet R Pawnikarfa42d562020-05-08 22:18:09 +053016 select CPU_INTEL_COMMON
Duncan Lauriec88c54c2014-04-30 16:36:13 -070017 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Kyösti Mälkki4851bf22014-12-27 12:57:06 +020018 select SUPPORT_CPU_UCODE_IN_CBFS
Duncan Lauriec88c54c2014-04-30 16:36:13 -070019 select HAVE_SMI_HANDLER
Angel Ponsdd558fd2020-10-13 20:49:23 +020020 select SOUTHBRIDGE_INTEL_COMMON_EARLY_SMBUS
Patrick Rudolph45022ae2018-10-01 19:17:11 +020021 select SOUTHBRIDGE_INTEL_COMMON_RESET
Arthur Heymans2abbe462019-06-04 14:12:01 +020022 select SOUTHBRIDGE_INTEL_COMMON_RTC
Kyösti Mälkkid1c69c62020-01-02 18:03:24 +020023 select SOUTHBRIDGE_INTEL_COMMON_SMBUS
Arthur Heymans47a66032019-10-25 23:43:14 +020024 select SOUTHBRIDGE_INTEL_COMMON_SPI_ICH9
Duncan Lauriec88c54c2014-04-30 16:36:13 -070025 select HAVE_USBDEBUG
26 select IOAPIC
Duncan Lauriec88c54c2014-04-30 16:36:13 -070027 select REG_SCRIPT
28 select PARALLEL_MP
Aaron Durbin16246ea2016-08-05 21:23:37 -050029 select RTC
Duncan Lauriec88c54c2014-04-30 16:36:13 -070030 select SPI_FLASH
31 select SSE2
Duncan Lauriec88c54c2014-04-30 16:36:13 -070032 select TSC_SYNC_MFENCE
33 select UDELAY_TSC
Kyösti Mälkki5b15e012019-11-01 10:25:50 +020034 select TSC_MONOTONIC_TIMER
Stefan Reinauer9616f3c2015-04-29 10:45:22 -070035 select SOC_INTEL_COMMON
Sumeet R Pawnikarfa42d562020-05-08 22:18:09 +053036 select SOC_INTEL_COMMON_BLOCK
37 select SOC_INTEL_COMMON_BLOCK_CPU
38 select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
Stefan Tauneref8b9572018-09-06 00:34:28 +020039 select INTEL_DESCRIPTOR_MODE_CAPABLE
Duncan Laurie81a4c852015-09-08 16:10:30 -070040 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
Angel Pons12d48cd2020-10-03 12:22:04 +020041 select HAVE_EM100PRO_SPI_CONSOLE_SUPPORT
Matt DeVillier773488f2017-10-18 12:27:25 -050042 select INTEL_GMA_ACPI
Nico Huber9faae2b2018-11-14 00:00:35 +010043 select HAVE_POWER_STATE_AFTER_FAILURE
44 select HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE
Duncan Lauriec88c54c2014-04-30 16:36:13 -070045
Youness Alaouib191c9f2017-05-08 15:22:03 -040046config PCIEXP_ASPM
47 bool
48 default y
49
Youness Alaoui71616782018-05-04 15:34:06 -040050config PCIEXP_AER
51 bool
52 default y
53
Youness Alaouib191c9f2017-05-08 15:22:03 -040054config PCIEXP_COMMON_CLOCK
55 bool
56 default y
57
58config PCIEXP_CLK_PM
59 bool
60 default y
61
62config PCIEXP_L1_SUB_STATE
63 bool
64 default y
65
Arthur Heymans4d56a062018-12-22 16:11:52 +010066config BROADWELL_VBOOT_IN_BOOTBLOCK
67 depends on VBOOT
68 bool "Start verstage in bootblock"
69 default y
70 select VBOOT_STARTS_IN_BOOTBLOCK
71 select VBOOT_SEPARATE_VERSTAGE
72 help
73 Broadwell can either start verstage in a separate stage
74 right after the bootblock has run or it can start it
75 after romstage for compatibility reasons.
76 Broadwell however uses a mrc.bin to initialse memory which
77 needs to be located at a fixed offset. Therefore even with
78 a separate verstage starting after the bootblock that same
79 binary is used meaning a jump is made from RW to the RO region
80 and back to the RW region after the binary is done.
81
Julius Werner1210b412017-03-27 19:26:32 -070082config VBOOT
Joel Kitching6672bd82019-04-10 16:06:21 +080083 select VBOOT_MUST_REQUEST_DISPLAY
Arthur Heymans4d56a062018-12-22 16:11:52 +010084 select VBOOT_STARTS_IN_ROMSTAGE if !BROADWELL_VBOOT_IN_BOOTBLOCK
Julius Werner1210b412017-03-27 19:26:32 -070085
Duncan Lauriec88c54c2014-04-30 16:36:13 -070086config MMCONF_BASE_ADDRESS
87 hex
88 default 0xf0000000
89
Duncan Lauriec88c54c2014-04-30 16:36:13 -070090config SMM_TSEG_SIZE
91 hex
92 default 0x800000
93
94config IED_REGION_SIZE
95 hex
96 default 0x400000
97
98config SMM_RESERVED_SIZE
99 hex
100 default 0x100000
101
102config VGA_BIOS_ID
103 string
104 default "8086,0406"
105
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700106config DCACHE_RAM_BASE
107 hex
108 default 0xff7c0000
109
110config DCACHE_RAM_SIZE
111 hex
112 default 0x10000
113 help
114 The size of the cache-as-ram region required during bootblock
115 and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
116 must add up to a power of 2.
117
118config DCACHE_RAM_MRC_VAR_SIZE
119 hex
120 default 0x30000
121 help
122 The amount of cache-as-ram region required by the reference code.
123
Arthur Heymans5bb15f12018-12-22 16:02:25 +0100124config DCACHE_BSP_STACK_SIZE
125 hex
126 default 0x2000
127 help
128 The amount of anticipated stack usage in CAR by bootblock and
129 other stages.
130
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700131config HAVE_MRC
132 bool "Add a Memory Reference Code binary"
133 help
134 Select this option to add a Memory Reference Code binary to
135 the resulting coreboot image.
136
137 Note: Without this binary coreboot will not work
138
139if HAVE_MRC
140
141config MRC_FILE
142 string "Intel Memory Reference Code path and filename"
143 depends on HAVE_MRC
144 default "mrc.bin"
145 help
146 The filename of the file to use as Memory Reference Code binary.
147
148config MRC_BIN_ADDRESS
149 hex
150 default 0xfffa0000
151
Arthur Heymans4d56a062018-12-22 16:11:52 +0100152# The UEFI System Agent binary needs to be at a fixed offset in the flash
153# and can therefore only reside in the COREBOOT fmap region
154config RO_REGION_ONLY
155 string
156 depends on VBOOT
157 default "mrc.bin"
158
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700159endif # HAVE_MRC
160
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700161config PRE_GRAPHICS_DELAY
162 int "Graphics initialization delay in ms"
163 default 0
164 help
165 On some systems, coreboot boots so fast that connected monitors
166 (mostly TVs) won't be able to wake up fast enough to talk to the
167 VBIOS. On those systems we need to wait for a bit before executing
168 the VBIOS.
169
Duncan Laurie61680272014-05-05 12:42:35 -0500170config INTEL_PCH_UART_CONSOLE
171 bool "Use Serial IO UART for console"
172 default n
Martin Rothdf02c332015-07-01 23:09:42 -0600173 select DRIVERS_UART_8250MEM
Duncan Laurie61680272014-05-05 12:42:35 -0500174
175config INTEL_PCH_UART_CONSOLE_NUMBER
176 hex "Serial IO UART number to use for console"
Martin Roth3b878122016-09-30 14:43:01 -0600177 default 0x0
Duncan Laurie61680272014-05-05 12:42:35 -0500178 depends on INTEL_PCH_UART_CONSOLE
179
180config TTYS0_BASE
181 hex
182 default 0xd6000000
183 depends on INTEL_PCH_UART_CONSOLE
184
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700185config EHCI_BAR
186 hex
187 default 0xd8000000
188
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700189config SERIRQ_CONTINUOUS_MODE
190 bool
191 default y
192 help
193 If you set this option to y, the serial IRQ machine will be
194 operated in continuous mode.
Patrick Georgie6e94932015-06-22 22:26:45 +0200195
196config HAVE_REFCODE_BLOB
197 depends on ARCH_X86
198 bool "An external reference code blob should be put into cbfs."
199 default n
200 help
201 The reference code blob will be placed into cbfs.
202
203if HAVE_REFCODE_BLOB
204
205config REFCODE_BLOB_FILE
206 string "Path and filename to reference code blob."
207 default "refcode.elf"
208 help
209 The path and filename to the file to be added to cbfs.
210
211endif # HAVE_REFCODE_BLOB
212
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700213endif