blob: 161db3321729dd418343438967ca4033b30d60eb [file] [log] [blame]
Lijian Zhao81096042017-05-02 18:54:44 -07001config SOC_INTEL_CANNONLAKE
2 bool
3 help
4 Intel Cannonlake support
5
Lijian Zhao3638a522018-07-12 17:16:11 -07006config SOC_INTEL_COFFEELAKE
7 bool
8 default n
9 select SOC_INTEL_CANNONLAKE
10 help
11 Intel Coffeelake support
12
praveen hodagatta pranesh521e48c2018-09-27 00:00:13 +080013config SOC_INTEL_CANNONLAKE_PCH_H
Lijian Zhao3638a522018-07-12 17:16:11 -070014 bool
15 default n
16 help
17 Choose this option if you have a PCH-H chipset.
18
Lijian Zhao81096042017-05-02 18:54:44 -070019if SOC_INTEL_CANNONLAKE
20
21config CPU_SPECIFIC_OPTIONS
22 def_bool y
Lijian Zhaob3dfcb82017-08-16 22:18:52 -070023 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Lijian Zhao0e956f22017-10-22 18:30:39 -070024 select ACPI_NHLT
Lijian Zhao81096042017-05-02 18:54:44 -070025 select ARCH_BOOTBLOCK_X86_32
Lijian Zhao81096042017-05-02 18:54:44 -070026 select ARCH_RAMSTAGE_X86_32
27 select ARCH_ROMSTAGE_X86_32
Lijian Zhaodcf99b02017-07-30 15:40:10 -070028 select ARCH_VERSTAGE_X86_32
Lijian Zhao32111172017-08-16 11:40:03 -070029 select BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY if BOOT_DEVICE_SPI_FLASH
30 select BOOT_DEVICE_SUPPORTS_WRITES
Lijian Zhao81096042017-05-02 18:54:44 -070031 select C_ENVIRONMENT_BOOTBLOCK
Lijian Zhaoa06f55b2017-10-04 23:08:55 -070032 select CACHE_MRC_SETTINGS
Kyösti Mälkki730df3c2016-06-18 07:39:31 +030033 select CACHE_RELOCATED_RAMSTAGE_OUTSIDE_CBMEM
Lijian Zhao2b074d92017-08-17 14:25:24 -070034 select COMMON_FADT
Lijian Zhaoacfc1492017-07-06 15:27:27 -070035 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Nick Vaccaro69b5cdb2017-08-29 19:25:23 -070036 select GENERIC_GPIO_LIB
Abhay kumarfcf88202017-09-20 15:17:42 -070037 select HAVE_FSP_GOP
Stefan Tauneref8b9572018-09-06 00:34:28 +020038 select INTEL_DESCRIPTOR_MODE_CAPABLE
Lijian Zhaodcf99b02017-07-30 15:40:10 -070039 select HAVE_MONOTONIC_TIMER
Lijian Zhaof0eb9992017-09-14 14:51:12 -070040 select HAVE_SMI_HANDLER
Aamir Bohrae4625852018-05-29 10:52:33 +053041 select IDT_IN_EVERY_STAGE
Abhay Kumarb0c4cbb2017-10-12 11:33:01 -070042 select INTEL_GMA_ACPI
Nico Huber29cc3312018-06-06 17:40:02 +020043 select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
Lijian Zhaoa5158492017-08-29 14:37:17 -070044 select IOAPIC
Lijian Zhaoa06f55b2017-10-04 23:08:55 -070045 select MRC_SETTINGS_PROTECT
Pratik Prajapati01eda282017-08-17 21:09:45 -070046 select PARALLEL_MP
47 select PARALLEL_MP_AP_WORK
Lijian Zhao81096042017-05-02 18:54:44 -070048 select PLATFORM_USES_FSP2_0
Lijian Zhao8465a812017-07-11 12:33:22 -070049 select POSTCAR_CONSOLE
50 select POSTCAR_STAGE
Lijian Zhaodcf99b02017-07-30 15:40:10 -070051 select REG_SCRIPT
Lijian Zhaof0eb9992017-09-14 14:51:12 -070052 select SMM_TSEG
Pratik Prajapati01eda282017-08-17 21:09:45 -070053 select SMP
Subrata Banikac1cd442018-02-06 15:25:27 +053054 select SOC_AHCI_PORT_IMPLEMENTED_INVERT
Julien Viard de Galbert2912e8e2018-08-14 16:15:26 +020055 select PMC_GLOBAL_RESET_ENABLE_LOCK
Lijian Zhao81096042017-05-02 18:54:44 -070056 select SOC_INTEL_COMMON
Lijian Zhao2b074d92017-08-17 14:25:24 -070057 select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
Lijian Zhao81096042017-05-02 18:54:44 -070058 select SOC_INTEL_COMMON_BLOCK
Lijian Zhao2b074d92017-08-17 14:25:24 -070059 select SOC_INTEL_COMMON_BLOCK_ACPI
Subrata Banikc4986eb2018-05-09 14:55:09 +053060 select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
Andrey Petrov3e2e0502017-06-05 13:22:24 -070061 select SOC_INTEL_COMMON_BLOCK_CPU
Pratik Prajapati01eda282017-08-17 21:09:45 -070062 select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
Furquan Shaikha5bb7162017-12-20 11:09:04 -080063 select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
praveen hodagatta praneshdc4fceb2018-10-16 18:06:18 +080064 select SOC_INTEL_COMMON_BLOCK_HDA
Lijian Zhaodcf99b02017-07-30 15:40:10 -070065 select SOC_INTEL_COMMON_BLOCK_SA
Brandon Breitensteinae154862017-08-01 11:32:06 -070066 select SOC_INTEL_COMMON_BLOCK_SMM
67 select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
Subrata Banikf513ceb2018-05-17 15:57:43 +053068 select SOC_INTEL_COMMON_PCH_BASE
Lijian Zhao0e956f22017-10-22 18:30:39 -070069 select SOC_INTEL_COMMON_NHLT
Lijian Zhaodcf99b02017-07-30 15:40:10 -070070 select SOC_INTEL_COMMON_RESET
Lijian Zhaof0eb9992017-09-14 14:51:12 -070071 select SSE2
Lijian Zhaoacfc1492017-07-06 15:27:27 -070072 select SUPPORT_CPU_UCODE_IN_CBFS
Lijian Zhaodcf99b02017-07-30 15:40:10 -070073 select TSC_CONSTANT_RATE
74 select TSC_MONOTONIC_TIMER
75 select UDELAY_TSC
Subrata Banik74558812018-01-25 11:41:04 +053076 select UDK_2017_BINDING
Subrata Banika8733e32018-01-23 16:40:56 +053077 select DISPLAY_FSP_VERSION_INFO
Praveen hodagatta praneshb66757f2018-10-23 02:43:05 +080078 select FSP_T_XIP if FSP_CAR
Lijian Zhao81096042017-05-02 18:54:44 -070079
80config UART_DEBUG
81 bool "Enable UART debug port."
Subrata Banik918ff852018-06-22 18:55:17 +053082 default n
Lijian Zhao81096042017-05-02 18:54:44 -070083 select CONSOLE_SERIAL
84 select BOOTBLOCK_CONSOLE
85 select DRIVERS_UART
Lijian Zhaod37ebdd2017-08-30 20:54:16 -070086 select DRIVERS_UART_8250MEM_32
87 select NO_UART_ON_SUPERIO
Lijian Zhao81096042017-05-02 18:54:44 -070088
Subrata Banikce4c9ec2017-08-14 13:23:54 +053089config UART_FOR_CONSOLE
90 int "Index for LPSS UART port to use for console"
Lijian Zhao0c8237a2017-09-14 16:25:18 -070091 default 2 if DRIVERS_UART_8250MEM_32
Subrata Banikb045d4c2017-08-30 11:47:32 +053092 default 0
Subrata Banikce4c9ec2017-08-14 13:23:54 +053093 help
94 Index for LPSS UART port to use for console:
95 0 = LPSS UART0, 1 = LPSS UART1, 2 = LPSS UART2
96
Lijian Zhao81096042017-05-02 18:54:44 -070097config DCACHE_RAM_BASE
98 default 0xfef00000
99
100config DCACHE_RAM_SIZE
101 default 0x40000
102 help
103 The size of the cache-as-ram region required during bootblock
104 and/or romstage.
105
106config DCACHE_BSP_STACK_SIZE
107 hex
108 default 0x4000
109 help
110 The amount of anticipated stack usage in CAR by bootblock and
111 other stages.
112
Furquan Shaikhc0257dd2018-05-02 23:29:04 -0700113config IFD_CHIPSET
114 string
115 default "cnl"
116
Pratik Prajapati9027e1b2017-08-23 17:37:43 -0700117config IED_REGION_SIZE
118 hex
119 default 0x400000
120
John Zhao7492bcb2018-02-01 15:56:28 -0800121config HEAP_SIZE
122 hex
123 default 0x8000
124
Lijian Zhao0e956f22017-10-22 18:30:39 -0700125config NHLT_DMIC_1CH_16B
126 bool
127 depends on ACPI_NHLT
128 default n
129 help
130 Include DSP firmware settings for 1 channel 16B DMIC array.
131
132config NHLT_DMIC_2CH_16B
133 bool
134 depends on ACPI_NHLT
135 default n
136 help
137 Include DSP firmware settings for 2 channel 16B DMIC array.
138
139config NHLT_DMIC_4CH_16B
140 bool
141 depends on ACPI_NHLT
142 default n
143 help
144 Include DSP firmware settings for 4 channel 16B DMIC array.
145
146config NHLT_MAX98357
147 bool
148 depends on ACPI_NHLT
149 default n
150 help
151 Include DSP firmware settings for headset codec.
152
N, Harshapriya4a1ee4b2017-11-28 14:29:26 -0800153config NHLT_MAX98373
154 bool
155 depends on ACPI_NHLT
156 default n
157 help
158 Include DSP firmware settings for headset codec.
159
Lijian Zhao0e956f22017-10-22 18:30:39 -0700160config NHLT_DA7219
161 bool
162 depends on ACPI_NHLT
163 default n
164 help
165 Include DSP firmware settings for headset codec.
166
Pratik Prajapatic8c741d2017-08-29 11:38:42 -0700167config MAX_ROOT_PORTS
168 int
praveen hodagatta pranesh521e48c2018-09-27 00:00:13 +0800169 default 24 if SOC_INTEL_CANNONLAKE_PCH_H
Lijian Zhaoc85890d2017-10-20 09:19:07 -0700170 default 16
Pratik Prajapatic8c741d2017-08-29 11:38:42 -0700171
Pratik Prajapati9027e1b2017-08-23 17:37:43 -0700172config SMM_TSEG_SIZE
173 hex
174 default 0x800000
175
Subrata Banike66600e2018-05-10 17:23:56 +0530176config SMM_RESERVED_SIZE
177 hex
178 default 0x200000
179
Lijian Zhao81096042017-05-02 18:54:44 -0700180config PCR_BASE_ADDRESS
181 hex
182 default 0xfd000000
183 help
184 This option allows you to select MMIO Base Address of sideband bus.
185
Andrey Petrov3e2e0502017-06-05 13:22:24 -0700186config CPU_BCLK_MHZ
187 int
188 default 100
189
Lijian Zhao903c9762018-08-20 14:06:13 -0700190config SOC_INTEL_CANNONLAKE_MEMCFG_INIT
Nick Vaccaro780a1c42017-12-22 22:50:57 -0800191 bool
192 default n
193
Aaron Durbin551e4be2018-04-10 09:24:54 -0600194config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
Lijian Zhaof3885612017-11-09 15:01:33 -0800195 int
196 default 120
197
Chris Chingb8dc63b2017-12-06 14:26:15 -0700198config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
199 int
Lijian Zhaoe09ba472018-04-10 10:33:05 -0700200 default 133
Chris Chingb8dc63b2017-12-06 14:26:15 -0700201
Lijian Zhao32111172017-08-16 11:40:03 -0700202config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
203 int
204 default 3
205
Subrata Banikc4986eb2018-05-09 14:55:09 +0530206config SOC_INTEL_I2C_DEV_MAX
207 int
praveen hodagatta pranesh521e48c2018-09-27 00:00:13 +0800208 default 4 if SOC_INTEL_CANNONLAKE_PCH_H
Subrata Banikc4986eb2018-05-09 14:55:09 +0530209 default 6
210
Lijian Zhao8465a812017-07-11 12:33:22 -0700211# Clock divider parameters for 115200 baud rate
212config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
213 hex
214 default 0x30
215
216config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
217 hex
218 default 0xc35
219
Lijian Zhao6d7063c2017-08-29 17:26:48 -0700220config CHROMEOS
221 select CHROMEOS_RAMOOPS_DYNAMIC
222
223config VBOOT
224 select VBOOT_SEPARATE_VERSTAGE
225 select VBOOT_OPROM_MATTERS
226 select VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT
227 select VBOOT_STARTS_IN_BOOTBLOCK
228 select VBOOT_VBNV_CMOS
229 select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH
230
Aaron Durbin4a8f45f2017-10-05 17:05:36 -0600231config C_ENV_BOOTBLOCK_SIZE
232 hex
Lijian Zhao031020e2017-12-15 12:58:07 -0800233 default 0x8000
Aaron Durbin4a8f45f2017-10-05 17:05:36 -0600234
Patrick Georgi6539e102018-09-13 11:48:43 -0400235config CBFS_SIZE
236 hex
237 default 0x200000
238
Subrata Banik9e3ba212018-01-08 15:28:26 +0530239choice
240 prompt "Cache-as-ram implementation"
241 default USE_CANNONLAKE_CAR_NEM_ENHANCED if MAINBOARD_HAS_CHROMEOS
242 default USE_CANNONLAKE_FSP_CAR
243 help
244 This option allows you to select how cache-as-ram (CAR) is set up.
245
246config USE_CANNONLAKE_CAR_NEM_ENHANCED
247 bool "Enhanced Non-evict mode"
248 select SOC_INTEL_COMMON_BLOCK_CAR
249 select INTEL_CAR_NEM_ENHANCED
250 help
251 A current limitation of NEM (Non-Evict mode) is that code and data
252 sizes are derived from the requirement to not write out any modified
253 cache line. With NEM, if there is no physical memory behind the
254 cached area, the modified data will be lost and NEM results will be
255 inconsistent. ENHANCED NEM guarantees that modified data is always
256 kept in cache while clean data is replaced.
257
258config USE_CANNONLAKE_FSP_CAR
259 bool "Use FSP CAR"
260 select FSP_CAR
261 help
262 Use FSP APIs to initialize and tear down the Cache-As-Ram.
263
264endchoice
265
Patrick Georgi6539e102018-09-13 11:48:43 -0400266config FSP_HEADER_PATH
267 string
268 default "src/vendorcode/intel/fsp/fsp2_0/cannonlake/" if !SOC_INTEL_COFFEELAKE
269 default "3rdparty/fsp/CoffeeLakeFspBinPkg/Include/" if SOC_INTEL_COFFEELAKE
270
271config FSP_FD_PATH
272 string
273 depends on FSP_USE_REPO
274 default "3rdparty/fsp/CoffeeLakeFspBinPkg/Fsp.fd" if SOC_INTEL_COFFEELAKE
275
Lijian Zhao81096042017-05-02 18:54:44 -0700276endif