blob: 5f2c5aa881721ac0f2fb939d59dc49b80fdfbf62 [file] [log] [blame]
Mariusz Szafranskia4041332017-08-02 17:28:17 +02001##
2## This file is part of the coreboot project.
3##
Mariusz Szafranskia4041332017-08-02 17:28:17 +02004##
5## This program is free software; you can redistribute it and/or modify
6## it under the terms of the GNU General Public License as published by
7## the Free Software Foundation; version 2 of the License.
8##
9## This program is distributed in the hope that it will be useful,
10## but WITHOUT ANY WARRANTY; without even the implied warranty of
11## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12## GNU General Public License for more details.
13##
14
15config SOC_INTEL_DENVERTON_NS
16 bool
17 help
18 Intel Denverton-NS SoC support
19
20if SOC_INTEL_DENVERTON_NS
21
22config CPU_SPECIFIC_OPTIONS
23 def_bool y
24 select ARCH_BOOTBLOCK_X86_32
25 select ARCH_RAMSTAGE_X86_32
26 select ARCH_ROMSTAGE_X86_32
27 select ARCH_VERSTAGE_X86_32
Mariusz Szafranskia4041332017-08-02 17:28:17 +020028 select BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY if BOOT_DEVICE_SPI_FLASH
29 select BOOT_DEVICE_SUPPORTS_WRITES
Nico Huber371a6672018-11-13 22:06:40 +010030 select DEBUG_GPIO
Mariusz Szafranskia4041332017-08-02 17:28:17 +020031 select SOC_INTEL_COMMON
32 select SOC_INTEL_COMMON_RESET
33 select PLATFORM_USES_FSP2_0
Mariusz Szafranskia4041332017-08-02 17:28:17 +020034 select IOAPIC
Johanna Schander8a6e0362019-12-08 15:54:09 +010035 select HAVE_INTEL_FSP_REPO
Mariusz Szafranskia4041332017-08-02 17:28:17 +020036 select HAVE_SMI_HANDLER
Mariusz Szafranskia4041332017-08-02 17:28:17 +020037 select CACHE_MRC_SETTINGS
Mariusz Szafranskia4041332017-08-02 17:28:17 +020038 select PARALLEL_MP
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020039 select PCR_COMMON_IOSF_1_0
Mariusz Szafranskia4041332017-08-02 17:28:17 +020040 select SMP
Stefan Tauneref8b9572018-09-06 00:34:28 +020041 select INTEL_DESCRIPTOR_MODE_CAPABLE
Julien Viard de Galbertcf2b72f2018-04-05 11:24:45 +020042 select COMMON_FADT
Mariusz Szafranskia4041332017-08-02 17:28:17 +020043 select SOC_INTEL_COMMON_BLOCK
Julien Viard de Galbert5a1f5402018-02-08 14:03:28 +010044 select SOC_INTEL_COMMON_BLOCK_CPU
Julien Viard de Galbertcf2b72f2018-04-05 11:24:45 +020045 select SOC_INTEL_COMMON_BLOCK_ACPI
Julien Viard de Galbert2912e8e2018-08-14 16:15:26 +020046 select SOC_INTEL_COMMON_BLOCK_PMC
47 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Mariusz Szafranskia4041332017-08-02 17:28:17 +020048 select SOC_INTEL_COMMON_BLOCK_FAST_SPI
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020049 select SOC_INTEL_COMMON_BLOCK_GPIO
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020050 select SOC_INTEL_COMMON_BLOCK_PCR
Mariusz Szafranskia4041332017-08-02 17:28:17 +020051 select TSC_MONOTONIC_TIMER
52 select TSC_SYNC_MFENCE
53 select UDELAY_TSC
Subrata Banik74558812018-01-25 11:41:04 +053054 select UDK_2015_BINDING
Vanessa Eusebiocd979822018-06-06 13:12:53 -070055 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Felix Singere0b74a12020-03-03 22:39:02 +010056 select SUPPORT_CPU_UCODE_IN_CBFS
Mariusz Szafranskia4041332017-08-02 17:28:17 +020057
Andrey Petrovdafd5142019-12-30 09:58:47 -080058config MMCONF_BASE_ADDRESS
59 hex
60 default 0xe0000000
61
Mariusz Szafranskia4041332017-08-02 17:28:17 +020062config FSP_T_ADDR
Elyes HAOUASef906092020-02-20 19:41:17 +010063 hex "Intel FSP-T (temp RAM init) binary location"
Mariusz Szafranskia4041332017-08-02 17:28:17 +020064 depends on ADD_FSP_BINARIES && FSP_CAR
65 default 0xfff30000
66 help
67 The memory location of the Intel FSP-T binary for this platform.
68
69config FSP_M_ADDR
70 hex "Intel FSP-M (memory init) binary location"
71 depends on ADD_FSP_BINARIES
72 default 0xfff32000
73 help
74 The memory location of the Intel FSP-M binary for this platform.
75
76config FSP_S_ADDR
77 hex "Intel FSP-S (silicon init) binary location"
78 depends on ADD_FSP_BINARIES
79 default 0xfffc3000
80 help
81 The memory location of the Intel FSP-S binary for this platform.
82
Felix Singerfdccfc62019-01-15 07:29:57 +010083config FSP_HEADER_PATH
Felix Singerfdccfc62019-01-15 07:29:57 +010084 default "3rdparty/fsp/DenvertonNSFspBinPkg/Include/"
85
86config FSP_FD_PATH
Felix Singerfdccfc62019-01-15 07:29:57 +010087 default "3rdparty/fsp/DenvertonNSFspBinPkg/FspBin/DenvertonNSFsp.fd"
88
Mariusz Szafranskia4041332017-08-02 17:28:17 +020089# CAR memory layout on DENVERTON_NS hardware:
90## CAR base address - 0xfef00000
91## CAR size 1MB - 0x100 (0xfff00)
92## coreboot usage:
93## DCACHE base - 0xfef00000
94## DCACHE size - 0xb0000
95## FSP usage:
96## FSP base - 0xfefb0000
97## FSP size - 0x50000 - 0x100 (0x4ff00)
98config MAX_CPUS
99 int
100 default 16
101
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +0200102config PCR_BASE_ADDRESS
103 hex
104 default 0xfd000000
105 help
106 This option allows you to select MMIO Base Address of sideband bus.
107
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200108config DCACHE_RAM_BASE
109 hex
110 default 0xfef00000
111
112config DCACHE_RAM_SIZE
113 hex
114 default 0xb0000 if FSP_CAR
115 default 0x100000 if !FSP_CAR
116
117config DCACHE_BSP_STACK_SIZE
118 hex
119 default 0x10000
120
Julien Viard de Galbert5a1f5402018-02-08 14:03:28 +0100121config CPU_BCLK_MHZ
122 int
123 default 100
124
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200125config SMM_TSEG_SIZE
126 hex
127 default 0x200000
128
129config SMM_RESERVED_SIZE
130 hex
131 default 0x000000
132
133config IQAT_ENABLE
134 bool "Enable IQAT"
135 default y
136
137config IQAT_MEMORY_REGION_SIZE
138 depends on IQAT_ENABLE
139 hex
140 default 0x100000
141 help
142 Do not change this value
143
144config HSUART_DEV
145 hex
146 default 0x1a
147
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200148choice
149 prompt "UART mode selection"
150 default NON_LEGACY_UART_MODE
151
152config NON_LEGACY_UART_MODE
153 bool "Non Legacy Mode"
154 help
155 Disable legacy UART mode
156
157config LEGACY_UART_MODE
158 bool "Legacy Mode"
159 help
160 Enable legacy UART mode
161endchoice
162
163config ENABLE_HSUART
Nico Huber3eb720c2018-11-11 00:27:41 +0100164 depends on NON_LEGACY_UART_MODE
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200165 bool "Enable High-speed UART debug port selected by UART_FOR_CONSOLE."
166 default n
167 select CONSOLE_SERIAL
168 select DRIVERS_UART
169 select DRIVERS_UART_8250MEM
170
171config CONSOLE_UART_BASE_ADDRESS
172 depends on ENABLE_HSUART
173 hex "MMIO base address for UART"
174 default 0xd4000000
175
176config C_ENV_BOOTBLOCK_SIZE
177 hex
178 default 0x8000
179
180config DENVERTON_NS_CAR_NEM_ENHANCED
181 bool "Enhanced Non-evict mode"
182 depends on !FSP_CAR
183 default y
184 select SOC_INTEL_COMMON_BLOCK_CAR
185 select INTEL_CAR_NEM_ENHANCED
186 help
187 A current limitation of NEM (Non-Evict mode) is that code and data sizes
188 are derived from the requirement to not write out any modified cache line.
189 With NEM, if there is no physical memory behind the cached area,
190 the modified data will be lost and NEM results will be inconsistent.
191 ENHANCED NEM guarantees that modified data is always
192 kept in cache while clean data is replaced.
193
194endif ## SOC_INTEL_DENVERTON_NS