blob: 7528c09fd3e16a5aee6eaadb9f8fc7b2f942dcb6 [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
Angel Pons417a6da2020-10-29 13:19:48 +01008config INTEL_LYNXPOINT_LP
9 bool
10 default y if SOC_INTEL_BROADWELL
11
Angel Ponsa3288b32020-11-23 13:00:51 +010012config SOC_SPECIFIC_OPTIONS
Duncan Lauriec88c54c2014-04-30 16:36:13 -070013 def_bool y
Kyösti Mälkki4abc7312021-01-12 17:46:30 +020014 select ACPI_HAS_DEVICE_NVS
Aaron Durbin9e6d1432016-07-13 23:21:41 -050015 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Aaron Durbine8e118d2016-08-12 15:00:10 -050016 select BOOT_DEVICE_SUPPORTS_WRITES
Duncan Lauriec88c54c2014-04-30 16:36:13 -070017 select CACHE_MRC_SETTINGS
Angel Pons3f0a95a2020-11-23 13:34:56 +010018 select CPU_INTEL_HASWELL
Duncan Laurief059b242015-01-15 15:42:43 -080019 select MRC_SETTINGS_PROTECT
Duncan Lauriec88c54c2014-04-30 16:36:13 -070020 select HAVE_SMI_HANDLER
Angel Ponsa2a9e602020-11-23 12:41:20 +010021 select SOUTHBRIDGE_INTEL_COMMON_ACPI_MADT
Angel Ponsdd558fd2020-10-13 20:49:23 +020022 select SOUTHBRIDGE_INTEL_COMMON_EARLY_SMBUS
Patrick Rudolph45022ae2018-10-01 19:17:11 +020023 select SOUTHBRIDGE_INTEL_COMMON_RESET
Arthur Heymans2abbe462019-06-04 14:12:01 +020024 select SOUTHBRIDGE_INTEL_COMMON_RTC
Kyösti Mälkkid1c69c62020-01-02 18:03:24 +020025 select SOUTHBRIDGE_INTEL_COMMON_SMBUS
Arthur Heymans47a66032019-10-25 23:43:14 +020026 select SOUTHBRIDGE_INTEL_COMMON_SPI_ICH9
Duncan Lauriec88c54c2014-04-30 16:36:13 -070027 select HAVE_USBDEBUG
28 select IOAPIC
Angel Pons3f0a95a2020-11-23 13:34:56 +010029 select INTEL_LYNXPOINT_LP
Duncan Lauriec88c54c2014-04-30 16:36:13 -070030 select REG_SCRIPT
Aaron Durbin16246ea2016-08-05 21:23:37 -050031 select RTC
Duncan Lauriec88c54c2014-04-30 16:36:13 -070032 select SPI_FLASH
Stefan Reinauer9616f3c2015-04-29 10:45:22 -070033 select SOC_INTEL_COMMON
Stefan Tauneref8b9572018-09-06 00:34:28 +020034 select INTEL_DESCRIPTOR_MODE_CAPABLE
Angel Pons12d48cd2020-10-03 12:22:04 +020035 select HAVE_EM100PRO_SPI_CONSOLE_SUPPORT
Matt DeVillier773488f2017-10-18 12:27:25 -050036 select INTEL_GMA_ACPI
Nico Huber9faae2b2018-11-14 00:00:35 +010037 select HAVE_POWER_STATE_AFTER_FAILURE
38 select HAVE_POWER_STATE_PREVIOUS_AFTER_FAILURE
Duncan Lauriec88c54c2014-04-30 16:36:13 -070039
Youness Alaouib191c9f2017-05-08 15:22:03 -040040config PCIEXP_ASPM
41 bool
42 default y
43
Youness Alaoui71616782018-05-04 15:34:06 -040044config PCIEXP_AER
45 bool
46 default y
47
Youness Alaouib191c9f2017-05-08 15:22:03 -040048config PCIEXP_COMMON_CLOCK
49 bool
50 default y
51
52config PCIEXP_CLK_PM
53 bool
54 default y
55
56config PCIEXP_L1_SUB_STATE
57 bool
58 default y
59
Arthur Heymans4d56a062018-12-22 16:11:52 +010060config BROADWELL_VBOOT_IN_BOOTBLOCK
61 depends on VBOOT
62 bool "Start verstage in bootblock"
63 default y
64 select VBOOT_STARTS_IN_BOOTBLOCK
65 select VBOOT_SEPARATE_VERSTAGE
66 help
67 Broadwell can either start verstage in a separate stage
68 right after the bootblock has run or it can start it
69 after romstage for compatibility reasons.
70 Broadwell however uses a mrc.bin to initialse memory which
71 needs to be located at a fixed offset. Therefore even with
72 a separate verstage starting after the bootblock that same
73 binary is used meaning a jump is made from RW to the RO region
74 and back to the RW region after the binary is done.
75
Julius Werner1210b412017-03-27 19:26:32 -070076config VBOOT
Joel Kitching6672bd82019-04-10 16:06:21 +080077 select VBOOT_MUST_REQUEST_DISPLAY
Arthur Heymans4d56a062018-12-22 16:11:52 +010078 select VBOOT_STARTS_IN_ROMSTAGE if !BROADWELL_VBOOT_IN_BOOTBLOCK
Julius Werner1210b412017-03-27 19:26:32 -070079
Duncan Lauriec88c54c2014-04-30 16:36:13 -070080config MMCONF_BASE_ADDRESS
Duncan Lauriec88c54c2014-04-30 16:36:13 -070081 default 0xf0000000
82
Angel Pons9debbd62021-01-28 12:42:53 +010083config MMCONF_BUS_NUMBER
84 default 64
85
Duncan Lauriec88c54c2014-04-30 16:36:13 -070086config VGA_BIOS_ID
87 string
88 default "8086,0406"
89
Angel Ponsc715dc82021-01-31 00:33:04 +010090config FIXED_MCHBAR_MMIO_BASE
91 default 0xfed10000
92
93config FIXED_DMIBAR_MMIO_BASE
94 default 0xfed18000
95
96config FIXED_EPBAR_MMIO_BASE
97 default 0xfed19000
98
Duncan Lauriec88c54c2014-04-30 16:36:13 -070099config DCACHE_RAM_BASE
100 hex
101 default 0xff7c0000
102
103config DCACHE_RAM_SIZE
104 hex
105 default 0x10000
106 help
107 The size of the cache-as-ram region required during bootblock
108 and/or romstage. Note DCACHE_RAM_SIZE and DCACHE_RAM_MRC_VAR_SIZE
109 must add up to a power of 2.
110
111config DCACHE_RAM_MRC_VAR_SIZE
112 hex
113 default 0x30000
114 help
115 The amount of cache-as-ram region required by the reference code.
116
Arthur Heymans5bb15f12018-12-22 16:02:25 +0100117config DCACHE_BSP_STACK_SIZE
118 hex
119 default 0x2000
120 help
121 The amount of anticipated stack usage in CAR by bootblock and
122 other stages.
123
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700124config HAVE_MRC
125 bool "Add a Memory Reference Code binary"
126 help
127 Select this option to add a Memory Reference Code binary to
128 the resulting coreboot image.
129
130 Note: Without this binary coreboot will not work
131
132if HAVE_MRC
133
134config MRC_FILE
135 string "Intel Memory Reference Code path and filename"
136 depends on HAVE_MRC
137 default "mrc.bin"
138 help
139 The filename of the file to use as Memory Reference Code binary.
140
141config MRC_BIN_ADDRESS
142 hex
143 default 0xfffa0000
144
Arthur Heymans4d56a062018-12-22 16:11:52 +0100145# The UEFI System Agent binary needs to be at a fixed offset in the flash
146# and can therefore only reside in the COREBOOT fmap region
147config RO_REGION_ONLY
148 string
149 depends on VBOOT
150 default "mrc.bin"
151
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700152endif # HAVE_MRC
153
Duncan Laurie61680272014-05-05 12:42:35 -0500154config INTEL_PCH_UART_CONSOLE
155 bool "Use Serial IO UART for console"
156 default n
Martin Rothdf02c332015-07-01 23:09:42 -0600157 select DRIVERS_UART_8250MEM
Duncan Laurie61680272014-05-05 12:42:35 -0500158
159config INTEL_PCH_UART_CONSOLE_NUMBER
160 hex "Serial IO UART number to use for console"
Martin Roth3b878122016-09-30 14:43:01 -0600161 default 0x0
Duncan Laurie61680272014-05-05 12:42:35 -0500162 depends on INTEL_PCH_UART_CONSOLE
163
164config TTYS0_BASE
165 hex
166 default 0xd6000000
167 depends on INTEL_PCH_UART_CONSOLE
168
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700169config EHCI_BAR
170 hex
171 default 0xd8000000
172
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700173config SERIRQ_CONTINUOUS_MODE
174 bool
175 default y
176 help
177 If you set this option to y, the serial IRQ machine will be
178 operated in continuous mode.
Patrick Georgie6e94932015-06-22 22:26:45 +0200179
180config HAVE_REFCODE_BLOB
181 depends on ARCH_X86
182 bool "An external reference code blob should be put into cbfs."
183 default n
184 help
185 The reference code blob will be placed into cbfs.
186
187if HAVE_REFCODE_BLOB
188
189config REFCODE_BLOB_FILE
190 string "Path and filename to reference code blob."
191 default "refcode.elf"
192 help
193 The path and filename to the file to be added to cbfs.
194
195endif # HAVE_REFCODE_BLOB
196
Duncan Lauriec88c54c2014-04-30 16:36:13 -0700197endif