blob: 8d9a55002fbb54e10c0e487f409a1f89bb5a2114 [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
29 select BOOTBLOCK_CONSOLE
30 select BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY if BOOT_DEVICE_SPI_FLASH
31 select BOOT_DEVICE_SUPPORTS_WRITES
32 select POSTCAR_CONSOLE
33 select SOC_INTEL_COMMON
34 select SOC_INTEL_COMMON_RESET
35 select PLATFORM_USES_FSP2_0
36 select HAVE_HARD_RESET
37 select POSTCAR_STAGE
38 select C_ENVIRONMENT_BOOTBLOCK
39 select IOAPIC
40 select HAVE_SMI_HANDLER
41 select SMM_TSEG
42 select CACHE_MRC_SETTINGS
43 select RELOCATABLE_RAMSTAGE # Build fails if this is not selected
44 select PARALLEL_MP
45 select SMP
46 select SOC_INTEL_COMMON_BLOCK
47# select SOC_INTEL_COMMON_BLOCK_SA
48 select SOC_INTEL_COMMON_BLOCK_FAST_SPI
49 select TSC_CONSTANT_RATE
50 select TSC_MONOTONIC_TIMER
51 select TSC_SYNC_MFENCE
52 select UDELAY_TSC
Subrata Banik74558812018-01-25 11:41:04 +053053 select UDK_2015_BINDING
Mariusz Szafranskia4041332017-08-02 17:28:17 +020054
55config FSP_T_ADDR
56 hex "Intel FSP-T (temp ram init) binary location"
57 depends on ADD_FSP_BINARIES && FSP_CAR
58 default 0xfff30000
59 help
60 The memory location of the Intel FSP-T binary for this platform.
61
62config FSP_M_ADDR
63 hex "Intel FSP-M (memory init) binary location"
64 depends on ADD_FSP_BINARIES
65 default 0xfff32000
66 help
67 The memory location of the Intel FSP-M binary for this platform.
68
69config FSP_S_ADDR
70 hex "Intel FSP-S (silicon init) binary location"
71 depends on ADD_FSP_BINARIES
72 default 0xfffc3000
73 help
74 The memory location of the Intel FSP-S binary for this platform.
75
76# CAR memory layout on DENVERTON_NS hardware:
77## CAR base address - 0xfef00000
78## CAR size 1MB - 0x100 (0xfff00)
79## coreboot usage:
80## DCACHE base - 0xfef00000
81## DCACHE size - 0xb0000
82## FSP usage:
83## FSP base - 0xfefb0000
84## FSP size - 0x50000 - 0x100 (0x4ff00)
85config MAX_CPUS
86 int
87 default 16
88
89config DCACHE_RAM_BASE
90 hex
91 default 0xfef00000
92
93config DCACHE_RAM_SIZE
94 hex
95 default 0xb0000 if FSP_CAR
96 default 0x100000 if !FSP_CAR
97
98config DCACHE_BSP_STACK_SIZE
99 hex
100 default 0x10000
101
102config CPU_MICROCODE_CBFS_LOC
103 hex
104 default 0xfff20040
105
106config CPU_MICROCODE_CBFS_LEN
107 hex
108 default 0x0ff80
109
110config SMM_TSEG_SIZE
111 hex
112 default 0x200000
113
114config SMM_RESERVED_SIZE
115 hex
116 default 0x000000
117
118config IQAT_ENABLE
119 bool "Enable IQAT"
120 default y
121
122config IQAT_MEMORY_REGION_SIZE
123 depends on IQAT_ENABLE
124 hex
125 default 0x100000
126 help
127 Do not change this value
128
129config HSUART_DEV
130 hex
131 default 0x1a
132
133config HSUART_FUNC
134 hex
135 default 0x0
136
137choice
138 prompt "UART mode selection"
139 default NON_LEGACY_UART_MODE
140
141config NON_LEGACY_UART_MODE
142 bool "Non Legacy Mode"
143 help
144 Disable legacy UART mode
145
146config LEGACY_UART_MODE
147 bool "Legacy Mode"
148 help
149 Enable legacy UART mode
150endchoice
151
152config ENABLE_HSUART
153 depends on (!DRIVERS_UART_8250IO && NON_LEGACY_UART_MODE)
154 bool "Enable High-speed UART debug port selected by UART_FOR_CONSOLE."
155 default n
156 select CONSOLE_SERIAL
157 select DRIVERS_UART
158 select DRIVERS_UART_8250MEM
159
160config CONSOLE_UART_BASE_ADDRESS
161 depends on ENABLE_HSUART
162 hex "MMIO base address for UART"
163 default 0xd4000000
164
165config C_ENV_BOOTBLOCK_SIZE
166 hex
167 default 0x8000
168
169config DENVERTON_NS_CAR_NEM_ENHANCED
170 bool "Enhanced Non-evict mode"
171 depends on !FSP_CAR
172 default y
173 select SOC_INTEL_COMMON_BLOCK_CAR
174 select INTEL_CAR_NEM_ENHANCED
175 help
176 A current limitation of NEM (Non-Evict mode) is that code and data sizes
177 are derived from the requirement to not write out any modified cache line.
178 With NEM, if there is no physical memory behind the cached area,
179 the modified data will be lost and NEM results will be inconsistent.
180 ENHANCED NEM guarantees that modified data is always
181 kept in cache while clean data is replaced.
182
183endif ## SOC_INTEL_DENVERTON_NS