blob: f4bd7d64180b8b956008bed0f1765997abb7f5d7 [file] [log] [blame]
Martin Roth7d86f342024-02-16 11:04:02 -07001## SPDX-License-Identifier: GPL-2.0-only
2
Felix Heldd123f8d2023-12-15 10:57:30 +01003config SOC_AMD_GENOA_POC
Arthur Heymans6d3682e2023-07-13 12:34:04 +02004 bool
5
Felix Heldd123f8d2023-12-15 10:57:30 +01006if SOC_AMD_GENOA_POC
Arthur Heymans6d3682e2023-07-13 12:34:04 +02007
8config SOC_SPECIFIC_OPTIONS
9 def_bool y
Felix Heldd1065a32023-12-12 19:36:55 +010010 select ACPI_SOC_NVS
Arthur Heymans6d3682e2023-07-13 12:34:04 +020011 select ARCH_X86
Varshit Pandya0f666f72023-12-18 23:07:21 +053012 select DEFAULT_X2APIC
Felix Heldd1065a32023-12-12 19:36:55 +010013 select HAVE_ACPI_TABLES
Arthur Heymansd293b202024-02-02 19:35:13 +010014 select HAVE_X86_64_SUPPORT
Arthur Heymans2e2f1662023-07-14 22:58:49 +020015 select HAVE_SMI_HANDLER
Arthur Heymans6d3682e2023-07-13 12:34:04 +020016 select RESET_VECTOR_IN_RAM
17 select SOC_AMD_COMMON
Arthur Heymans2e2f1662023-07-14 22:58:49 +020018 select SOC_AMD_COMMON_BLOCK_ACPI
Arthur Heymans6d3682e2023-07-13 12:34:04 +020019 select SOC_AMD_COMMON_BLOCK_ACPIMMIO
Felix Heldd1065a32023-12-12 19:36:55 +010020 select SOC_AMD_COMMON_BLOCK_ACPI_CPU_POWER_STATE
Felix Heldb499c1f2023-12-12 20:39:38 +010021 select SOC_AMD_COMMON_BLOCK_ACPI_IVRS
Felix Heldaab8a222024-01-08 23:30:38 +010022 select SOC_AMD_COMMON_BLOCK_ACPI_MADT
Arthur Heymans4da9d6b42023-07-13 14:19:09 +020023 select SOC_AMD_COMMON_BLOCK_AOAC
Varshit Pandya95d78d92023-10-04 19:30:21 +053024 select SOC_AMD_COMMON_BLOCK_BANKED_GPIOS
Arthur Heymans48167b12023-07-13 14:07:54 +020025 select SOC_AMD_COMMON_BLOCK_CPUFREQ_FAM17H_19H
Felix Held926887c2023-10-13 21:19:53 +020026 select SOC_AMD_COMMON_BLOCK_DATA_FABRIC
27 select SOC_AMD_COMMON_BLOCK_DATA_FABRIC_DOMAIN
28 select SOC_AMD_COMMON_BLOCK_DATA_FABRIC_MULTI_PCI_SEGMENT
29 select SOC_AMD_COMMON_BLOCK_DATA_FABRIC_EXTENDED_MMIO
Arthur Heymansc666a912023-07-13 14:34:10 +020030 select SOC_AMD_COMMON_BLOCK_HAS_ESPI
Felix Heldd26f5a12023-11-20 16:31:31 +010031 select SOC_AMD_COMMON_BLOCK_I2C
Arthur Heymansc5122f92023-07-14 23:27:31 +020032 select SOC_AMD_COMMON_BLOCK_IOMMU
Arthur Heymansc666a912023-07-13 14:34:10 +020033 select SOC_AMD_COMMON_BLOCK_LPC
Arthur Heymans447e2792023-07-14 23:05:46 +020034 select SOC_AMD_COMMON_BLOCK_MCAX
Arthur Heymans6d3682e2023-07-13 12:34:04 +020035 select SOC_AMD_COMMON_BLOCK_NONCAR
Felix Held80434a62023-12-13 23:11:45 +010036 select SOC_AMD_COMMON_BLOCK_PCI
Arthur Heymans6d3682e2023-07-13 12:34:04 +020037 select SOC_AMD_COMMON_BLOCK_PCI_MMCONF
Felix Held0f209b52023-10-26 14:27:57 +020038 select SOC_AMD_COMMON_BLOCK_PSP_GEN2
Felix Held51d1f302023-10-04 21:10:36 +020039 select SOC_AMD_COMMON_BLOCK_PSP_SPL
Varshit Pandyac0f19832023-10-04 19:26:21 +053040 select SOC_AMD_COMMON_BLOCK_SMI
Arthur Heymans2e2f1662023-07-14 22:58:49 +020041 select SOC_AMD_COMMON_BLOCK_SMM
Varshit Pandya0a2d2a92023-10-16 17:26:35 +053042 select SOC_AMD_COMMON_BLOCK_SMU
43 select SOC_AMD_COMMON_BLOCK_SMU_SX_ENTRY
Felix Heldd1065a32023-12-12 19:36:55 +010044 select SOC_AMD_COMMON_BLOCK_SVI3
Arthur Heymans48167b12023-07-13 14:07:54 +020045 select SOC_AMD_COMMON_BLOCK_TSC
Varshit Pandya970d7702023-10-06 18:14:02 +053046 select SOC_AMD_COMMON_BLOCK_UART
Arthur Heymans5ee1d232023-07-14 23:16:22 +020047 select SOC_AMD_COMMON_BLOCK_UCODE
Arthur Heymansc666a912023-07-13 14:34:10 +020048 select SOC_AMD_COMMON_BLOCK_USE_ESPI
Martin Roth50a3d6f2023-10-25 16:17:16 -060049 select SOC_AMD_OPENSIL
Felix Held9314bb62023-12-15 11:15:26 +010050 select SOC_AMD_OPENSIL_GENOA_POC
Arthur Heymanse4eba132023-07-13 14:02:42 +020051 select X86_CUSTOM_BOOTMEDIA
Arthur Heymans6d3682e2023-07-13 12:34:04 +020052
Arthur Heymansd293b202024-02-02 19:35:13 +010053config USE_X86_64_SUPPORT
Arthur Heymans6d3682e2023-07-13 12:34:04 +020054 default y
55
vbpandya87d8b8c2023-09-22 20:49:37 +053056config CHIPSET_DEVICETREE
57 string
Felix Heldd123f8d2023-12-15 10:57:30 +010058 default "soc/amd/genoa_poc/chipset.cb"
vbpandya87d8b8c2023-09-22 20:49:37 +053059
Felix Heldd26f5a12023-11-20 16:31:31 +010060config DRIVERS_I2C_DESIGNWARE_CLOCK_MHZ
61 int
62 default 150
63
Arthur Heymans6d3682e2023-07-13 12:34:04 +020064config EARLY_RESERVED_DRAM_BASE
65 hex
66 default 0x7000000
67 help
68 This variable defines the base address of the DRAM which is reserved
69 for usage by coreboot in early stages (i.e. before ramstage is up).
70 This memory gets reserved in BIOS tables to ensure that the OS does
71 not use it, thus preventing corruption of OS memory in case of S3
72 resume.
73
74config EARLYRAM_BSP_STACK_SIZE
75 hex
76 default 0x1000
77
Varshit Pandyaa7759582023-10-17 21:59:39 +053078config MAX_CPUS
79 int
80 default 384
81
Arthur Heymans6d3682e2023-07-13 12:34:04 +020082config PSP_APOB_DRAM_ADDRESS
83 hex
84 default 0x7001000
85 help
86 Location in DRAM where the PSP will copy the AGESA PSP Output
87 Block.
88
89config PSP_APOB_DRAM_SIZE
90 hex
91 default 0x20000
92
93config PRERAM_CBMEM_CONSOLE_SIZE
94 hex
95 default 0x1600
96 help
97 Increase this value if preram cbmem console is getting truncated
98
99config C_ENV_BOOTBLOCK_SIZE
100 hex
Arthur Heymans34684ca2024-02-05 15:45:21 +0100101 default 0x20000
Arthur Heymans6d3682e2023-07-13 12:34:04 +0200102 help
103 Sets the size of the bootblock stage that should be loaded in DRAM.
104 This variable controls the DRAM allocation size in linker script
105 for bootblock stage.
106
107config ROMSTAGE_ADDR
108 hex
Arthur Heymans34684ca2024-02-05 15:45:21 +0100109 default 0x7050000
Arthur Heymans6d3682e2023-07-13 12:34:04 +0200110 help
111 Sets the address in DRAM where romstage should be loaded.
112
113config ROMSTAGE_SIZE
114 hex
Arthur Heymans34684ca2024-02-05 15:45:21 +0100115 default 0x70000
Arthur Heymans6d3682e2023-07-13 12:34:04 +0200116 help
117 Sets the size of DRAM allocation for romstage in linker script.
118
Arthur Heymans901f0402023-07-13 14:14:55 +0200119config ECAM_MMCONF_BASE_ADDRESS
120 hex
121 default 0xE0000000
122
123config ECAM_MMCONF_BUS_NUMBER
124 int
125 default 256
126
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200127menu "PSP Configuration Options"
128
129config AMDFW_CONFIG_FILE
130 string
Felix Heldd123f8d2023-12-15 10:57:30 +0100131 default "src/soc/amd/genoa_poc/fw.cfg"
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200132
133config PSP_DISABLE_POSTCODES
134 bool "Disable PSP post codes"
135 help
136 Disables the output of port80 post codes from PSP.
137
138config PSP_INIT_ESPI
139 bool "Initialize eSPI in PSP Stage 2 Boot Loader"
140 help
141 Select to initialize the eSPI controller in the PSP Stage 2 Boot
142 Loader.
143
144config PSP_UNLOCK_SECURE_DEBUG
145 bool
146 default y
147
148config HAVE_PSP_WHITELIST_FILE
149 bool "Include a debug whitelist file in PSP build"
150 default n
151 help
152 Support secured unlock prior to reset using a whitelisted
153 serial number. This feature requires a signed whitelist image
154 and bootloader from AMD.
155
156 If unsure, answer 'n'
157
158config PSP_WHITELIST_FILE
159 string "Debug whitelist file path"
160 depends on HAVE_PSP_WHITELIST_FILE
161
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200162config PSP_SOFTFUSE_BITS
163 string "PSP Soft Fuse bits to enable"
164 default ""
165 help
166 Space separated list of Soft Fuse bits to enable.
167 Bit 0: Enable secure debug (Set by PSP_UNLOCK_SECURE_DEBUG)
168 Bit 7: Disable PSP postcodes on Renoir and newer chips only
169 (Set by PSP_DISABLE_PORT80)
170 Bit 15: PSP debug output destination:
171 0=SoC MMIO UART, 1=IO port 0x3F8
172
173 See #57299 (NDA) for additional bit definitions.
174endmenu
175
Felix Held88da16b2023-12-04 18:46:38 +0100176config CONSOLE_UART_BASE_ADDRESS
177 depends on CONSOLE_SERIAL && AMD_SOC_CONSOLE_UART
178 hex
179 default 0xfedc9000 if UART_FOR_CONSOLE = 0
180 default 0xfedca000 if UART_FOR_CONSOLE = 1
181 default 0xfedce000 if UART_FOR_CONSOLE = 2
182
Arthur Heymans2e2f1662023-07-14 22:58:49 +0200183config SMM_TSEG_SIZE
184 hex
185 default 0x800000
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200186
Felix Heldd1065a32023-12-12 19:36:55 +0100187config ACPI_SSDT_PSD_INDEPENDENT
188 bool "Allow core p-state independent transitions"
189 default y
190 help
191 AMD recommends the ACPI _PSD object to be configured to cause
192 cores to transition between p-states independently. A vendor may
193 choose to generate _PSD object to allow cores to transition together.
194
Arthur Heymansb2ea2f22023-07-15 00:28:31 +0200195config ACPI_BERT
196 bool "Build ACPI BERT Table"
197 default y
198 depends on HAVE_ACPI_TABLES
199 help
200 Report Machine Check errors identified in POST to the OS in an
201 ACPI Boot Error Record Table.
202
203config ACPI_BERT_SIZE
204 hex
205 default 0x4000 if ACPI_BERT
206 default 0x0
207 help
208 Specify the amount of DRAM reserved for gathering the data used to
209 generate the ACPI table.
210
Felix Heldd123f8d2023-12-15 10:57:30 +0100211endif # SOC_AMD_GENOA_POC