[coreboot-gerrit] New patch to review for coreboot: 6c6d031 AGESA: Add common callouts

Kyösti Mälkki (kyosti.malkki@gmail.com) gerrit at coreboot.org
Wed May 7 11:48:35 CEST 2014


Kyösti Mälkki (kyosti.malkki at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5678

-gerrit

commit 6c6d031a3148c41a32cd06995a30ae98a4749891
Author: Kyösti Mälkki <kyosti.malkki at gmail.com>
Date:   Sun May 4 17:07:45 2014 +0300

    AGESA: Add common callouts
    
    Most of the callouts are not specific to board or even family.
    Start new file with default callouts doing nothing and returning
    either AGESA_SUCCESS or AGESA_UNSUPPORTED.
    
    Also add callout for returning empty IdsIdData. This feature is
    not used and could be easily overriden at board-level at later time.
    
    Change-Id: I65dbcdd80dddc89d47669ebe62c22caa63792f5c
    Signed-off-by: Kyösti Mälkki <kyosti.malkki at gmail.com>
---
 src/mainboard/amd/dinar/BiosCallOuts.c             | 90 ++--------------------
 src/mainboard/amd/dinar/BiosCallOuts.h             |  1 +
 src/mainboard/amd/inagua/BiosCallOuts.c            | 24 +-----
 src/mainboard/amd/inagua/BiosCallOuts.h            |  1 +
 src/mainboard/amd/olivehill/BiosCallOuts.h         |  1 +
 src/mainboard/amd/parmer/BiosCallOuts.h            |  1 +
 src/mainboard/amd/persimmon/BiosCallOuts.c         | 24 +-----
 src/mainboard/amd/persimmon/BiosCallOuts.h         |  1 +
 src/mainboard/amd/south_station/BiosCallOuts.c     | 24 +-----
 src/mainboard/amd/south_station/BiosCallOuts.h     |  1 +
 src/mainboard/amd/thatcher/BiosCallOuts.h          |  1 +
 src/mainboard/amd/torpedo/BiosCallOuts.c           | 78 ++-----------------
 src/mainboard/amd/torpedo/BiosCallOuts.h           |  1 +
 src/mainboard/amd/union_station/BiosCallOuts.c     | 24 +-----
 src/mainboard/amd/union_station/BiosCallOuts.h     |  1 +
 src/mainboard/asrock/e350m1/BiosCallOuts.c         | 17 +---
 src/mainboard/asrock/e350m1/BiosCallOuts.h         |  1 +
 src/mainboard/asrock/imb-a180/BiosCallOuts.h       |  1 +
 src/mainboard/asus/f2a85-m/BiosCallOuts.h          |  1 +
 src/mainboard/gizmosphere/gizmo/BiosCallOuts.c     | 32 ++------
 src/mainboard/gizmosphere/gizmo/BiosCallOuts.h     |  1 +
 src/mainboard/hp/pavilion_m6_1035dx/BiosCallOuts.h |  1 +
 src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.c   | 26 +------
 src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.h   |  1 +
 .../lippert/frontrunner-af/BiosCallOuts.c          | 24 +-----
 .../lippert/frontrunner-af/BiosCallOuts.h          |  1 +
 src/mainboard/lippert/toucan-af/BiosCallOuts.c     | 24 +-----
 src/mainboard/lippert/toucan-af/BiosCallOuts.h     |  1 +
 src/mainboard/supermicro/h8qgi/BiosCallOuts.c      | 83 ++------------------
 src/mainboard/supermicro/h8qgi/BiosCallOuts.h      |  1 +
 src/mainboard/supermicro/h8scm/BiosCallOuts.c      | 81 ++-----------------
 src/mainboard/supermicro/h8scm/BiosCallOuts.h      |  1 +
 src/mainboard/tyan/s8226/BiosCallOuts.c            | 83 ++------------------
 src/mainboard/tyan/s8226/BiosCallOuts.h            |  1 +
 src/northbridge/amd/agesa/Makefile.inc             |  3 +
 src/northbridge/amd/agesa/def_callouts.c           | 40 ++++++++++
 src/northbridge/amd/agesa/def_callouts.h           | 32 ++++++++
 .../amd/agesa/family12/fam12_callouts.c            |  5 --
 .../amd/agesa/family12/fam12_callouts.h            | 10 ---
 .../amd/agesa/family14/fam14_callouts.c            |  4 -
 .../amd/agesa/family14/fam14_callouts.h            | 10 ---
 .../amd/agesa/family15/fam15_callouts.c            |  5 --
 .../amd/agesa/family15/fam15_callouts.h            | 13 ----
 43 files changed, 158 insertions(+), 618 deletions(-)

diff --git a/src/mainboard/amd/dinar/BiosCallOuts.c b/src/mainboard/amd/dinar/BiosCallOuts.c
index c7b9409..4f7f7b7 100644
--- a/src/mainboard/amd/dinar/BiosCallOuts.c
+++ b/src/mainboard/amd/dinar/BiosCallOuts.c
@@ -93,14 +93,14 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer},
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
-	{AGESA_GET_IDS_INIT_DATA,		BiosGetIdsInitData },
+	{AGESA_GNB_PCIE_SLOT_RESET,		agesa_NoopSuccess },
+	{AGESA_GET_IDS_INIT_DATA,		agesa_EmptyIdsInitData },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -128,60 +128,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 
-CONST IDS_NV_ITEM IdsData[] =
-{
-	/*{
-	  AGESA_IDS_NV_MAIN_PLL_CON,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID_EN,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID,
-	  0x8
-	  },
-
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_PSTATE,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P0_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P1_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_FORCE_NB_PSTATE,
-	  },
-	  */
-	{
-		0xFFFF,
-			0xFFFF
-	}
-};
-
-#define   NUM_IDS_ENTRIES    (sizeof (IdsData) / sizeof (IDS_NV_ITEM))
-
-
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	UINTN   i;
-	IDS_NV_ITEM *IdsPtr;
-
-	IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
-
-	if (Data == IDS_CALLOUT_INIT) {
-		for (i = 0; i < NUM_IDS_ENTRIES; i++) {
-			IdsPtr[i].IdsNvValue = IdsData[i].IdsNvValue;
-			IdsPtr[i].IdsNvId = IdsData[i].IdsNvId;
-		}
-	}
-	return AGESA_SUCCESS;
-}
-
-
 AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	AGESA_STATUS Status;
