blob: 89bbbb0c45aea00a5318473aeb5c2f8c8694873a [file] [log] [blame]
Elyes HAOUASf7b2fe62020-05-07 12:38:15 +02001# SPDX-License-Identifier: GPL-2.0-only
Mariusz Szafranskia4041332017-08-02 17:28:17 +02002
3config SOC_INTEL_DENVERTON_NS
4 bool
5 help
6 Intel Denverton-NS SoC support
7
8if SOC_INTEL_DENVERTON_NS
9
10config CPU_SPECIFIC_OPTIONS
11 def_bool y
Angel Ponsa32df262020-09-25 10:20:11 +020012 select ARCH_ALL_STAGES_X86_32
Mariusz Szafranskia4041332017-08-02 17:28:17 +020013 select BOOT_DEVICE_SUPPORTS_WRITES
Nico Huber371a6672018-11-13 22:06:40 +010014 select DEBUG_GPIO
Mariusz Szafranskia4041332017-08-02 17:28:17 +020015 select SOC_INTEL_COMMON
16 select SOC_INTEL_COMMON_RESET
17 select PLATFORM_USES_FSP2_0
Mariusz Szafranskia4041332017-08-02 17:28:17 +020018 select IOAPIC
Johanna Schander8a6e0362019-12-08 15:54:09 +010019 select HAVE_INTEL_FSP_REPO
Mariusz Szafranskia4041332017-08-02 17:28:17 +020020 select HAVE_SMI_HANDLER
Mariusz Szafranskia4041332017-08-02 17:28:17 +020021 select CACHE_MRC_SETTINGS
Mariusz Szafranskia4041332017-08-02 17:28:17 +020022 select PARALLEL_MP
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020023 select PCR_COMMON_IOSF_1_0
Stefan Tauneref8b9572018-09-06 00:34:28 +020024 select INTEL_DESCRIPTOR_MODE_CAPABLE
Mariusz Szafranskia4041332017-08-02 17:28:17 +020025 select SOC_INTEL_COMMON_BLOCK
Julien Viard de Galbert5a1f5402018-02-08 14:03:28 +010026 select SOC_INTEL_COMMON_BLOCK_CPU
Julien Viard de Galbertcf2b72f2018-04-05 11:24:45 +020027 select SOC_INTEL_COMMON_BLOCK_ACPI
Julien Viard de Galbert2912e8e2018-08-14 16:15:26 +020028 select SOC_INTEL_COMMON_BLOCK_PMC
29 select ACPI_INTEL_HARDWARE_SLEEP_VALUES
Mariusz Szafranskia4041332017-08-02 17:28:17 +020030 select SOC_INTEL_COMMON_BLOCK_FAST_SPI
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020031 select SOC_INTEL_COMMON_BLOCK_GPIO
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020032 select SOC_INTEL_COMMON_BLOCK_PCR
Mariusz Szafranskia4041332017-08-02 17:28:17 +020033 select TSC_MONOTONIC_TIMER
34 select TSC_SYNC_MFENCE
35 select UDELAY_TSC
Subrata Banik74558812018-01-25 11:41:04 +053036 select UDK_2015_BINDING
Michael Niewöhner63032432020-10-11 17:34:54 +020037 select CPU_INTEL_COMMON
Vanessa Eusebiocd979822018-06-06 13:12:53 -070038 select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
Felix Singere0b74a12020-03-03 22:39:02 +010039 select SUPPORT_CPU_UCODE_IN_CBFS
Mariusz Szafranskia4041332017-08-02 17:28:17 +020040
Andrey Petrovdafd5142019-12-30 09:58:47 -080041config MMCONF_BASE_ADDRESS
42 hex
43 default 0xe0000000
44
Mariusz Szafranskia4041332017-08-02 17:28:17 +020045config FSP_T_ADDR
Elyes HAOUASef906092020-02-20 19:41:17 +010046 hex "Intel FSP-T (temp RAM init) binary location"
Mariusz Szafranskia4041332017-08-02 17:28:17 +020047 depends on ADD_FSP_BINARIES && FSP_CAR
48 default 0xfff30000
49 help
50 The memory location of the Intel FSP-T binary for this platform.
51
52config FSP_M_ADDR
53 hex "Intel FSP-M (memory init) binary location"
54 depends on ADD_FSP_BINARIES
55 default 0xfff32000
56 help
57 The memory location of the Intel FSP-M binary for this platform.
58
59config FSP_S_ADDR
60 hex "Intel FSP-S (silicon init) binary location"
61 depends on ADD_FSP_BINARIES
62 default 0xfffc3000
63 help
64 The memory location of the Intel FSP-S binary for this platform.
65
Felix Singerfdccfc62019-01-15 07:29:57 +010066config FSP_HEADER_PATH
Felix Singerfdccfc62019-01-15 07:29:57 +010067 default "3rdparty/fsp/DenvertonNSFspBinPkg/Include/"
68
69config FSP_FD_PATH
Felix Singerfdccfc62019-01-15 07:29:57 +010070 default "3rdparty/fsp/DenvertonNSFspBinPkg/FspBin/DenvertonNSFsp.fd"
71
Mariusz Szafranskia4041332017-08-02 17:28:17 +020072# CAR memory layout on DENVERTON_NS hardware:
73## CAR base address - 0xfef00000
74## CAR size 1MB - 0x100 (0xfff00)
75## coreboot usage:
76## DCACHE base - 0xfef00000
77## DCACHE size - 0xb0000
78## FSP usage:
79## FSP base - 0xfefb0000
80## FSP size - 0x50000 - 0x100 (0x4ff00)
81config MAX_CPUS
82 int
83 default 16
84
Julien Viard de Galbert3ac3a682018-03-29 11:36:21 +020085config PCR_BASE_ADDRESS
86 hex
87 default 0xfd000000
88 help
89 This option allows you to select MMIO Base Address of sideband bus.
90
Mariusz Szafranskia4041332017-08-02 17:28:17 +020091config DCACHE_RAM_BASE
92 hex
93 default 0xfef00000
94
95config DCACHE_RAM_SIZE
96 hex
97 default 0xb0000 if FSP_CAR
98 default 0x100000 if !FSP_CAR
99
100config DCACHE_BSP_STACK_SIZE
101 hex
102 default 0x10000
103
Julien Viard de Galbert5a1f5402018-02-08 14:03:28 +0100104config CPU_BCLK_MHZ
105 int
106 default 100
107
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200108config SMM_TSEG_SIZE
109 hex
110 default 0x200000
111
112config SMM_RESERVED_SIZE
113 hex
114 default 0x000000
115
116config IQAT_ENABLE
117 bool "Enable IQAT"
118 default y
119
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200120config HSUART_DEV
121 hex
122 default 0x1a
123
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200124choice
125 prompt "UART mode selection"
126 default NON_LEGACY_UART_MODE
127
128config NON_LEGACY_UART_MODE
129 bool "Non Legacy Mode"
130 help
131 Disable legacy UART mode
132
133config LEGACY_UART_MODE
134 bool "Legacy Mode"
135 help
136 Enable legacy UART mode
137endchoice
138
139config ENABLE_HSUART
Nico Huber3eb720c2018-11-11 00:27:41 +0100140 depends on NON_LEGACY_UART_MODE
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200141 bool "Enable High-speed UART debug port selected by UART_FOR_CONSOLE."
142 default n
143 select CONSOLE_SERIAL
144 select DRIVERS_UART
145 select DRIVERS_UART_8250MEM
146
147config CONSOLE_UART_BASE_ADDRESS
148 depends on ENABLE_HSUART
149 hex "MMIO base address for UART"
150 default 0xd4000000
151
152config C_ENV_BOOTBLOCK_SIZE
153 hex
154 default 0x8000
155
156config DENVERTON_NS_CAR_NEM_ENHANCED
157 bool "Enhanced Non-evict mode"
158 depends on !FSP_CAR
159 default y
160 select SOC_INTEL_COMMON_BLOCK_CAR
Aamir Bohrac1d227d2020-07-16 09:03:06 +0530161 select USE_CAR_NEM_ENHANCED_V1
Mariusz Szafranskia4041332017-08-02 17:28:17 +0200162 help
163 A current limitation of NEM (Non-Evict mode) is that code and data sizes
164 are derived from the requirement to not write out any modified cache line.
165 With NEM, if there is no physical memory behind the cached area,
166 the modified data will be lost and NEM results will be inconsistent.
167 ENHANCED NEM guarantees that modified data is always
168 kept in cache while clean data is replaced.
169
170endif ## SOC_INTEL_DENVERTON_NS