summaryrefslogtreecommitdiff
path: root/src/southbridge/intel/lynxpoint/lpc.c
diff options
context:
space:
mode:
authorVladimir Serbinenko <phcoder@gmail.com>2014-10-05 11:07:33 +0200
committerVladimir Serbinenko <phcoder@gmail.com>2014-10-10 08:55:26 +0200
commit7309c64d483abb4bf4ebe12901109320d88124ba (patch)
tree5c34d8f79be13b8bd6ccd75c7b188c306401387b /src/southbridge/intel/lynxpoint/lpc.c
parent60fccdc3d2ab5a3b0265f1a411d02b8504407e1c (diff)
bd82x6x, ibexpeak, lynxpoint: Ensure 0-filling of uninited GNVS vars.
Change-Id: I672c3ca9e7f30a21330cf1920a25b1ab38b3f282 Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com> Reviewed-on: http://review.coreboot.org/7015 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@google.com>
Diffstat (limited to 'src/southbridge/intel/lynxpoint/lpc.c')
-rw-r--r--src/southbridge/intel/lynxpoint/lpc.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/southbridge/intel/lynxpoint/lpc.c b/src/southbridge/intel/lynxpoint/lpc.c
index d1a7203041..451aeabc2e 100644
--- a/src/southbridge/intel/lynxpoint/lpc.c
+++ b/src/southbridge/intel/lynxpoint/lpc.c
@@ -745,7 +745,14 @@ static void set_subsystem(device_t dev, unsigned vendor, unsigned device)
static unsigned long southbridge_fill_ssdt(unsigned long current, const char *oem_table_id)
{
- global_nvs_t *gnvs = cbmem_add (CBMEM_ID_ACPI_GNVS, sizeof (*gnvs));
+ global_nvs_t *gnvs;
+
+ gnvs = cbmem_find(CBMEM_ID_ACPI_GNVS);
+ if (!gnvs) {
+ gnvs = cbmem_add(CBMEM_ID_ACPI_GNVS, sizeof (*gnvs));
+ if (gnvs)
+ memset(gnvs, 0, sizeof(*gnvs));
+ }
if (gnvs) {
int scopelen;