@@ -202,11 +148,6 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	AGESA_STATUS      Status;
@@ -233,22 +174,3 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	Status = AGESA_SUCCESS;
 	return Status;
 }
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/* PCIE slot reset control */
-AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	AGESA_STATUS Status;
-
-	Status = AGESA_SUCCESS;
-	return  Status;
-}
diff --git a/src/mainboard/amd/dinar/BiosCallOuts.h b/src/mainboard/amd/dinar/BiosCallOuts.h
index 179634d..cc87813 100644
--- a/src/mainboard/amd/dinar/BiosCallOuts.h
+++ b/src/mainboard/amd/dinar/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15/fam15_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/inagua/BiosCallOuts.c b/src/mainboard/amd/inagua/BiosCallOuts.c
index cd80e5d..ca74133 100644
--- a/src/mainboard/amd/inagua/BiosCallOuts.c
+++ b/src/mainboard/amd/inagua/BiosCallOuts.c
@@ -31,13 +31,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -59,11 +59,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	AGESA_STATUS      Status;
@@ -146,17 +141,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return Status;
 }
 
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/amd/inagua/BiosCallOuts.h b/src/mainboard/amd/inagua/BiosCallOuts.h
index f3483e7..6dbd4c9 100644
--- a/src/mainboard/amd/inagua/BiosCallOuts.h
+++ b/src/mainboard/amd/inagua/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/olivehill/BiosCallOuts.h b/src/mainboard/amd/olivehill/BiosCallOuts.h
index 4c7e100..7490b66 100644
--- a/src/mainboard/amd/olivehill/BiosCallOuts.h
+++ b/src/mainboard/amd/olivehill/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family16kb/fam16kb_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/parmer/BiosCallOuts.h b/src/mainboard/amd/parmer/BiosCallOuts.h
index 9132fac..7ccb07a 100644
--- a/src/mainboard/amd/parmer/BiosCallOuts.h
+++ b/src/mainboard/amd/parmer/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15tn/fam15tn_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/persimmon/BiosCallOuts.c b/src/mainboard/amd/persimmon/BiosCallOuts.c
index a771a6c..b96f3d9 100644
--- a/src/mainboard/amd/persimmon/BiosCallOuts.c
+++ b/src/mainboard/amd/persimmon/BiosCallOuts.c
@@ -31,13 +31,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -63,11 +63,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	// Unlike e.g. AMD Inagua, Persimmon is unable to vary the RAM voltage.
@@ -76,17 +71,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return AGESA_SUCCESS;
 }
 
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/amd/persimmon/BiosCallOuts.h b/src/mainboard/amd/persimmon/BiosCallOuts.h
index 92e8ce5..27ac074 100644
--- a/src/mainboard/amd/persimmon/BiosCallOuts.h
+++ b/src/mainboard/amd/persimmon/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/south_station/BiosCallOuts.c b/src/mainboard/amd/south_station/BiosCallOuts.c
index 00a0f58..b3c851d 100644
--- a/src/mainboard/amd/south_station/BiosCallOuts.c
+++ b/src/mainboard/amd/south_station/BiosCallOuts.c
@@ -31,13 +31,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -61,11 +61,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
   AGESA_STATUS      Status;
