[coreboot] [commit] r6632 - trunk/src/mainboard/asrock/e350m1

repository service svn at coreboot.org
Sat Jun 4 17:46:50 CEST 2011


Author: stuge
Date: Sat Jun  4 17:46:50 2011
New Revision: 6632
URL: https://tracker.coreboot.org/trac/coreboot/changeset/6632

Log:
Port persimmon r6590 to e350m1: Work around memory allocation problem

Fix memory allocation problem in amdInitLate. Disabled until further debug.

Signed-off-by: Marshall Buschman <mbuschman at lucidmachines.com>
Acked-by: Peter Stuge <peter at stuge.se>

Modified:
   trunk/src/mainboard/asrock/e350m1/agesawrapper.c

Modified: trunk/src/mainboard/asrock/e350m1/agesawrapper.c
==============================================================================
--- trunk/src/mainboard/asrock/e350m1/agesawrapper.c	Sat Jun  4 17:46:32 2011	(r6631)
+++ trunk/src/mainboard/asrock/e350m1/agesawrapper.c	Sat Jun  4 17:46:50 2011	(r6632)
@@ -444,33 +444,32 @@
   )
 {
   AGESA_STATUS Status;
-  AMD_LATE_PARAMS AmdLateParams;
+  AMD_INTERFACE_PARAMS AmdParamStruct = {0};
+  AMD_LATE_PARAMS *AmdLateParams;
 
-  LibAmdMemFill (&AmdLateParams,
-                 0,
-                 sizeof (AMD_LATE_PARAMS),
-                 &(AmdLateParams.StdHeader));
-
-  AmdLateParams.StdHeader.AltImageBasePtr = 0;
-  AmdLateParams.StdHeader.CalloutPtr = (CALLOUT_ENTRY) &GetBiosCallout;
-  AmdLateParams.StdHeader.Func = 0;
-  AmdLateParams.StdHeader.ImageBasePtr = 0;
+  return 0; // this causes bad ACPI SSDT, need to debug
 
-  Status = AmdInitLate (&AmdLateParams);
+  AmdParamStruct.AgesaFunctionName = AMD_INIT_LATE;
+  AmdParamStruct.AllocationMethod = PostMemDram;
+  AmdParamStruct.StdHeader.CalloutPtr = (CALLOUT_ENTRY) &GetBiosCallout;
+  AmdCreateStruct (&AmdParamStruct);
+  AmdLateParams = (AMD_LATE_PARAMS *)AmdParamStruct.NewStructPtr;
+  Status = AmdInitLate (AmdLateParams);
   if (Status != AGESA_SUCCESS) {
     agesawrapper_amdreadeventlog();
     ASSERT(Status == AGESA_SUCCESS);
   }
 
-  DmiTable       = AmdLateParams.DmiTable;
-  AcpiPstate     = AmdLateParams.AcpiPState;
-  AcpiSrat       = AmdLateParams.AcpiSrat;
-  AcpiSlit       = AmdLateParams.AcpiSlit;
-
-  AcpiWheaMce    = AmdLateParams.AcpiWheaMce;
-  AcpiWheaCmc    = AmdLateParams.AcpiWheaCmc;
-  AcpiAlib       = AmdLateParams.AcpiAlib;
+  DmiTable    = AmdLateParams->DmiTable;
+  AcpiPstate  = AmdLateParams->AcpiPState;
+  AcpiSrat    = AmdLateParams->AcpiSrat;
+  AcpiSlit    = AmdLateParams->AcpiSlit;
+
+  AcpiWheaMce = AmdLateParams->AcpiWheaMce;
+  AcpiWheaCmc = AmdLateParams->AcpiWheaCmc;
+  AcpiAlib    = AmdLateParams->AcpiAlib;
 
+  AmdReleaseStruct (&AmdParamStruct);
   return (UINT32)Status;
 }
 




More information about the coreboot mailing list