Until now, the buildOpts.c files were primarily made out of copy-pasted AGESA options, commented-out definitions and several useless comments; that is, the materialization of technical debt in GCC-parsable form... Until now. It is assumed that the boards in the tree still boot. So, by comparing their settings, we can extract saner defaults to place into AGESA. Many of the settings were common across all boards of the same family, so we promote those values to default settings. In some cases flipping a flag was required, so the macros to alter that option had to be adapted as well. Since those AGESA versions are expected to never receive updates, it should not be a problem to change their files to suit our needs. As a result, all but two buildOpts.c files now have less than 100 lines. AGESA f14 boards need less than 50 lines, and f15tn/f16kb just require about 60 or 70 lines in those files. Hopefully, this will make porting more mainboards using AGESA f14/f15tn/f16kb a substantially easier task. TEST=Use abuild --timeless to check that all AGESA f14/f15tn/f16kb mainboards result in identical coreboot binaries. Change-Id: Ife1ca5177d85441b9a7b24d64d7fcbabde6e0409 Signed-off-by: Angel Pons <th3fanbus@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/41667 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Mike Banon <mikebdp2@gmail.com>
42 lines
1.2 KiB
C
42 lines
1.2 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
|
|
/* Select the CPU family */
|
|
#define INSTALL_FAMILY_14_SUPPORT TRUE
|
|
|
|
/* Select the CPU socket type */
|
|
#define INSTALL_FT1_SOCKET_SUPPORT TRUE
|
|
|
|
/* Agesa optional capabilities selection */
|
|
#define BLDOPT_REMOVE_UDIMMS_SUPPORT FALSE
|
|
#define BLDOPT_REMOVE_RDIMMS_SUPPORT TRUE
|
|
#define BLDOPT_REMOVE_LRDIMMS_SUPPORT FALSE
|
|
#define BLDOPT_REMOVE_ECC_SUPPORT FALSE
|
|
#define BLDOPT_REMOVE_BANK_INTERLEAVE FALSE
|
|
#define BLDOPT_REMOVE_WHEA FALSE
|
|
|
|
#define BLDCFG_VRM_NB_LOW_POWER_THRESHOLD 1
|
|
|
|
#define BLDCFG_AMD_PLATFORM_TYPE AMD_PLATFORM_MOBILE
|
|
#define BLDCFG_CFG_GNB_HD_AUDIO FALSE
|
|
#define BLDCFG_MEMORY_SODIMM_CAPABLE TRUE
|
|
#define BLDCFG_MEMORY_LRDIMM_CAPABLE FALSE
|
|
#define BLDCFG_MEMORY_CHANNEL_INTERLEAVING FALSE
|
|
|
|
/* Agesa configuration values selection */
|
|
#include <AGESA.h>
|
|
|
|
/* Include the files that instantiate the configuration definitions */
|
|
#include "cpuRegisters.h"
|
|
#include "cpuFamRegisters.h"
|
|
#include "cpuFamilyTranslation.h"
|
|
#include "AdvancedApi.h"
|
|
#include "heapManager.h"
|
|
#include "CreateStruct.h"
|
|
#include "cpuFeatures.h"
|
|
#include "Table.h"
|
|
#include "cpuEarlyInit.h"
|
|
#include "cpuLateInit.h"
|
|
#include "GnbInterface.h"
|
|
|
|
/* Instantiate all solution relevant data */
|
|
#include <PlatformInstall.h>
|