@@ -148,17 +143,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
   return Status;
 }
 
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/amd/south_station/BiosCallOuts.h b/src/mainboard/amd/south_station/BiosCallOuts.h
index f3483e7..6dbd4c9 100644
--- a/src/mainboard/amd/south_station/BiosCallOuts.h
+++ b/src/mainboard/amd/south_station/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/thatcher/BiosCallOuts.h b/src/mainboard/amd/thatcher/BiosCallOuts.h
index 9132fac..7ccb07a 100644
--- a/src/mainboard/amd/thatcher/BiosCallOuts.h
+++ b/src/mainboard/amd/thatcher/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15tn/fam15tn_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/torpedo/BiosCallOuts.c b/src/mainboard/amd/torpedo/BiosCallOuts.c
index a275dc8..36fd1d6 100644
--- a/src/mainboard/amd/torpedo/BiosCallOuts.c
+++ b/src/mainboard/amd/torpedo/BiosCallOuts.c
@@ -44,14 +44,14 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
-	{AGESA_GET_IDS_INIT_DATA,		BiosGetIdsInitData },
+	{AGESA_GET_IDS_INIT_DATA,		agesa_EmptyIdsInitData },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -79,64 +79,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 
-CONST IDS_NV_ITEM IdsData[] =
-{
-  /*{
-    AGESA_IDS_NV_MAIN_PLL_CON,
-    0x1
-  },
-  {
-    AGESA_IDS_NV_MAIN_PLL_FID_EN,
-    0x1
-  },
-  {
-    AGESA_IDS_NV_MAIN_PLL_FID,
-    0x8
-  },
-
-  {
-    AGESA_IDS_NV_CUSTOM_NB_PSTATE,
-  },
-  {
-    AGESA_IDS_NV_CUSTOM_NB_P0_DIV_CTRL,
-  },
-  {
-    AGESA_IDS_NV_CUSTOM_NB_P1_DIV_CTRL,
-  },
-  {
-    AGESA_IDS_NV_FORCE_NB_PSTATE,
-  },
-*/
-  {
-    0xFFFF,
-    0xFFFF
-  }
-};
-
-#define   NUM_IDS_ENTRIES    (sizeof (IdsData) / sizeof (IDS_NV_ITEM))
-
-
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  UINTN   i;
-  IDS_NV_ITEM *IdsPtr;
-
-  IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
-
-  if (Data == IDS_CALLOUT_INIT) {
-    for (i = 0; i < NUM_IDS_ENTRIES; i++) {
-      IdsPtr[i].IdsNvValue = IdsData[i].IdsNvValue;
-      IdsPtr[i].IdsNvId = IdsData[i].IdsNvId;
-    }
-  }
-  return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
 /*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
@@ -188,16 +130,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
   return Status;
 }
 
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/amd/torpedo/BiosCallOuts.h b/src/mainboard/amd/torpedo/BiosCallOuts.h
index 16b70b4..c1e1ed3 100644
--- a/src/mainboard/amd/torpedo/BiosCallOuts.h
+++ b/src/mainboard/amd/torpedo/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family12/fam12_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/amd/union_station/BiosCallOuts.c b/src/mainboard/amd/union_station/BiosCallOuts.c
index 00a0f58..b3c851d 100644
--- a/src/mainboard/amd/union_station/BiosCallOuts.c
+++ b/src/mainboard/amd/union_station/BiosCallOuts.c
@@ -31,13 +31,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -61,11 +61,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
   AGESA_STATUS      Status;
@@ -148,17 +143,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
   return Status;
 }
 
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/amd/union_station/BiosCallOuts.h b/src/mainboard/amd/union_station/BiosCallOuts.h
index f3483e7..6dbd4c9 100644
--- a/src/mainboard/amd/union_station/BiosCallOuts.h
+++ b/src/mainboard/amd/union_station/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/asrock/e350m1/BiosCallOuts.c b/src/mainboard/asrock/e350m1/BiosCallOuts.c
index e58aecd..8b78f8e 100644
--- a/src/mainboard/asrock/e350m1/BiosCallOuts.c
+++ b/src/mainboard/asrock/e350m1/BiosCallOuts.c
@@ -31,11 +31,11 @@ CONST BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 };
 
@@ -64,11 +64,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
-/*  Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
   AGESA_STATUS      Status;
@@ -150,11 +145,7 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
   MemData->ParameterListPtr->EnableMemClr = FALSE;
   return Status;
 }
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-  return AGESA_SUCCESS;
-}
+
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/asrock/e350m1/BiosCallOuts.h b/src/mainboard/asrock/e350m1/BiosCallOuts.h
index 92e8ce5..27ac074 100644
--- a/src/mainboard/asrock/e350m1/BiosCallOuts.h
+++ b/src/mainboard/asrock/e350m1/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/asrock/imb-a180/BiosCallOuts.h b/src/mainboard/asrock/imb-a180/BiosCallOuts.h
index 4c7e100..7490b66 100644
--- a/src/mainboard/asrock/imb-a180/BiosCallOuts.h
+++ b/src/mainboard/asrock/imb-a180/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family16kb/fam16kb_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/asus/f2a85-m/BiosCallOuts.h b/src/mainboard/asus/f2a85-m/BiosCallOuts.h
index 9132fac..7ccb07a 100644
--- a/src/mainboard/asus/f2a85-m/BiosCallOuts.h
+++ b/src/mainboard/asus/f2a85-m/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15tn/fam15tn_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/gizmosphere/gizmo/BiosCallOuts.c b/src/mainboard/gizmosphere/gizmo/BiosCallOuts.c
index 8c0855e..e8e8452 100755
--- a/src/mainboard/gizmosphere/gizmo/BiosCallOuts.c
+++ b/src/mainboard/gizmosphere/gizmo/BiosCallOuts.c
@@ -38,13 +38,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd_from_cbfs },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset},
+	{AGESA_GNB_PCIE_SLOT_RESET,		agesa_NoopSuccess },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining},
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -120,11 +120,6 @@ AGESA_STATUS BiosReadSpd_from_cbfs(UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	// Unlike AMD/Inagua, this board is unable to vary the RAM voltage.
@@ -132,20 +127,3 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	((MEM_DATA_STRUCT*)ConfigPtr)->ParameterListPtr->DDR3Voltage = VOLT1_5;
 	return AGESA_SUCCESS;
 }
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/* PCIE slot reset control */
-AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
diff --git a/src/mainboard/gizmosphere/gizmo/BiosCallOuts.h b/src/mainboard/gizmosphere/gizmo/BiosCallOuts.h
index 101a350..62faa05 100755
--- a/src/mainboard/gizmosphere/gizmo/BiosCallOuts.h
+++ b/src/mainboard/gizmosphere/gizmo/BiosCallOuts.h
@@ -21,6 +21,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/hp/pavilion_m6_1035dx/BiosCallOuts.h b/src/mainboard/hp/pavilion_m6_1035dx/BiosCallOuts.h
index 9132fac..7ccb07a 100644
--- a/src/mainboard/hp/pavilion_m6_1035dx/BiosCallOuts.h
+++ b/src/mainboard/hp/pavilion_m6_1035dx/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15tn/fam15tn_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.c b/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.c
index e0a35fd..eeb1875 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.c
+++ b/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.c
@@ -33,13 +33,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -65,12 +65,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /* Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/* Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	/* Unlike e.g. AMD Inagua, Persimmon is unable to vary the RAM voltage.
@@ -80,18 +74,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return AGESA_SUCCESS;
 }
 
-/* Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/* Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.h b/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.h
index 92e8ce5..27ac074 100644
--- a/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.h
+++ b/src/mainboard/jetway/nf81-t56n-lf/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/lippert/frontrunner-af/BiosCallOuts.c b/src/mainboard/lippert/frontrunner-af/BiosCallOuts.c
index 052fc10..eb58837 100644
--- a/src/mainboard/lippert/frontrunner-af/BiosCallOuts.c
+++ b/src/mainboard/lippert/frontrunner-af/BiosCallOuts.c
@@ -30,13 +30,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -62,11 +62,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	MEM_DATA_STRUCT *MemData = ConfigPtr;
@@ -91,17 +86,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return AGESA_SUCCESS;
 }
 
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/lippert/frontrunner-af/BiosCallOuts.h b/src/mainboard/lippert/frontrunner-af/BiosCallOuts.h
index 97d8ead..0e5c3b6 100644
--- a/src/mainboard/lippert/frontrunner-af/BiosCallOuts.h
+++ b/src/mainboard/lippert/frontrunner-af/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 #include "SB800.h"
 
diff --git a/src/mainboard/lippert/toucan-af/BiosCallOuts.c b/src/mainboard/lippert/toucan-af/BiosCallOuts.c
index 829b642..0f292c1 100644
--- a/src/mainboard/lippert/toucan-af/BiosCallOuts.c
+++ b/src/mainboard/lippert/toucan-af/BiosCallOuts.c
@@ -30,13 +30,13 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
 	{AGESA_GNB_PCIE_SLOT_RESET,		BiosGnbPcieSlotReset },
 	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit},
-	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	BiosHookBeforeDramInitRecovery },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_HOOKBEFORE_DRAM_INIT_RECOVERY,	agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -62,11 +62,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 /*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-/*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	MEM_DATA_STRUCT *MemData = ConfigPtr;
@@ -91,17 +86,6 @@ AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return AGESA_SUCCESS;
 }
 
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
diff --git a/src/mainboard/lippert/toucan-af/BiosCallOuts.h b/src/mainboard/lippert/toucan-af/BiosCallOuts.h
index 15b5eee..7065e57 100644
--- a/src/mainboard/lippert/toucan-af/BiosCallOuts.h
+++ b/src/mainboard/lippert/toucan-af/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family14/fam14_callouts.h>
 #include "SB800.h"
 
diff --git a/src/mainboard/supermicro/h8qgi/BiosCallOuts.c b/src/mainboard/supermicro/h8qgi/BiosCallOuts.c
index 85285bf..62baf24 100644
--- a/src/mainboard/supermicro/h8qgi/BiosCallOuts.c
+++ b/src/mainboard/supermicro/h8qgi/BiosCallOuts.c
@@ -78,12 +78,12 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_GET_IDS_INIT_DATA,		BiosGetIdsInitData },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_GET_IDS_INIT_DATA,		agesa_EmptyIdsInitData },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DRAM_INIT,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -107,60 +107,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return CalloutStatus;
 }
 
-
-CONST IDS_NV_ITEM IdsData[] =
-{
-	/*{
-	  AGESA_IDS_NV_MAIN_PLL_CON,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID_EN,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID,
-	  0x8
-	  },
-
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_PSTATE,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P0_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P1_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_FORCE_NB_PSTATE,
-	  },
-	 */
-	{
-		0xFFFF,
-		0xFFFF
-	}
-};
-
-#define   NUM_IDS_ENTRIES    (sizeof (IdsData) / sizeof (IDS_NV_ITEM))
-
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	UINTN   i;
-	IDS_NV_ITEM *IdsPtr;
-
-	IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
-
-	if (Data == IDS_CALLOUT_INIT) {
-		for (i = 0; i < NUM_IDS_ENTRIES; i++) {
-			IdsPtr[i].IdsNvValue = IdsData[i].IdsNvValue;
-			IdsPtr[i].IdsNvId = IdsData[i].IdsNvId;
-		}
-	}
-	return AGESA_SUCCESS;
-}
-
-
 AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	AGESA_STATUS Status;
