Martin Roth | 7687e77 | 2023-08-22 16:32:20 -0600 | [diff] [blame^] | 1 | ## SPDX-License-Identifier: BSD-3-clause |
| 2 | |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 3 | # |
| 4 | # Copyright (c) 2013 - 2014, Sage Electronic Engineering, LLC |
Marc Jones | 21e5dd8 | 2016-09-20 20:32:47 -0600 | [diff] [blame] | 5 | # Copyright (C) 2016 Advanced Micro Devices, Inc. |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 6 | # 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ł Żygowski | 0784482 | 2021-05-09 17:23:17 +0200 | [diff] [blame] | 31 | if CPU_AMD_PI_00730F01 || SOC_AMD_STONEYRIDGE |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 32 | |
Marc Jones | 0b11bd0 | 2015-07-19 15:20:17 -0600 | [diff] [blame] | 33 | config AGESA_BINARY_PI_VENDORCODE_PATH |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 34 | string "AGESA PI directory path" |
Marc Jones | 0b11bd0 | 2015-07-19 15:20:17 -0600 | [diff] [blame] | 35 | default "src/vendorcode/amd/pi/00730F01" if CPU_AMD_PI_00730F01 |
Marshall Dawson | d786843 | 2019-11-25 11:47:32 -0700 | [diff] [blame] | 36 | 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 Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 38 | help |
Marc Jones | 0b11bd0 | 2015-07-19 15:20:17 -0600 | [diff] [blame] | 39 | Specify where to find the AGESA header files |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 40 | for AMD platform initialization. |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 41 | |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 42 | config AGESA_BINARY_PI_FILE |
| 43 | string "AGESA PI binary file name" |
Marc Jones | 0b11bd0 | 2015-07-19 15:20:17 -0600 | [diff] [blame] | 44 | default "3rdparty/blobs/pi/amd/00730F01/FT3b/AGESA.bin" if CPU_AMD_PI_00730F01 |
Nico Huber | aa5ff5a | 2020-01-01 15:53:41 +0100 | [diff] [blame] | 45 | 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 Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 48 | help |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 49 | Specify the binary file to use for AMD platform initialization. |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 50 | |
Aaron Durbin | 02b43aa | 2017-12-12 14:56:41 -0700 | [diff] [blame] | 51 | config AGESA_BINARY_PI_AS_STAGE |
| 52 | bool "AGESA Binary PI is added as stage to CBFS." |
Marshall Dawson | 6851922 | 2019-11-25 11:36:15 -0700 | [diff] [blame] | 53 | depends on SOC_AMD_STONEYRIDGE |
Aaron Durbin | 02b43aa | 2017-12-12 14:56:41 -0700 | [diff] [blame] | 54 | 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 TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 60 | config 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 | |
| 68 | config AGESA_PRE_MEMORY_BINARY_PI_FILE |
Raul E Rangel | 028570b | 2019-12-20 15:00:40 -0700 | [diff] [blame] | 69 | string "Pre memory Binary PI file name" |
Justin TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 70 | depends on AGESA_SPLIT_MEMORY_FILES |
Nico Huber | aa5ff5a | 2020-01-01 15:53:41 +0100 | [diff] [blame] | 71 | default "3rdparty/blobs/pi/amd/00670F00/FT4/AGESA_premem.elf" if SOC_AMD_STONEYRIDGE |
Justin TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 72 | help |
| 73 | Specify the binary file to use for pre-memory AMD platform |
| 74 | initialization. |
| 75 | |
| 76 | config AGESA_POST_MEMORY_BINARY_PI_FILE |
Raul E Rangel | 028570b | 2019-12-20 15:00:40 -0700 | [diff] [blame] | 77 | string "Post memory Binary PI file name" |
Justin TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 78 | depends on AGESA_SPLIT_MEMORY_FILES |
Nico Huber | aa5ff5a | 2020-01-01 15:53:41 +0100 | [diff] [blame] | 79 | default "3rdparty/blobs/pi/amd/00670F00/FT4/AGESA_postmem.elf" if SOC_AMD_STONEYRIDGE |
Justin TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 80 | help |
| 81 | Specify the binary file to use for post-memory AMD platform |
| 82 | initialization. |
| 83 | |
Kyösti Mälkki | 7104fe2 | 2017-05-27 20:53:29 +0300 | [diff] [blame] | 84 | config AGESA_CBFS_NAME |
| 85 | string |
| 86 | default "AGESA" |
| 87 | |
Justin TerAvest | 9226195 | 2017-12-22 15:15:02 -0700 | [diff] [blame] | 88 | config AGESA_PRE_MEMORY_CBFS_NAME |
| 89 | string |
| 90 | default "AGESA_PRE_MEM" |
| 91 | |
| 92 | config AGESA_POST_MEMORY_CBFS_NAME |
| 93 | string |
| 94 | default "AGESA_POST_MEM" |
| 95 | |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 96 | config AGESA_BINARY_PI_LOCATION |
Martin Roth | c59cc22 | 2016-09-30 14:44:54 -0600 | [diff] [blame] | 97 | hex "AGESA PI binary address in ROM" |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 98 | default 0xFFE00000 |
Aaron Durbin | 02b43aa | 2017-12-12 14:56:41 -0700 | [diff] [blame] | 99 | depends on !AGESA_BINARY_PI_AS_STAGE |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 100 | help |
Marc Jones | 74234eb | 2015-07-19 16:20:41 -0600 | [diff] [blame] | 101 | Specify the ROM address at which to store the binary Platform |
Stefan Reinauer | 55feadd | 2015-06-10 16:15:36 -0700 | [diff] [blame] | 102 | Initialization code. |
| 103 | |
| 104 | endif |