Kyösti Mälkki has uploaded this change for review.

View Change

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>
---
M src/drivers/amd/agesa/eventlog.c
M src/drivers/amd/agesa/state_machine.c
M src/northbridge/amd/agesa/state_machine.h
M src/vendorcode/amd/agesa/common/Makefile.inc
A src/vendorcode/amd/agesa/common/debug_util.c
A src/vendorcode/amd/agesa/common/debug_util.h
M src/vendorcode/amd/agesa/f12/Makefile.inc
M src/vendorcode/amd/agesa/f14/Makefile.inc
M src/vendorcode/amd/agesa/f15tn/Makefile.inc
M src/vendorcode/amd/agesa/f16kb/Makefile.inc
10 files changed, 34 insertions(+), 24 deletions(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/11/31511/1
diff --git a/src/drivers/amd/agesa/eventlog.c b/src/drivers/amd/agesa/eventlog.c
index 3231d4f..b80c220 100644
--- a/src/drivers/amd/agesa/eventlog.c
+++ b/src/drivers/amd/agesa/eventlog.c
@@ -21,8 +21,6 @@
#include <AGESA.h>
#include <AMD.h>

-#include <heapManager.h>
-
static const char undefined[] = "undefined";

/* Match order of enum AGESA_STRUCT_NAME. */
@@ -34,11 +32,6 @@
"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
* inside AMD.h header file. Unfortunately those are different across
* different vendorcode subtrees.
@@ -64,15 +57,6 @@
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:
*
diff --git a/src/drivers/amd/agesa/state_machine.c b/src/drivers/amd/agesa/state_machine.c
index 15ea211..672bca1 100644
--- a/src/drivers/amd/agesa/state_machine.c
+++ b/src/drivers/amd/agesa/state_machine.c
@@ -27,6 +27,7 @@
#include <northbridge/amd/agesa/BiosCallOuts.h>
#include <amdlib.h>

+#include <debug_util.h>
#include <AMD.h>

#if IS_ENABLED(CONFIG_CPU_AMD_AGESA_OPENSOURCE)
diff --git a/src/northbridge/amd/agesa/state_machine.h b/src/northbridge/amd/agesa/state_machine.h
index 43b205a..c7d654d 100644
--- a/src/northbridge/amd/agesa/state_machine.h
+++ b/src/northbridge/amd/agesa/state_machine.h
@@ -24,7 +24,6 @@

/* eventlog */
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);
AGESA_STATUS agesawrapper_amdreadeventlog(UINT8 HeapStatus);

diff --git a/src/vendorcode/amd/agesa/common/Makefile.inc b/src/vendorcode/amd/agesa/common/Makefile.inc
index 78dd4fc..2479694 100644
--- a/src/vendorcode/amd/agesa/common/Makefile.inc
+++ b/src/vendorcode/amd/agesa/common/Makefile.inc
@@ -30,6 +30,7 @@
romstage-y += agesa-entry.c
ramstage-y += agesa-entry.c

+libagesa-y += debug_util.c
libagesa-y += amdlib.c

# Do not optimise performance-critical low-level IO for size with -Os,
diff --git a/src/vendorcode/amd/agesa/common/debug_util.c b/src/vendorcode/amd/agesa/common/debug_util.c
new file mode 100644
index 0000000..29d0841
--- /dev/null
+++ b/src/vendorcode/amd/agesa/common/debug_util.c
@@ -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];
+}
diff --git a/src/vendorcode/amd/agesa/common/debug_util.h b/src/vendorcode/amd/agesa/common/debug_util.h
new file mode 100644
index 0000000..a8d9a33
--- /dev/null
+++ b/src/vendorcode/amd/agesa/common/debug_util.h
@@ -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
diff --git a/src/vendorcode/amd/agesa/f12/Makefile.inc b/src/vendorcode/amd/agesa/f12/Makefile.inc
index f925ccb..dbea9c3 100644
--- a/src/vendorcode/amd/agesa/f12/Makefile.inc
+++ b/src/vendorcode/amd/agesa/f12/Makefile.inc
@@ -46,7 +46,6 @@
# These are invalid, coreboot proper should not require
# use of AGESA internal header files.
CPPFLAGS_x86_ANY =
-CPPFLAGS_x86_ANY += -I$(AGESA_ROOT)/Proc/CPU # heapManager.h

CPPFLAGS_x86_32 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)
CPPFLAGS_x86_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)
diff --git a/src/vendorcode/amd/agesa/f14/Makefile.inc b/src/vendorcode/amd/agesa/f14/Makefile.inc
index ad2d2dc..bf1051c 100644
--- a/src/vendorcode/amd/agesa/f14/Makefile.inc
+++ b/src/vendorcode/amd/agesa/f14/Makefile.inc
@@ -46,8 +46,6 @@
# These are invalid, coreboot proper should not require
# use of AGESA internal header files.
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_64 += $(AGESA_INC) $(CPPFLAGS_x86_ANY)
diff --git a/src/vendorcode/amd/agesa/f15tn/Makefile.inc b/src/vendorcode/amd/agesa/f15tn/Makefile.inc
index 57350d9..1c5dc18 100644
--- a/src/vendorcode/amd/agesa/f15tn/Makefile.inc
+++ b/src/vendorcode/amd/agesa/f15tn/Makefile.inc
@@ -46,8 +46,6 @@
# These are invalid, coreboot proper should not require
# use of AGESA internal header files.
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/Common # FchCommonCfg.h
diff --git a/src/vendorcode/amd/agesa/f16kb/Makefile.inc b/src/vendorcode/amd/agesa/f16kb/Makefile.inc
index 3115c4d..c423cf2 100644
--- a/src/vendorcode/amd/agesa/f16kb/Makefile.inc
+++ b/src/vendorcode/amd/agesa/f16kb/Makefile.inc
@@ -46,8 +46,6 @@
# These are invalid, coreboot proper should not require
# use of AGESA internal header files.
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/Common # FchCommonCfg.h

To view, visit change 31511. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: Iae86d6631d7a6ba6ea2588a53b292b435dfd7861
Gerrit-Change-Number: 31511
Gerrit-PatchSet: 1
Gerrit-Owner: Kyösti Mälkki <kyosti.malkki@gmail.com>
Gerrit-Reviewer: Kyösti Mälkki <kyosti.malkki@gmail.com>
Gerrit-Reviewer: Martin Roth <martinroth@google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi@google.com>
Gerrit-MessageType: newchange