@@ -181,22 +127,3 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 
 	return Status;
 }
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
diff --git a/src/mainboard/supermicro/h8qgi/BiosCallOuts.h b/src/mainboard/supermicro/h8qgi/BiosCallOuts.h
index 0b4fb57..f733c3f 100644
--- a/src/mainboard/supermicro/h8qgi/BiosCallOuts.h
+++ b/src/mainboard/supermicro/h8qgi/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15/fam15_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/supermicro/h8scm/BiosCallOuts.c b/src/mainboard/supermicro/h8scm/BiosCallOuts.c
index ef799f3..09ea9b1 100644
--- a/src/mainboard/supermicro/h8scm/BiosCallOuts.c
+++ b/src/mainboard/supermicro/h8scm/BiosCallOuts.c
@@ -32,12 +32,12 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_GET_IDS_INIT_DATA,		BiosGetIdsInitData },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_GET_IDS_INIT_DATA,		agesa_EmptyIdsInitData },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DRAM_INIT,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -62,58 +62,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 }
 
 
-CONST IDS_NV_ITEM IdsData[] =
-{
-	/*{
-	  AGESA_IDS_NV_MAIN_PLL_CON,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID_EN,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID,
-	  0x8
-	  },
-
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_PSTATE,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P0_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P1_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_FORCE_NB_PSTATE,
-	  },
-	 */
-	{
-		0xFFFF,
-		0xFFFF
-	}
-};
-
-#define   NUM_IDS_ENTRIES    (sizeof (IdsData) / sizeof (IDS_NV_ITEM))
-
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	UINTN   i;
-	IDS_NV_ITEM *IdsPtr;
-
-	IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
-
-	if (Data == IDS_CALLOUT_INIT) {
-		for (i = 0; i < NUM_IDS_ENTRIES; i++) {
-			IdsPtr[i].IdsNvValue = IdsData[i].IdsNvValue;
-			IdsPtr[i].IdsNvId = IdsData[i].IdsNvId;
-		}
-	}
-	return AGESA_SUCCESS;
-}
-
 
 AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
