blob: 9a611271ab6fc5bf3f7723826fee82e9b7de51d1 [file] [log] [blame]
Mariusz Szafranskia4041332017-08-02 17:28:17 +02001##
2## This file is part of the coreboot project.
3##
Subrata Banik74558812018-01-25 11:41:04 +05304## Copyright (C) 2014 - 2018 Intel Corporation.
Mariusz Szafranskia4041332017-08-02 17:28:17 +02005##
6## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; version 2 of the License.
9##
10## This program is distributed in the hope that it will be useful,
11## but WITHOUT ANY WARRANTY; without even the implied warranty of
12## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13## GNU General Public License for more details.
14##
15
16config SOC_INTEL_DENVERTON_NS
17 bool
18 help
19 Intel Denverton-NS SoC support
20
21if SOC_INTEL_DENVERTON_NS
22
23config CPU_SPECIFIC_OPTIONS
24 def_bool y
25 select ARCH_BOOTBLOCK_X86_32
26 select ARCH_RAMSTAGE_X86_32
27 select ARCH_ROMSTAGE_X86_32
28 select ARCH_VERSTAGE_X86_32
Mariusz Szafranskia4041332017-08-02 17:28:17 +020029 select BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY if BOOT_DEVICE_SPI_FLASH
30 select BOOT_DEVICE_SUPPORTS_WRITES
Nico Huber371a6672018-11-13 22:06:40 +010031 select DEBUG_GPIO
Mariusz Szafranskia4041332017-08-02 17:28:17 +020032 select SOC_INTEL_COMMON
33 select SOC_INTEL_COMMON_RESET
34 select PLATFORM_USES_FSP2_0
Mariusz Szafranskia4041332017-08-02 17:28:17 +020035 select IOAPIC
36 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
Mariusz Szafranskia4041332017-08-02 17:28:17 +020056
Andrey Petrovdafd5142019-12-30 09:58:47 -080057config MMCONF_BASE_ADDRESS
58 hex
59 default 0xe0000000
60
Mariusz Szafranskia4041332017-08-02 17:28:17 +020061config FSP_T_ADDR
Elyes HAOUASef906092020-02-20 19:41:17 +010062 hex "Intel FSP-T (temp RAM init) binary location"
Mariusz Szafranskia4041332017-08-02 17:28:17 +020063 depends on ADD_FSP_BINARIES && FSP_CAR
64 default 0xfff30000
65 help
66 The memory location of the Intel FSP-T binary for this platform.
67
68config FSP_M_ADDR
69 hex "Intel FSP-M (memory init) binary location"
70 depends on ADD_FSP_BINARIES
71 default 0xfff32000
72 help
73 The memory location of the Intel FSP-M binary for this platform.
74
75config FSP_S_ADDR
76 hex "Intel FSP-S (silicon init) binary location"
77 depends on ADD_FSP_BINARIES
78 default 0xfffc3000
79 help
80 The memory location of the Intel FSP-S binary for this platform.
81
82# CAR memory layout on DENVERTON_NS hardware:
83## CAR base address - 0xfef00000
84## CAR size 1MB - 0x100 (0xfff00)
85## coreboot usage:
86## DCACHE base - 0xfef00000
87## DCACHE size - 0xb0000
88## FSP usage:
89## FSP base - 0xfefb0000
90## FSP size - 0x50000 - 0x100 (0x4ff00)
91config MAX_CPUS
92 int
93 default 16
94
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020095config PCR_BASE_ADDRESS
96 hex
97 default 0xfd000000
98 help
99 This option allows you to select MMIO Base Address of sideband bus.
100
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200101config DCACHE_RAM_BASE
102 hex
103 default 0xfef00000
104
105config DCACHE_RAM_SIZE
106 hex
107 default 0xb0000 if FSP_CAR
108 default 0x100000 if !FSP_CAR
109
110config DCACHE_BSP_STACK_SIZE
111 hex
112 default 0x10000
113
Julien Viard de Galbert5a1f5402018-02-08 14:03:28 +0100114config CPU_BCLK_MHZ
115 int
116 default 100
117
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200118config SMM_TSEG_SIZE
119 hex
120 default 0x200000
121
122config SMM_RESERVED_SIZE
123 hex
124 default 0x000000
125
126config IQAT_ENABLE
127 bool "Enable IQAT"
128 default y
129
130config IQAT_MEMORY_REGION_SIZE
131 depends on IQAT_ENABLE
132 hex
133 default 0x100000
134 help
135 Do not change this value
136
137config HSUART_DEV
138 hex
139 default 0x1a
140
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200141choice
142 prompt "UART mode selection"
143 default NON_LEGACY_UART_MODE
144
145config NON_LEGACY_UART_MODE
146 bool "Non Legacy Mode"
147 help
148 Disable legacy UART mode
149
150config LEGACY_UART_MODE
151 bool "Legacy Mode"
152 help
153 Enable legacy UART mode
154endchoice
155
156config ENABLE_HSUART
Nico Huber3eb720c2018-11-11 00:27:41 +0100157 depends on NON_LEGACY_UART_MODE
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200158 bool "Enable High-speed UART debug port selected by UART_FOR_CONSOLE."
159 default n
160 select CONSOLE_SERIAL
161 select DRIVERS_UART
162 select DRIVERS_UART_8250MEM
163
164config CONSOLE_UART_BASE_ADDRESS
165 depends on ENABLE_HSUART
166 hex "MMIO base address for UART"
167 default 0xd4000000
168
169config C_ENV_BOOTBLOCK_SIZE
170 hex
171 default 0x8000
172
173config DENVERTON_NS_CAR_NEM_ENHANCED
174 bool "Enhanced Non-evict mode"
175 depends on !FSP_CAR
176 default y
177 select SOC_INTEL_COMMON_BLOCK_CAR
178 select INTEL_CAR_NEM_ENHANCED
179 help
180 A current limitation of NEM (Non-Evict mode) is that code and data sizes
181 are derived from the requirement to not write out any modified cache line.
182 With NEM, if there is no physical memory behind the cached area,
183 the modified data will be lost and NEM results will be inconsistent.
184 ENHANCED NEM guarantees that modified data is always
185 kept in cache while clean data is replaced.
186
187endif ## SOC_INTEL_DENVERTON_NS