AGESA: Move heap_status_name() implementation

Place it within class libagesa to avoid including
AGESA internal header heapManager.h in coreboot
proper build CPPFLAGS.

Change-Id: Iae86d6631d7a6ba6ea2588a53b292b435dfd7861
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31511
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
Kyösti Mälkki 2018-06-11 08:52:22 +03:00 committed by Patrick Georgi
parent 35f9507b08
commit c6918f99d7
12 changed files with 67 additions and 24 deletions

View File

@ -21,8 +21,6 @@
#include <AGESA.h> #include <AGESA.h>
#include <AMD.h> #include <AMD.h>
#include <heapManager.h>
static const char undefined[] = "undefined"; static const char undefined[] = "undefined";
/* Match order of enum AGESA_STRUCT_NAME. */ /* Match order of enum AGESA_STRUCT_NAME. */
@ -34,11 +32,6 @@ static const char *AgesaFunctionNameStr[] = {
"Amd2dDataEye", "AmdS3FinalRestore", "AmdInitRtb" "Amd2dDataEye", "AmdS3FinalRestore", "AmdInitRtb"
}; };
/* heapManager.h */
static const char *HeapStatusStr[] = {
"DoNotExistYet", "LocalCache", "TempMem", "SystemMem", "DoNotExistAnymore","S3Resume"
};
/* This function has to match with enumeration of AGESA_STRUCT_NAME defined /* This function has to match with enumeration of AGESA_STRUCT_NAME defined
* inside AMD.h header file. Unfortunately those are different across * inside AMD.h header file. Unfortunately those are different across
* different vendorcode subtrees. * different vendorcode subtrees.
@ -64,15 +57,6 @@ const char *agesa_struct_name(int state)
return AgesaFunctionNameStr[index]; return AgesaFunctionNameStr[index];
} }
const char *heap_status_name(int status)
{
if ((status < HEAP_DO_NOT_EXIST_YET) || (status > HEAP_S3_RESUME))
return undefined;
int index = status - HEAP_DO_NOT_EXIST_YET;
return HeapStatusStr[index];
}
/* /*
* Possible AGESA_STATUS values: * Possible AGESA_STATUS values:
* *

View File

@ -25,6 +25,8 @@
#include <northbridge/amd/agesa/agesa_helper.h> #include <northbridge/amd/agesa/agesa_helper.h>
#include <northbridge/amd/agesa/BiosCallOuts.h> #include <northbridge/amd/agesa/BiosCallOuts.h>
#include <amdlib.h> #include <amdlib.h>
#include <debug_util.h>
#include <AMD.h> #include <AMD.h>
#if CONFIG(CPU_AMD_AGESA_OPENSOURCE) #if CONFIG(CPU_AMD_AGESA_OPENSOURCE)

View File

@ -24,7 +24,6 @@
/* eventlog */ /* eventlog */
const char *agesa_struct_name(int state); const char *agesa_struct_name(int state);
const char *heap_status_name(int status);
void agesawrapper_trace(AGESA_STATUS ret, AMD_CONFIG_PARAMS *StdHeader, const char *func); void agesawrapper_trace(AGESA_STATUS ret, AMD_CONFIG_PARAMS *StdHeader, const char *func);
AGESA_STATUS agesawrapper_amdreadeventlog(UINT8 HeapStatus); AGESA_STATUS agesawrapper_amdreadeventlog(UINT8 HeapStatus);

View File

@ -30,6 +30,7 @@
romstage-y += agesa-entry.c romstage-y += agesa-entry.c
ramstage-y += agesa-entry.c ramstage-y += agesa-entry.c
libagesa-y += debug_util.c
libagesa-y += amdlib.c libagesa-y += amdlib.c
# Do not optimise performance-critical low-level IO for size with -Os, # Do not optimise performance-critical low-level IO for size with -Os,

View File

@ -0,0 +1,24 @@
#include <AGESA.h>
#include <AMD.h>
#include <heapManager.h>
#include "debug_util.h"
static const char undefined[] = "undefined";
static const char *HeapStatusStr[] = {
"DoNotExistYet", "LocalCache", "TempMem", "SystemMem", "DoNotExistAnymore","S3Resume"
};
/* This function has to match with enumeration of XXXX defined
* inside heapManager.h header file.
*/
const char *heap_status_name(UINT8 HeapStatus)
{
if ((HeapStatus < HEAP_DO_NOT_EXIST_YET) || (HeapStatus > HEAP_S3_RESUME))
return undefined;
int index = HeapStatus - HEAP_DO_NOT_EXIST_YET;
return HeapStatusStr[index];
}

View File

@ -0,0 +1,8 @@
#ifndef __AGESA_DEBUG_UTIL_H__
#define __AGESA_DEBUG_UTIL_H__
#include "AMD.h"
const char *heap_status_name(UINT8 HeapStatus);
#endif

View File

@ -46,7 +46,6 @@ CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno
# These are invalid, coreboot proper should not require # These are invalid, coreboot proper should not require
# use of AGESA internal header files. # use of AGESA internal header files.
CPPFLAGS_x86_ANY = CPPFLAGS_x86_ANY =
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h
CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)
CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)

View File

@ -46,8 +46,6 @@ CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno
# These are invalid, coreboot proper should not require # These are invalid, coreboot proper should not require
# use of AGESA internal header files. # use of AGESA internal header files.
CPPFLAGS_x86_ANY = CPPFLAGS_x86_ANY =
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family
CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)
CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY) CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)

View File

@ -46,8 +46,6 @@ CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno
# These are invalid, coreboot proper should not require # These are invalid, coreboot proper should not require
# use of AGESA internal header files. # use of AGESA internal header files.
CPPFLAGS_x86_ANY = CPPFLAGS_x86_ANY =
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h

View File

@ -46,8 +46,6 @@ CFLAGS_x86_64 += -march=k8-sse3 -mtune=k8-sse3 -fno-zero-initialized-in-bss -fno
# These are invalid, coreboot proper should not require # These are invalid, coreboot proper should not require
# use of AGESA internal header files. # use of AGESA internal header files.
CPPFLAGS_x86_ANY = CPPFLAGS_x86_ANY =
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU/Family
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch # FchPlatform.h
CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/Fch/Common # FchCommonCfg.h

View File

@ -0,0 +1,24 @@
#include <AGESA.h>
#include <AMD.h>
#include <heapManager.h>
#include "debug_util.h"
static const char undefined[] = "undefined";
static const char *HeapStatusStr[] = {
"DoNotExistYet", "LocalCache", "TempMem", "SystemMem", "DoNotExistAnymore","S3Resume"
};
/* This function has to match with enumeration of XXXX defined
* inside heapManager.h header file.
*/
const char *heap_status_name(UINT8 HeapStatus)
{
if ((HeapStatus < HEAP_DO_NOT_EXIST_YET) || (HeapStatus > HEAP_S3_RESUME))
return undefined;
int index = HeapStatus - HEAP_DO_NOT_EXIST_YET;
return HeapStatusStr[index];
}

View File

@ -0,0 +1,8 @@
#ifndef __AGESA_DEBUG_UTIL_H__
#define __AGESA_DEBUG_UTIL_H__
#include "AMD.h"
const char *heap_status_name(UINT8 HeapStatus);
#endif