@@ -126,22 +74,3 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 
 	return Status;
 }
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
diff --git a/src/mainboard/supermicro/h8scm/BiosCallOuts.h b/src/mainboard/supermicro/h8scm/BiosCallOuts.h
index bbd9ba3..e3935d2 100644
--- a/src/mainboard/supermicro/h8scm/BiosCallOuts.h
+++ b/src/mainboard/supermicro/h8scm/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15/fam15_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/mainboard/tyan/s8226/BiosCallOuts.c b/src/mainboard/tyan/s8226/BiosCallOuts.c
index 58a13f2..3a6e109 100644
--- a/src/mainboard/tyan/s8226/BiosCallOuts.c
+++ b/src/mainboard/tyan/s8226/BiosCallOuts.c
@@ -86,12 +86,12 @@ STATIC BIOS_CALLOUT_STRUCT BiosCallouts[] =
 	{AGESA_DO_RESET,			BiosReset },
 	{AGESA_LOCATE_BUFFER,			BiosLocateBuffer },
 	{AGESA_READ_SPD,			BiosReadSpd },
-	{AGESA_READ_SPD_RECOVERY,		BiosDefaultRet },
+	{AGESA_READ_SPD_RECOVERY,		agesa_NoopUnsupported },
 	{AGESA_RUNFUNC_ONAP,			BiosRunFuncOnAp },
