mb/system76/cml-u/dt: Make use of chipset devicetree
[coreboot.git] / src / soc / intel / elkhartlake / Kconfig
blob58c4556abaa6aa1e849a318bd545cf5070efb94e
1 ## SPDX-License-Identifier: GPL-2.0-only
3 config SOC_INTEL_ELKHARTLAKE
4         bool
5         select ACPI_INTEL_HARDWARE_SLEEP_VALUES
6         select ARCH_X86
7         select BOOT_DEVICE_SUPPORTS_WRITES
8         select CACHE_MRC_SETTINGS
9         select CPU_INTEL_COMMON
10         select CPU_INTEL_FIRMWARE_INTERFACE_TABLE
11         select CPU_SUPPORTS_PM_TIMER_EMULATION
12         select DISPLAY_FSP_VERSION_INFO
13         select EDK2_CPU_TIMER_LIB if PAYLOAD_EDK2
14         select FSP_COMPRESS_FSP_S_LZ4
15         select FSP_M_XIP
16         select FSP_STATUS_GLOBAL_RESET_REQUIRED_3
17         select GENERIC_GPIO_LIB
18         select HAVE_FSP_GOP
19         select HAVE_SMI_HANDLER
20         select IDT_IN_EVERY_STAGE
21         select INTEL_CAR_NEM
22         select INTEL_DESCRIPTOR_MODE_CAPABLE
23         select INTEL_GMA_ACPI
24         select INTEL_GMA_ADD_VBT if RUN_FSP_GOP
25         select MP_SERVICES_PPI_V1
26         select MRC_SETTINGS_PROTECT
27         select NEED_SMALL_2MB_PAGE_TABLES
28         select PARALLEL_MP_AP_WORK
29         select PLATFORM_USES_FSP2_1
30         select PMC_GLOBAL_RESET_ENABLE_LOCK
31         select SOC_INTEL_COMMON
32         select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE
33         select SOC_INTEL_COMMON_BLOCK
34         select SOC_INTEL_COMMON_BLOCK_ACPI
35         select SOC_INTEL_COMMON_BLOCK_ACPI_CPPC
36         select SOC_INTEL_COMMON_BLOCK_ACPI_GPIO
37         select SOC_INTEL_COMMON_BLOCK_ACPI_LPIT
38         select SOC_INTEL_COMMON_BLOCK_ACPI_PEP
39         select SOC_INTEL_COMMON_BLOCK_CAR
40         select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG
41         select SOC_INTEL_COMMON_BLOCK_CPU
42         select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT
43         select SOC_INTEL_COMMON_BLOCK_CPU_SMMRELOCATE
44         select SOC_INTEL_COMMON_BLOCK_GPIO_DUAL_ROUTE_SUPPORT
45         select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2
46         select SOC_INTEL_COMMON_BLOCK_HDA
47         select HAVE_INTEL_FSP_REPO
48         select HECI_DISABLE_USING_SMM if DISABLE_HECI1_AT_PRE_BOOT
49         select SOC_INTEL_COMMON_BLOCK_ME_SPEC_15
50         select SOC_INTEL_COMMON_BLOCK_PMC_EPOC
51         select SOC_INTEL_COMMON_BLOCK_POWER_LIMIT
52         select SOC_INTEL_COMMON_BLOCK_SA
53         select SOC_INTEL_COMMON_BLOCK_SCS
54         select SOC_INTEL_COMMON_BLOCK_SMM
55         select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP
56         select SOC_INTEL_COMMON_FSP_RESET
57         select SOC_INTEL_COMMON_PCH_CLIENT
58         select SOC_INTEL_COMMON_RESET
59         select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION
60         select SSE2
61         select SUPPORT_CPU_UCODE_IN_CBFS
62         select TSC_MONOTONIC_TIMER
63         select UDELAY_TSC
64         select UDK_202005_BINDING
65         select USE_FSP_NOTIFY_PHASE_POST_PCI_ENUM
66         select SOC_INTEL_RAPL_DISABLE_VIA_MCHBAR
67         select X86_CLFLUSH_CAR
68         help
69           Intel Elkhartlake support
71 if SOC_INTEL_ELKHARTLAKE
73 config MAX_CPUS
74         int
75         default 4
77 config DCACHE_RAM_BASE
78         default 0xfef00000
80 config DCACHE_RAM_SIZE
81         default 0xc0000
82         help
83           The size of the cache-as-ram region required during bootblock
84           and/or romstage.
86 config DCACHE_BSP_STACK_SIZE
87         hex
88         default 0x30400
89         help
90           The amount of anticipated stack usage in CAR by bootblock and
91           other stages. In the case of FSP_USES_CB_STACK default value will be
92           sum of FSP-M stack requirement (192KiB) and CB romstage stack requirement (~1KiB).
94 config FSP_TEMP_RAM_SIZE
95         hex
96         default 0x40000
97         help
98           The amount of anticipated heap usage in CAR by FSP.
99           Refer to Platform FSP integration guide document to know
100           the exact FSP requirement for Heap setup.
102 config IFD_CHIPSET
103         string
104         default "ehl"
106 config IED_REGION_SIZE
107         hex
108         default 0x0
110 config MAX_ROOT_PORTS
111         int
112         default 7
114 config MAX_SATA_PORTS
115         int
116         default 2
118 config MAX_PCIE_CLOCK_SRC
119         int
120         default 6
122 config SMM_TSEG_SIZE
123         hex
124         default 0x1000000
126 config SMM_RESERVED_SIZE
127         hex
128         default 0x200000
130 config PCR_BASE_ADDRESS
131         hex
132         default 0xfd000000
133         help
134           This option allows you to select MMIO Base Address of sideband bus.
136 config ECAM_MMCONF_BASE_ADDRESS
137         default 0xc0000000
139 config CPU_BCLK_MHZ
140         int
141         default 100
143 config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ
144         int
145         default 120
147 config CPU_XTAL_HZ
148         default 38400000
150 config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
151         int
152         default 100
154 config SOC_INTEL_COMMON_BLOCK_GSPI_MAX
155         int
156         default 3
158 config SOC_INTEL_I2C_DEV_MAX
159         int
160         default 8
162 config SOC_INTEL_UART_DEV_MAX
163         int
164         default 3
166 config CONSOLE_UART_BASE_ADDRESS
167         hex
168         default 0xfe042000
169         depends on INTEL_LPSS_UART_FOR_CONSOLE
171 # Clock divider parameters for 115200 baud rate
172 # Baudrate = (UART source clock * M) /(N *16)
173 # EHL UART source clock: 100MHz
174 config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL
175         hex
176         default 0x25a
178 config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL
179         hex
180         default 0x7fff
182 config VBOOT
183         select VBOOT_MUST_REQUEST_DISPLAY
184         select VBOOT_STARTS_IN_BOOTBLOCK
186 config CBFS_SIZE
187         default 0x200000
189 config FSP_HEADER_PATH
190         default "3rdparty/fsp/ElkhartLakeFspBinPkg/Include/"
192 config FSP_FD_PATH
193         string
194         depends on FSP_USE_REPO
195         default "3rdparty/fsp/ElkhartLakeFspBinPkg/FspBin/FSPRel.bin"
197 config PSE_ENABLE
198         bool "Enable PSE ARM controller"
199         help
200           Enable PSE IP. The PSE describes the integrated programmable
201           service engine that is designed together with x86 Atom cores
202           as an Asymmetric Multi-Processing (AMP) system.
204 config ADD_PSE_IMAGE_TO_CBFS
205         bool "Add PSE Firmware to CBFS"
206         depends on PSE_ENABLE
207         default n
208         help
209           PSE FW binary is required to use PSE dedicated peripherals from
210           x86 subsystem. Once PSE is enabled, the FW will be loaded from
211           CBFS by FSP and executed.
213 config PSE_IMAGE_FILE
214         string "PSE binary path and filename"
215         depends on ADD_PSE_IMAGE_TO_CBFS
216         help
217           The path and filename of the PSE binary.
219 config PSE_FW_FILE_SIZE_KIB
220         hex "Memory buffer (KiB) for PSE FW image"
221         depends on ADD_PSE_IMAGE_TO_CBFS
222         default 0x200
223         help
224           It is recommended to allocate at least 512 KiB for PSE FW.
226 config PSE_CONFIG_BUFFER_SIZE_KIB
227         hex "Memory buffer (KiB) for PSE config data"
228         depends on ADD_PSE_IMAGE_TO_CBFS
229         default 0x100
230         help
231           It is recommended to allocate at least 256 KiB for PSE config
232           data (FSP will append PSE config data to memory region right
233           after PSE FW memory region).
235 config EHL_TSN_DRIVER
236         bool
237         default n
238         help
239           Enable TSN GbE driver to provide board specific settings in the GBE MAC.
240           As an example of a possible change, the MAC address could be adjusted.
242 config SOC_INTEL_ELKHARTLAKE_DEBUG_CONSENT
243         int "Debug Consent for EHL"
244         # USB DBC is more common for developers so make this default to 3 if
245         # SOC_INTEL_DEBUG_CONSENT=y
246         default 3 if SOC_INTEL_DEBUG_CONSENT
247         default 0
248         help
249           This is to control debug interface on SOC.
250           Setting non-zero value will allow to use DBC or DCI to debug SOC.
251           PlatformDebugConsent in FspmUpd.h has the details.
253           Desired platform debug type are
254           0:Disabled, 1:Enabled (DCI OOB+[DbC]), 2:Enabled (DCI OOB),
255           3:Enabled (USB3 DbC), 4:Enabled (XDP/MIPI60), 5:Enabled (USB2 DbC),
256           6:Enable (2-wire DCI OOB), 7:Manual
258 config PRERAM_CBMEM_CONSOLE_SIZE
259         hex
260         default 0x1400
262 config SOC_INTEL_ELKHARTLAKE_TCO_NO_REBOOT_EN
263         bool "Disable reset on second TCO expiration"
264         depends on SOC_INTEL_COMMON_BLOCK_TCO
265         default n
266         help
267           Setting this option will prevent a host reset if the TCO timer expires
268           for the second time. Since this feature is not exposed to the OS in the
269           standard TCO interface, this setting can be enabled on firmware level.
270           This might be useful depending on the TCO policy.
272 config DIMM_SPD_SIZE
273         default 512
275 endif