blob: af4056a90bfd83fb46993ef6fb991fa618ff8f02 [file] [log] [blame]
Arthur Heymans6d3682e2023-07-13 12:34:04 +02001config SOC_AMD_GENOA
2 bool
3
4if SOC_AMD_GENOA
5
6config SOC_SPECIFIC_OPTIONS
7 def_bool y
8 select ARCH_X86
9 select HAVE_EXP_X86_64_SUPPORT
Arthur Heymans6d3682e2023-07-13 12:34:04 +020010 select RESET_VECTOR_IN_RAM
11 select SOC_AMD_COMMON
12 select SOC_AMD_COMMON_BLOCK_ACPIMMIO
Arthur Heymans4da9d6b42023-07-13 14:19:09 +020013 select SOC_AMD_COMMON_BLOCK_AOAC
Varshit Pandya95d78d92023-10-04 19:30:21 +053014 select SOC_AMD_COMMON_BLOCK_BANKED_GPIOS
Arthur Heymans48167b12023-07-13 14:07:54 +020015 select SOC_AMD_COMMON_BLOCK_CPUFREQ_FAM17H_19H
Arthur Heymansc666a912023-07-13 14:34:10 +020016 select SOC_AMD_COMMON_BLOCK_HAS_ESPI
17 select SOC_AMD_COMMON_BLOCK_LPC
Arthur Heymans6d3682e2023-07-13 12:34:04 +020018 select SOC_AMD_COMMON_BLOCK_NONCAR
19 select SOC_AMD_COMMON_BLOCK_PCI_MMCONF
Varshit Pandyac0f19832023-10-04 19:26:21 +053020 select SOC_AMD_COMMON_BLOCK_SMI
Arthur Heymans48167b12023-07-13 14:07:54 +020021 select SOC_AMD_COMMON_BLOCK_TSC
Varshit Pandya970d7702023-10-06 18:14:02 +053022 select SOC_AMD_COMMON_BLOCK_UART
Arthur Heymansc666a912023-07-13 14:34:10 +020023 select SOC_AMD_COMMON_BLOCK_USE_ESPI
Arthur Heymanse4eba132023-07-13 14:02:42 +020024 select X86_CUSTOM_BOOTMEDIA
Arthur Heymans6d3682e2023-07-13 12:34:04 +020025
26config USE_EXP_X86_64_SUPPORT
27 default y
28
vbpandya87d8b8c2023-09-22 20:49:37 +053029config CHIPSET_DEVICETREE
30 string
31 default "soc/amd/genoa/chipset.cb"
32
Arthur Heymans6d3682e2023-07-13 12:34:04 +020033config EARLY_RESERVED_DRAM_BASE
34 hex
35 default 0x7000000
36 help
37 This variable defines the base address of the DRAM which is reserved
38 for usage by coreboot in early stages (i.e. before ramstage is up).
39 This memory gets reserved in BIOS tables to ensure that the OS does
40 not use it, thus preventing corruption of OS memory in case of S3
41 resume.
42
43config EARLYRAM_BSP_STACK_SIZE
44 hex
45 default 0x1000
46
47config PSP_APOB_DRAM_ADDRESS
48 hex
49 default 0x7001000
50 help
51 Location in DRAM where the PSP will copy the AGESA PSP Output
52 Block.
53
54config PSP_APOB_DRAM_SIZE
55 hex
56 default 0x20000
57
58config PRERAM_CBMEM_CONSOLE_SIZE
59 hex
60 default 0x1600
61 help
62 Increase this value if preram cbmem console is getting truncated
63
64config C_ENV_BOOTBLOCK_SIZE
65 hex
66 default 0x10000
67 help
68 Sets the size of the bootblock stage that should be loaded in DRAM.
69 This variable controls the DRAM allocation size in linker script
70 for bootblock stage.
71
72config ROMSTAGE_ADDR
73 hex
74 default 0x7040000
75 help
76 Sets the address in DRAM where romstage should be loaded.
77
78config ROMSTAGE_SIZE
79 hex
80 default 0x80000
81 help
82 Sets the size of DRAM allocation for romstage in linker script.
83
Arthur Heymans901f0402023-07-13 14:14:55 +020084config ECAM_MMCONF_BASE_ADDRESS
85 hex
86 default 0xE0000000
87
88config ECAM_MMCONF_BUS_NUMBER
89 int
90 default 256
91
Arthur Heymans8f1c7072023-07-13 12:52:49 +020092menu "PSP Configuration Options"
93
94config AMDFW_CONFIG_FILE
95 string
96 default "src/soc/amd/genoa/fw.cfg"
97
98config PSP_DISABLE_POSTCODES
99 bool "Disable PSP post codes"
100 help
101 Disables the output of port80 post codes from PSP.
102
103config PSP_INIT_ESPI
104 bool "Initialize eSPI in PSP Stage 2 Boot Loader"
105 help
106 Select to initialize the eSPI controller in the PSP Stage 2 Boot
107 Loader.
108
109config PSP_UNLOCK_SECURE_DEBUG
110 bool
111 default y
112
113config HAVE_PSP_WHITELIST_FILE
114 bool "Include a debug whitelist file in PSP build"
115 default n
116 help
117 Support secured unlock prior to reset using a whitelisted
118 serial number. This feature requires a signed whitelist image
119 and bootloader from AMD.
120
121 If unsure, answer 'n'
122
123config PSP_WHITELIST_FILE
124 string "Debug whitelist file path"
125 depends on HAVE_PSP_WHITELIST_FILE
126
Felix Held4ab1db82023-09-28 19:54:55 +0200127config PERFORM_SPL_FUSING
128 bool "Send SPL fuse command to PSP"
129 default n
130 help
131 Send the Security Patch Level (SPL) fusing command to the PSP in
132 order to update the minimum SPL version to be written to the SoC's
133 fuse bits. This will prevent using any embedded firmware components
134 with lower SPL version.
135
136 If unsure, answer 'n'
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200137
138config SPL_TABLE_FILE
Felix Held4ab1db82023-09-28 19:54:55 +0200139 string "SPL table file override"
140 help
141 Provide a mainboard-specific Security Patch Level (SPL) table file
142 override. The SPL file is required to support PSP FW anti-rollback
143 and needs to be created by AMD. The default SPL file specified in the
144 SoC's fw.cfg is in the corresponding folder of the amd_blobs submodule
145 and applies to all boards that use the SoC without verstage on PSP.
146 In the verstage on PSP case, a different SPL file is specific as an
147 override via this Kconfig option.
Arthur Heymans8f1c7072023-07-13 12:52:49 +0200148
149config PSP_SOFTFUSE_BITS
150 string "PSP Soft Fuse bits to enable"
151 default ""
152 help
153 Space separated list of Soft Fuse bits to enable.
154 Bit 0: Enable secure debug (Set by PSP_UNLOCK_SECURE_DEBUG)
155 Bit 7: Disable PSP postcodes on Renoir and newer chips only
156 (Set by PSP_DISABLE_PORT80)
157 Bit 15: PSP debug output destination:
158 0=SoC MMIO UART, 1=IO port 0x3F8
159
160 See #57299 (NDA) for additional bit definitions.
161endmenu
162
163
164endif # SOC_AMD_GENOA