-	{AGESA_GET_IDS_INIT_DATA,		BiosGetIdsInitData },
-	{AGESA_HOOKBEFORE_DQS_TRAINING,		BiosHookBeforeDQSTraining },
-	{AGESA_HOOKBEFORE_DRAM_INIT,		BiosHookBeforeDramInit },
-	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	BiosHookBeforeExitSelfRefresh },
+	{AGESA_GET_IDS_INIT_DATA,		agesa_EmptyIdsInitData },
+	{AGESA_HOOKBEFORE_DQS_TRAINING,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_DRAM_INIT,		agesa_NoopSuccess },
+	{AGESA_HOOKBEFORE_EXIT_SELF_REF,	agesa_NoopSuccess },
 };
 
 AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
@@ -115,60 +115,6 @@ AGESA_STATUS GetBiosCallout (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return CalloutStatus;
 }
 
-
-CONST IDS_NV_ITEM IdsData[] =
-{
-	/*{
-	  AGESA_IDS_NV_MAIN_PLL_CON,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID_EN,
-	  0x1
-	  },
-	  {
-	  AGESA_IDS_NV_MAIN_PLL_FID,
-	  0x8
-	  },
-
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_PSTATE,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P0_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_CUSTOM_NB_P1_DIV_CTRL,
-	  },
-	  {
-	  AGESA_IDS_NV_FORCE_NB_PSTATE,
-	  },
-	 */
-	{
-		0xFFFF,
-		0xFFFF
-	}
-};
-
-#define   NUM_IDS_ENTRIES    (sizeof (IdsData) / sizeof (IDS_NV_ITEM))
-
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	UINTN   i;
-	IDS_NV_ITEM *IdsPtr;
-
-	IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
-
-	if (Data == IDS_CALLOUT_INIT) {
-		for (i = 0; i < NUM_IDS_ENTRIES; i++) {
-			IdsPtr[i].IdsNvValue = IdsData[i].IdsNvValue;
-			IdsPtr[i].IdsNvId = IdsData[i].IdsNvId;
-		}
-	}
-	return AGESA_SUCCESS;
-}
-
-
 AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 {
 	AGESA_STATUS Status;
@@ -189,22 +135,3 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 
 	return Status;
 }
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
-/*  Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_SUCCESS;
-}
-
diff --git a/src/mainboard/tyan/s8226/BiosCallOuts.h b/src/mainboard/tyan/s8226/BiosCallOuts.h
index 0b4fb57..f733c3f 100644
--- a/src/mainboard/tyan/s8226/BiosCallOuts.h
+++ b/src/mainboard/tyan/s8226/BiosCallOuts.h
@@ -20,6 +20,7 @@
 #ifndef _BIOS_CALLOUT_H_
 #define _BIOS_CALLOUT_H_
 
+#include <northbridge/amd/agesa/def_callouts.h>
 #include <northbridge/amd/agesa/family15/fam15_callouts.h>
 
 /* CALLOUT Initialization */
