diff options
author | Frans Hendriks <fhendriks@eltan.com> | 2019-05-16 11:46:22 +0200 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2019-05-20 14:42:09 +0000 |
commit | 20989630c417b1f0228f4c8eb6af7d715f5bdbcc (patch) | |
tree | 20d74c0659c272ee4e891ffa82becd95b70f414d /src | |
parent | 232113e7cdc08c4dad7c7914af937717e9c1b144 (diff) |
soc/intel/braswell/pmutil.c: Use GEN_PMCON1 for RTC status
cbmem_find is not available in every stage.
Remove usage of cbmem_find() and use GEN_PMCON1 always.
BUG=NA
TEST=Booting Embedded Linux on Facebook FBG-1701
Change-Id: Id97d57864b3e241e8f046d9b1caebdce199a46b1
Signed-off-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32724
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/intel/braswell/pmutil.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/soc/intel/braswell/pmutil.c b/src/soc/intel/braswell/pmutil.c index 271eefed08..4bc621b80e 100644 --- a/src/soc/intel/braswell/pmutil.c +++ b/src/soc/intel/braswell/pmutil.c @@ -16,9 +16,9 @@ #include <arch/acpi.h> #include <arch/io.h> +#include <assert.h> #include <device/mmio.h> #include <device/pci_ops.h> -#include <cbmem.h> #include <console/console.h> #include <soc/iomap.h> #include <soc/lpc.h> @@ -364,15 +364,14 @@ int rtc_failure(void) { uint32_t gen_pmcon1; int rtc_fail; - struct chipset_power_state *ps = cbmem_find(CBMEM_ID_POWER_STATE); - if (ps != NULL) - gen_pmcon1 = ps->gen_pmcon1; - else - gen_pmcon1 = read32((u32 *)(PMC_BASE_ADDRESS + GEN_PMCON1)); + /* not usable in ramstage as GEN_PMCON1 gets reset */ + if (ENV_RAMSTAGE) + dead_code(); - rtc_fail = !!(gen_pmcon1 & RPS); + gen_pmcon1 = read32((u32 *)(PMC_BASE_ADDRESS + GEN_PMCON1)); + rtc_fail = !!(gen_pmcon1 & RPS); if (rtc_fail) printk(BIOS_DEBUG, "RTC failure.\n"); |