Jonathan Zhang | 9722f5f | 2023-01-25 09:04:59 -0800 | [diff] [blame] | 1 | ## SPDX-License-Identifier: GPL-2.0-only |
| 2 | |
| 3 | if SOC_INTEL_SAPPHIRERAPIDS_SP |
| 4 | |
| 5 | config SOC_SPECIFIC_OPTIONS |
| 6 | def_bool y |
| 7 | select MICROCODE_BLOB_NOT_HOOKED_UP |
| 8 | select SAVE_MRC_AFTER_FSPS |
| 9 | select SOC_INTEL_MEM_MAPPED_PM_CONFIGURATION |
Tim Chu | ac04c21 | 2023-02-24 09:20:41 +0000 | [diff] [blame] | 10 | select DISABLE_ACPI_HIBERNATE |
Patrick Rudolph | ae90fc0 | 2023-04-04 10:04:07 +0200 | [diff] [blame^] | 11 | select DEFAULT_X2APIC_RUNTIME |
Jonathan Zhang | 9722f5f | 2023-01-25 09:04:59 -0800 | [diff] [blame] | 12 | |
Tim Chu | 68107dd | 2023-02-17 03:00:39 +0000 | [diff] [blame] | 13 | config CHIPSET_DEVICETREE |
| 14 | string |
| 15 | default "soc/intel/xeon_sp/spr/chipset.cb" |
| 16 | |
Jonathan Zhang | 9722f5f | 2023-01-25 09:04:59 -0800 | [diff] [blame] | 17 | config FSP_HEADER_PATH |
| 18 | string "Location of FSP headers" |
| 19 | depends on MAINBOARD_USES_FSP2_0 |
| 20 | default "src/vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp" |
| 21 | |
| 22 | config MAX_CPUS |
| 23 | int |
| 24 | default 255 |
| 25 | |
Naresh Solanki | 12bfe6b | 2023-02-08 17:02:50 +0100 | [diff] [blame] | 26 | config ACPI_CPU_STRING |
| 27 | string |
| 28 | default "\\_SB.C%03X" |
| 29 | |
Jonathan Zhang | 9722f5f | 2023-01-25 09:04:59 -0800 | [diff] [blame] | 30 | config MAX_SOCKET_UPD |
| 31 | int |
| 32 | default 2 |
| 33 | help |
| 34 | This is used for configuring common SPR UPD tables which their sizes |
| 35 | depend on the socket number. Since it's the maximal socket number for |
| 36 | the common UPD tables, mainboard should not overwrite it. |
| 37 | |
| 38 | config SIPI_FINAL_TIMEOUT |
| 39 | int |
| 40 | default 400000 |
| 41 | |
| 42 | config PCR_BASE_ADDRESS |
| 43 | hex |
| 44 | default 0xfd000000 |
| 45 | help |
| 46 | This option allows you to select MMIO Base Address of sideband bus. |
| 47 | |
| 48 | config DCACHE_RAM_BASE |
| 49 | hex |
| 50 | default 0xfe800000 |
| 51 | |
| 52 | config DCACHE_RAM_SIZE |
| 53 | hex |
| 54 | default 0x1fff00 |
| 55 | help |
| 56 | The size of the cache-as-ram region required during bootblock |
| 57 | and/or romstage. FSP-T reserves the upper 0x100 for |
| 58 | FspReservedBuffer. |
| 59 | |
| 60 | config DCACHE_BSP_STACK_SIZE |
| 61 | hex |
| 62 | default 0x40000 |
| 63 | help |
| 64 | The amount of anticipated stack usage in CAR by bootblock and |
| 65 | other stages. It needs to include FSP-M stack requirement and |
| 66 | CB romstage stack requirement. The integration documentation |
| 67 | says this needs to be 256KiB. |
| 68 | |
| 69 | config FSP_M_RC_HEAP_SIZE |
| 70 | hex |
| 71 | default 0x150000 |
| 72 | help |
| 73 | On xeon_sp/spr FSP-M has two separate heap managers, one regular |
| 74 | whose size and base are controllable via the StackBase and |
| 75 | StackSize UPDs and a 'rc' heap manager that is statically |
| 76 | allocated at 0xfe800000 (the CAR base) and consumes about 0x150000 |
| 77 | bytes of memory. |
| 78 | |
| 79 | config CPU_MICROCODE_CBFS_LOC |
| 80 | hex |
| 81 | default 0xffe0fdc0 |
| 82 | |
| 83 | config CPU_MICROCODE_CBFS_LEN |
| 84 | hex |
| 85 | default 0x8c00 |
| 86 | |
| 87 | config HEAP_SIZE |
| 88 | hex |
| 89 | default 0x80000 |
| 90 | |
| 91 | config STACK_SIZE |
| 92 | hex |
| 93 | default 0x4000 |
| 94 | |
| 95 | config FSP_TEMP_RAM_SIZE |
| 96 | hex |
| 97 | depends on FSP_USES_CB_STACK |
| 98 | default 0x60000 |
| 99 | help |
| 100 | The amount of anticipated heap usage in CAR by FSP. |
| 101 | Refer to Platform FSP integration guide document to know |
| 102 | the exact FSP requirement for Heap setup. The FSP integration |
| 103 | documentation says this needs to be at least 128KiB, but practice |
| 104 | show this needs to be 256KiB or more. |
| 105 | |
| 106 | config IED_REGION_SIZE |
| 107 | hex |
| 108 | default 0x400000 |
| 109 | |
| 110 | config IFD_CHIPSET |
| 111 | string |
| 112 | default "lbg" |
| 113 | |
| 114 | config SOC_INTEL_COMMON_BLOCK_P2SB |
| 115 | def_bool y |
| 116 | |
| 117 | config SOC_INTEL_HAS_BIOS_DONE_MSR |
| 118 | def_bool y |
| 119 | |
| 120 | config SOC_INTEL_HAS_NCMEM |
| 121 | def_bool y |
| 122 | |
| 123 | config SOC_INTEL_HAS_CXL |
| 124 | def_bool y |
| 125 | |
| 126 | config SOC_INTEL_PCIE_64BIT_ALLOC |
| 127 | def_bool y |
| 128 | |
| 129 | config SOC_INTEL_MMAPVTD_ONLY_FOR_DPR |
| 130 | def_bool y |
| 131 | |
| 132 | config CPU_BCLK_MHZ |
| 133 | int |
| 134 | default 100 |
| 135 | |
| 136 | # SPR-SP has 4 IMCs, 2 channels per IMC, 2 DIMMs per channel |
| 137 | # Default value is set to two sockets, full config. |
| 138 | config MAX_IMC |
| 139 | int |
| 140 | default 4 |
| 141 | |
| 142 | config MAX_MC_CHN |
| 143 | int |
| 144 | default 2 |
| 145 | |
| 146 | config DIMM_MAX |
| 147 | int |
| 148 | default 32 |
| 149 | |
| 150 | # DDR4 |
| 151 | config DIMM_SPD_SIZE |
| 152 | int |
| 153 | default 1024 |
| 154 | |
| 155 | config MAX_ACPI_TABLE_SIZE_KB |
| 156 | int |
Patrick Rudolph | 87d97ff | 2023-01-19 20:00:34 +0100 | [diff] [blame] | 157 | default 400 if MAX_SOCKET = 4 |
Jonathan Zhang | 9722f5f | 2023-01-25 09:04:59 -0800 | [diff] [blame] | 158 | default 224 |
| 159 | |
| 160 | config FIXED_SMBUS_IO_BASE |
| 161 | default 0x780 |
| 162 | |
| 163 | config DISPLAY_UPD_IIO_DATA |
| 164 | def_bool n |
| 165 | depends on DISPLAY_UPD_DATA |
| 166 | |
| 167 | if INTEL_TXT |
| 168 | |
| 169 | config INTEL_TXT_SINIT_SIZE |
| 170 | hex |
| 171 | default 0x50000 |
| 172 | help |
| 173 | According to document number 572782 this needs to be 256KiB |
| 174 | for the SINIT module and 64KiB for SINIT data. |
| 175 | |
| 176 | config INTEL_TXT_HEAP_SIZE |
| 177 | hex |
| 178 | default 0xf0000 |
| 179 | help |
| 180 | This must be 960KiB according to 572782. |
| 181 | |
| 182 | endif # INTEL_TXT |
| 183 | |
| 184 | endif |