/* SPDX-License-Identifier: GPL-2.0-only */ /* * Helper functions for dealing with power management registers * and the differences between PCH variants. */ #include <intelblocks/rtc.h> #include <soc/pmc.h> #include <soc/pci_devs.h> #include <device/pci.h> #include <console/console.h> int soc_get_rtc_failed(void) { uint32_t pmcon_b = pci_s_read_config32(PCH_DEV_PMC, GEN_PMCON_B); int rtc_fail = !!(pmcon_b & RTC_BATTERY_DEAD); if (rtc_fail) printk(BIOS_ERR, "%s: RTC battery dead or removed\n", __func__); return rtc_fail; }