diff --git a/src/northbridge/amd/agesa/Makefile.inc b/src/northbridge/amd/agesa/Makefile.inc
index 54b79f4..8f10664 100644
--- a/src/northbridge/amd/agesa/Makefile.inc
+++ b/src/northbridge/amd/agesa/Makefile.inc
@@ -22,3 +22,6 @@ subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY14) += family14
 subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY15) += family15
 subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY15_TN) += family15tn
 subdirs-$(CONFIG_NORTHBRIDGE_AMD_AGESA_FAMILY16_KB) += family16kb
+
+romstage-y += def_callouts.c
+ramstage-y += def_callouts.c
diff --git a/src/northbridge/amd/agesa/def_callouts.c b/src/northbridge/amd/agesa/def_callouts.c
new file mode 100644
index 0000000..228ac3f
--- /dev/null
+++ b/src/northbridge/amd/agesa/def_callouts.c
@@ -0,0 +1,40 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2011 Advanced Micro Devices, Inc.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "AGESA.h"
+#include "Ids.h"
+#include "def_callouts.h"
+
+AGESA_STATUS agesa_NoopUnsupported (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
+{
+	return AGESA_UNSUPPORTED;
+}
+
+AGESA_STATUS agesa_NoopSuccess (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
+{
+	return AGESA_SUCCESS;
+}
+
+AGESA_STATUS agesa_EmptyIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
+{
+	IDS_NV_ITEM *IdsPtr = ((IDS_CALLOUT_STRUCT *) ConfigPtr)->IdsNvPtr;
+	if (Data == IDS_CALLOUT_INIT)
+		IdsPtr[0].IdsNvValue = IdsPtr[0].IdsNvId = 0xffff;
+	return AGESA_SUCCESS;
+}
diff --git a/src/northbridge/amd/agesa/def_callouts.h b/src/northbridge/amd/agesa/def_callouts.h
new file mode 100644
index 0000000..2a0c019
--- /dev/null
+++ b/src/northbridge/amd/agesa/def_callouts.h
@@ -0,0 +1,32 @@
+/*
+ * This file is part of the coreboot project.
+ *
+ * Copyright (C) 2011,2012 Advanced Micro Devices, Inc.
+ * Copyright (C) 2013 Sage Electronic Engineering, LLC
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef CALLOUTS_AMD_AGESA_H
+#define CALLOUTS_AMD_AGESA_H
+
+#include "Porting.h"
+#include "AGESA.h"
+
+
+AGESA_STATUS agesa_NoopUnsupported (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
+AGESA_STATUS agesa_NoopSuccess (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
+AGESA_STATUS agesa_EmptyIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
+
+#endif /* CALLOUTS_AMD_AGESA_H */
diff --git a/src/northbridge/amd/agesa/family12/fam12_callouts.c b/src/northbridge/amd/agesa/family12/fam12_callouts.c
index 1d55e95..c62a104 100644
--- a/src/northbridge/amd/agesa/family12/fam12_callouts.c
+++ b/src/northbridge/amd/agesa/family12/fam12_callouts.c
@@ -383,8 +383,3 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 
 	return Status;
 }
-
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_UNSUPPORTED;
-}
diff --git a/src/northbridge/amd/agesa/family12/fam12_callouts.h b/src/northbridge/amd/agesa/family12/fam12_callouts.h
index 0572342..db8976b 100644
--- a/src/northbridge/amd/agesa/family12/fam12_callouts.h
+++ b/src/northbridge/amd/agesa/family12/fam12_callouts.h
@@ -49,22 +49,12 @@ AGESA_STATUS BiosDeallocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosLocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosRunFuncOnAp (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
 /* AGESA ADVANCED CALLOUTS - MEMORY */
 AGESA_STATUS BiosReadSpd (UINT32 Func,UINT32	Data,VOID *ConfigPtr);
 
-/* BIOS DEFAULT RET */
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 /*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
diff --git a/src/northbridge/amd/agesa/family14/fam14_callouts.c b/src/northbridge/amd/agesa/family14/fam14_callouts.c
index 301f145..62aaac3 100644
--- a/src/northbridge/amd/agesa/family14/fam14_callouts.c
+++ b/src/northbridge/amd/agesa/family14/fam14_callouts.c
@@ -388,7 +388,3 @@ AGESA_STATUS BiosReadSpd (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	return Status;
 }
 
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_UNSUPPORTED;
-}
diff --git a/src/northbridge/amd/agesa/family14/fam14_callouts.h b/src/northbridge/amd/agesa/family14/fam14_callouts.h
index 1f23cef..17f80f9 100755
--- a/src/northbridge/amd/agesa/family14/fam14_callouts.h
+++ b/src/northbridge/amd/agesa/family14/fam14_callouts.h
@@ -50,23 +50,13 @@ AGESA_STATUS BiosDeallocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosLocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosRunFuncOnAp (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
 /* AGESA ADVANCED CALLOUTS - MEMORY */
 AGESA_STATUS BiosReadSpd (UINT32 Func,UINT32	Data,VOID *ConfigPtr);
 AGESA_STATUS BiosReadSpd_from_cbfs(UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
-/* BIOS DEFAULT RET */
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 /*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 /* PCIE slot reset control */
 AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
diff --git a/src/northbridge/amd/agesa/family15/fam15_callouts.c b/src/northbridge/amd/agesa/family15/fam15_callouts.c
index fe7c3ed..a9e02c7 100644
--- a/src/northbridge/amd/agesa/family15/fam15_callouts.c
+++ b/src/northbridge/amd/agesa/family15/fam15_callouts.c
@@ -375,8 +375,3 @@ AGESA_STATUS BiosReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
 	Status = 0;
 	return Status;
 }
-
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr)
-{
-	return AGESA_UNSUPPORTED;
-}
diff --git a/src/northbridge/amd/agesa/family15/fam15_callouts.h b/src/northbridge/amd/agesa/family15/fam15_callouts.h
index a43c650..2782f70 100644
--- a/src/northbridge/amd/agesa/family15/fam15_callouts.h
+++ b/src/northbridge/amd/agesa/family15/fam15_callouts.h
@@ -50,24 +50,11 @@ AGESA_STATUS BiosDeallocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosLocateBuffer (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosRunFuncOnAp (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 AGESA_STATUS BiosReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-AGESA_STATUS BiosGetIdsInitData (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
 /* AGESA ADVANCED CALLOUTS - MEMORY */
 AGESA_STATUS BiosReadSpd (UINT32 Func,UINT32	Data,VOID *ConfigPtr);
-AGESA_STATUS BiosReadSpd_from_cbfs(UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
-/* BIOS DEFAULT RET */
-AGESA_STATUS BiosDefaultRet (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDQSTraining (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 /*	Call the host environment interface to provide a user hook opportunity. */
 AGESA_STATUS BiosHookBeforeDramInit (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeDramInitRecovery (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/*	Call the host environment interface to provide a user hook opportunity. */
-AGESA_STATUS BiosHookBeforeExitSelfRefresh (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
-/* PCIE slot reset control */
-AGESA_STATUS BiosGnbPcieSlotReset (UINT32 Func, UINT32 Data, VOID *ConfigPtr);
 
 #endif /* CALLOUTS_AMD_AGESA_FAM15_H */



More information about the coreboot-gerrit mailing list