blob: a841785dbf3baa560fbb2d618f996ebb99aff8b9 [file] [log] [blame]
Martin Roth7687e772023-08-22 16:32:20 -06001## SPDX-License-Identifier: BSD-3-clause
2
Stefan Reinauer55feadd2015-06-10 16:15:36 -07003#
4# Copyright (c) 2013 - 2014, Sage Electronic Engineering, LLC
Marc Jones21e5dd82016-09-20 20:32:47 -06005# Copyright (C) 2016 Advanced Micro Devices, Inc.
Stefan Reinauer55feadd2015-06-10 16:15:36 -07006# All rights reserved.
7#
8# Redistribution and use in source and binary forms, with or without
9# modification, are permitted provided that the following conditions are met:
10# * Redistributions of source code must retain the above copyright
11# notice, this list of conditions and the following disclaimer.
12# * Redistributions in binary form must reproduce the above copyright
13# notice, this list of conditions and the following disclaimer in the
14# documentation and/or other materials provided with the distribution.
15# * Neither the name of Advanced Micro Devices, Inc. nor the names of
16# its contributors may be used to endorse or promote products derived
17# from this software without specific prior written permission.
18#
19# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22# DISCLAIMED. IN NO EVENT SHALL ADVANCED MICRO DEVICES, INC. BE LIABLE FOR ANY
23# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
26# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29#
30
Michał Żygowski07844822021-05-09 17:23:17 +020031if CPU_AMD_PI_00730F01 || SOC_AMD_STONEYRIDGE
Stefan Reinauer55feadd2015-06-10 16:15:36 -070032
Marc Jones0b11bd02015-07-19 15:20:17 -060033config AGESA_BINARY_PI_VENDORCODE_PATH
Marc Jones74234eb2015-07-19 16:20:41 -060034 string "AGESA PI directory path"
Marc Jones0b11bd02015-07-19 15:20:17 -060035 default "src/vendorcode/amd/pi/00730F01" if CPU_AMD_PI_00730F01
Marshall Dawsond7868432019-11-25 11:47:32 -070036 default "src/vendorcode/amd/pi/00670F00" if AMD_APU_MERLINFALCON
37 default "src/vendorcode/amd/pi/00670F00" if AMD_APU_STONEYRIDGE || AMD_APU_PRAIRIEFALCON
Stefan Reinauer55feadd2015-06-10 16:15:36 -070038 help
Marc Jones0b11bd02015-07-19 15:20:17 -060039 Specify where to find the AGESA header files
Marc Jones74234eb2015-07-19 16:20:41 -060040 for AMD platform initialization.
Stefan Reinauer55feadd2015-06-10 16:15:36 -070041
Marc Jones74234eb2015-07-19 16:20:41 -060042config AGESA_BINARY_PI_FILE
43 string "AGESA PI binary file name"
Marc Jones0b11bd02015-07-19 15:20:17 -060044 default "3rdparty/blobs/pi/amd/00730F01/FT3b/AGESA.bin" if CPU_AMD_PI_00730F01
Nico Huberaa5ff5a2020-01-01 15:53:41 +010045 default "3rdparty/amd_blobs/stoneyridge/pi/CZ/\$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if AMD_APU_MERLINFALCON
46 default "3rdparty/amd_blobs/stoneyridge/pi/ST/\$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if AMD_APU_PRAIRIEFALCON
47 default "3rdparty/amd_blobs/stoneyridge/pi/ST/\$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if AMD_APU_STONEYRIDGE
Stefan Reinauer55feadd2015-06-10 16:15:36 -070048 help
Marc Jones74234eb2015-07-19 16:20:41 -060049 Specify the binary file to use for AMD platform initialization.
Stefan Reinauer55feadd2015-06-10 16:15:36 -070050
Aaron Durbin02b43aa2017-12-12 14:56:41 -070051config AGESA_BINARY_PI_AS_STAGE
52 bool "AGESA Binary PI is added as stage to CBFS."
Marshall Dawson68519222019-11-25 11:36:15 -070053 depends on SOC_AMD_STONEYRIDGE
Aaron Durbin02b43aa2017-12-12 14:56:41 -070054 help
55 AGESA will be added as a stage utilizing --xip cbfstool options
56 as needed relocating the image to the proper location in memory-mapped
57 cpu address space. It's required that the file be in ELF format
58 containing the relocations necessary for relocating at runtime.
59
Justin TerAvest92261952017-12-22 15:15:02 -070060config AGESA_SPLIT_MEMORY_FILES
61 bool "Split AGESA Binary PI into pre- and post-memory files."
62 depends on AGESA_BINARY_PI_AS_STAGE
63 default n
64 help
65 Specifies that AGESA is split into two binaries for pre- and
66 post-memory.
67
68config AGESA_PRE_MEMORY_BINARY_PI_FILE
Raul E Rangel028570b2019-12-20 15:00:40 -070069 string "Pre memory Binary PI file name"
Justin TerAvest92261952017-12-22 15:15:02 -070070 depends on AGESA_SPLIT_MEMORY_FILES
Nico Huberaa5ff5a2020-01-01 15:53:41 +010071 default "3rdparty/blobs/pi/amd/00670F00/FT4/AGESA_premem.elf" if SOC_AMD_STONEYRIDGE
Justin TerAvest92261952017-12-22 15:15:02 -070072 help
73 Specify the binary file to use for pre-memory AMD platform
74 initialization.
75
76config AGESA_POST_MEMORY_BINARY_PI_FILE
Raul E Rangel028570b2019-12-20 15:00:40 -070077 string "Post memory Binary PI file name"
Justin TerAvest92261952017-12-22 15:15:02 -070078 depends on AGESA_SPLIT_MEMORY_FILES
Nico Huberaa5ff5a2020-01-01 15:53:41 +010079 default "3rdparty/blobs/pi/amd/00670F00/FT4/AGESA_postmem.elf" if SOC_AMD_STONEYRIDGE
Justin TerAvest92261952017-12-22 15:15:02 -070080 help
81 Specify the binary file to use for post-memory AMD platform
82 initialization.
83
Kyösti Mälkki7104fe22017-05-27 20:53:29 +030084config AGESA_CBFS_NAME
85 string
86 default "AGESA"
87
Justin TerAvest92261952017-12-22 15:15:02 -070088config AGESA_PRE_MEMORY_CBFS_NAME
89 string
90 default "AGESA_PRE_MEM"
91
92config AGESA_POST_MEMORY_CBFS_NAME
93 string
94 default "AGESA_POST_MEM"
95
Marc Jones74234eb2015-07-19 16:20:41 -060096config AGESA_BINARY_PI_LOCATION
Martin Rothc59cc222016-09-30 14:44:54 -060097 hex "AGESA PI binary address in ROM"
Marc Jones74234eb2015-07-19 16:20:41 -060098 default 0xFFE00000
Aaron Durbin02b43aa2017-12-12 14:56:41 -070099 depends on !AGESA_BINARY_PI_AS_STAGE
Stefan Reinauer55feadd2015-06-10 16:15:36 -0700100 help
Marc Jones74234eb2015-07-19 16:20:41 -0600101 Specify the ROM address at which to store the binary Platform
Stefan Reinauer55feadd2015-06-10 16:15:36 -0700102 Initialization code.
103
104endif