Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 1 | config SOC_INTEL_ICELAKE |
| 2 | bool |
| 3 | help |
| 4 | Intel Icelake support |
| 5 | |
| 6 | if SOC_INTEL_ICELAKE |
| 7 | |
| 8 | config CPU_SPECIFIC_OPTIONS |
| 9 | def_bool y |
| 10 | select ACPI_INTEL_HARDWARE_SLEEP_VALUES |
| 11 | select ARCH_BOOTBLOCK_X86_32 |
| 12 | select ARCH_RAMSTAGE_X86_32 |
| 13 | select ARCH_ROMSTAGE_X86_32 |
| 14 | select ARCH_VERSTAGE_X86_32 |
| 15 | select BOOT_DEVICE_SPI_FLASH_RW_NOMMAP_EARLY if BOOT_DEVICE_SPI_FLASH |
| 16 | select BOOT_DEVICE_SUPPORTS_WRITES |
| 17 | select C_ENVIRONMENT_BOOTBLOCK |
| 18 | select CACHE_MRC_SETTINGS |
| 19 | select CACHE_RELOCATED_RAMSTAGE_OUTSIDE_CBMEM |
| 20 | select COMMON_FADT |
| 21 | select CPU_INTEL_FIRMWARE_INTERFACE_TABLE |
Subrata Banik | ffb83be | 2019-04-29 13:58:43 +0530 | [diff] [blame] | 22 | select FSP_M_XIP |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 23 | select GENERIC_GPIO_LIB |
| 24 | select HAVE_FSP_GOP |
| 25 | select INTEL_DESCRIPTOR_MODE_CAPABLE |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 26 | select HAVE_SMI_HANDLER |
| 27 | select IDT_IN_EVERY_STAGE |
| 28 | select INTEL_GMA_ACPI |
| 29 | select INTEL_GMA_ADD_VBT if RUN_FSP_GOP |
| 30 | select IOAPIC |
| 31 | select MRC_SETTINGS_PROTECT |
| 32 | select PARALLEL_MP |
| 33 | select PARALLEL_MP_AP_WORK |
Nico Huber | f5ca922 | 2018-11-29 17:05:32 +0100 | [diff] [blame] | 34 | select MICROCODE_BLOB_UNDISCLOSED |
Subrata Banik | 55fb6b4 | 2018-12-19 16:50:57 +0530 | [diff] [blame] | 35 | select PLATFORM_USES_FSP2_1 |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 36 | select POSTCAR_CONSOLE |
| 37 | select POSTCAR_STAGE |
| 38 | select REG_SCRIPT |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 39 | select SMP |
| 40 | select SOC_AHCI_PORT_IMPLEMENTED_INVERT |
| 41 | select PMC_GLOBAL_RESET_ENABLE_LOCK |
| 42 | select SOC_INTEL_COMMON |
| 43 | select SOC_INTEL_COMMON_ACPI_WAKE_SOURCE |
| 44 | select SOC_INTEL_COMMON_BLOCK |
| 45 | select SOC_INTEL_COMMON_BLOCK_ACPI |
| 46 | select SOC_INTEL_COMMON_BLOCK_CHIP_CONFIG |
| 47 | select SOC_INTEL_COMMON_BLOCK_CPU |
| 48 | select SOC_INTEL_COMMON_BLOCK_CPU_MPINIT |
| 49 | select SOC_INTEL_COMMON_BLOCK_GSPI_VERSION_2 |
| 50 | select SOC_INTEL_COMMON_BLOCK_HDA |
| 51 | select SOC_INTEL_COMMON_BLOCK_SA |
| 52 | select SOC_INTEL_COMMON_BLOCK_SMM |
| 53 | select SOC_INTEL_COMMON_BLOCK_SMM_IO_TRAP |
| 54 | select SOC_INTEL_COMMON_PCH_BASE |
| 55 | select SOC_INTEL_COMMON_RESET |
| 56 | select SSE2 |
| 57 | select SUPPORT_CPU_UCODE_IN_CBFS |
| 58 | select TSC_CONSTANT_RATE |
| 59 | select TSC_MONOTONIC_TIMER |
| 60 | select UDELAY_TSC |
| 61 | select UDK_2017_BINDING |
| 62 | select DISPLAY_FSP_VERSION_INFO |
Subrata Banik | a0368a0 | 2019-06-04 14:16:02 +0530 | [diff] [blame] | 63 | select HECI_DISABLE_USING_SMM |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 64 | |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 65 | config DCACHE_RAM_BASE |
| 66 | default 0xfef00000 |
| 67 | |
| 68 | config DCACHE_RAM_SIZE |
| 69 | default 0x40000 |
| 70 | help |
| 71 | The size of the cache-as-ram region required during bootblock |
| 72 | and/or romstage. |
| 73 | |
| 74 | config DCACHE_BSP_STACK_SIZE |
| 75 | hex |
Aamir Bohra | 23012a0 | 2018-10-09 20:33:16 +0530 | [diff] [blame] | 76 | default 0x20000 if FSP_USES_CB_STACK |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 77 | default 0x4000 |
| 78 | help |
| 79 | The amount of anticipated stack usage in CAR by bootblock and |
| 80 | other stages. |
| 81 | |
| 82 | config IFD_CHIPSET |
| 83 | string |
| 84 | default "icl" |
| 85 | |
| 86 | config IED_REGION_SIZE |
| 87 | hex |
| 88 | default 0x400000 |
| 89 | |
| 90 | config HEAP_SIZE |
| 91 | hex |
| 92 | default 0x8000 |
| 93 | |
| 94 | config MAX_ROOT_PORTS |
| 95 | int |
| 96 | default 16 |
| 97 | |
| 98 | config SMM_TSEG_SIZE |
| 99 | hex |
| 100 | default 0x800000 |
| 101 | |
| 102 | config SMM_RESERVED_SIZE |
| 103 | hex |
| 104 | default 0x200000 |
| 105 | |
| 106 | config PCR_BASE_ADDRESS |
| 107 | hex |
| 108 | default 0xfd000000 |
| 109 | help |
| 110 | This option allows you to select MMIO Base Address of sideband bus. |
| 111 | |
Subrata Banik | 26d706b | 2018-11-20 13:20:31 +0530 | [diff] [blame] | 112 | config MMCONF_BASE_ADDRESS |
| 113 | hex |
| 114 | default 0xc0000000 |
| 115 | |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 116 | config CPU_BCLK_MHZ |
| 117 | int |
| 118 | default 100 |
| 119 | |
| 120 | config SOC_INTEL_COMMON_BLOCK_GSPI_CLOCK_MHZ |
| 121 | int |
| 122 | default 120 |
| 123 | |
| 124 | config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ |
| 125 | int |
| 126 | default 133 |
| 127 | |
| 128 | config SOC_INTEL_COMMON_BLOCK_GSPI_MAX |
| 129 | int |
| 130 | default 3 |
| 131 | |
| 132 | config SOC_INTEL_I2C_DEV_MAX |
| 133 | int |
| 134 | default 6 |
| 135 | |
Subrata Banik | 26d706b | 2018-11-20 13:20:31 +0530 | [diff] [blame] | 136 | config SOC_INTEL_UART_DEV_MAX |
| 137 | int |
| 138 | default 3 |
| 139 | |
Nico Huber | 9995418 | 2019-05-29 23:33:06 +0200 | [diff] [blame] | 140 | config CONSOLE_UART_BASE_ADDRESS |
| 141 | hex |
| 142 | default 0xfe032000 |
| 143 | depends on INTEL_LPSS_UART_FOR_CONSOLE |
| 144 | |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 145 | # Clock divider parameters for 115200 baud rate |
| 146 | config SOC_INTEL_COMMON_LPSS_UART_CLK_M_VAL |
| 147 | hex |
| 148 | default 0x30 |
| 149 | |
| 150 | config SOC_INTEL_COMMON_LPSS_UART_CLK_N_VAL |
| 151 | hex |
| 152 | default 0xc35 |
| 153 | |
| 154 | config CHROMEOS |
| 155 | select CHROMEOS_RAMOOPS_DYNAMIC |
| 156 | |
| 157 | config VBOOT |
| 158 | select VBOOT_SEPARATE_VERSTAGE |
Joel Kitching | 6672bd8 | 2019-04-10 16:06:21 +0800 | [diff] [blame] | 159 | select VBOOT_MUST_REQUEST_DISPLAY |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 160 | select VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT |
| 161 | select VBOOT_STARTS_IN_BOOTBLOCK |
| 162 | select VBOOT_VBNV_CMOS |
| 163 | select VBOOT_VBNV_CMOS_BACKUP_TO_FLASH |
| 164 | |
| 165 | config C_ENV_BOOTBLOCK_SIZE |
| 166 | hex |
Subrata Banik | 458297c | 2019-01-07 14:24:27 +0530 | [diff] [blame] | 167 | default 0xC000 |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 168 | |
| 169 | config CBFS_SIZE |
| 170 | hex |
| 171 | default 0x200000 |
| 172 | |
| 173 | choice |
| 174 | prompt "Cache-as-ram implementation" |
Angel Pons | 7ed704d | 2019-07-12 15:46:43 +0200 | [diff] [blame] | 175 | default USE_ICELAKE_CAR_NEM_ENHANCED |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 176 | help |
| 177 | This option allows you to select how cache-as-ram (CAR) is set up. |
| 178 | |
| 179 | config USE_ICELAKE_CAR_NEM_ENHANCED |
| 180 | bool "Enhanced Non-evict mode" |
| 181 | select SOC_INTEL_COMMON_BLOCK_CAR |
| 182 | select INTEL_CAR_NEM_ENHANCED |
| 183 | help |
| 184 | A current limitation of NEM (Non-Evict mode) is that code and data |
| 185 | sizes are derived from the requirement to not write out any modified |
| 186 | cache line. With NEM, if there is no physical memory behind the |
| 187 | cached area, the modified data will be lost and NEM results will be |
| 188 | inconsistent. ENHANCED NEM guarantees that modified data is always |
| 189 | kept in cache while clean data is replaced. |
| 190 | |
| 191 | config USE_ICELAKE_FSP_CAR |
| 192 | bool "Use FSP CAR" |
| 193 | select FSP_CAR |
| 194 | help |
| 195 | Use FSP APIs to initialize and tear down the Cache-As-Ram. |
| 196 | |
| 197 | endchoice |
| 198 | |
| 199 | config FSP_HEADER_PATH |
Patrick Georgi | c6382cd | 2018-10-26 22:03:17 +0200 | [diff] [blame] | 200 | string "Location of FSP headers" |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 201 | default "src/vendorcode/intel/fsp/fsp2_0/icelake/" |
| 202 | |
| 203 | config FSP_FD_PATH |
| 204 | string |
| 205 | depends on FSP_USE_REPO |
| 206 | default "3rdparty/fsp/IceLakeFspBinPkg/Fsp.fd" |
| 207 | |
Subrata Banik | b14b55d | 2019-07-12 18:28:56 +0530 | [diff] [blame^] | 208 | config ENABLE_DISPLAY_OVER_EXT_PCIE_GFX |
| 209 | bool "Enable display over external PCIE GFX card" |
| 210 | select ALWAYS_LOAD_OPROM |
| 211 | help |
| 212 | It's possible to bring display through external graphics card over PCIE |
| 213 | in coreboot. This option enables graphics initialization with external |
| 214 | graphics card. |
| 215 | |
| 216 | Selected by mainboard that runs OpRom to perform display |
| 217 | initialization over attached PCIe GFX card. |
| 218 | |
Aamir Bohra | 3ee54bb | 2018-10-17 11:55:01 +0530 | [diff] [blame] | 219 | endif |