aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/icelake/finalize.c7
-rw-r--r--src/soc/intel/icelake/pmc.c2
2 files changed, 7 insertions, 2 deletions
diff --git a/src/soc/intel/icelake/finalize.c b/src/soc/intel/icelake/finalize.c
index e061cda2f0..b838c199e7 100644
--- a/src/soc/intel/icelake/finalize.c
+++ b/src/soc/intel/icelake/finalize.c
@@ -69,8 +69,13 @@ static void pch_finalize(void)
*
* Disabling ACPI PM timer is necessary for XTAL OSC shutdown.
* Disabling ACPI PM timer also switches off TCO
+ *
+ * SA_DEV_ROOT device is used here instead of PCH_DEV_PMC since it is
+ * just required to get to chip config. PCH_DEV_PMC is hidden by this
+ * point and hence removed from the root bus. pcidev_path_on_root thus
+ * returns NULL for PCH_DEV_PMC device.
*/
- dev = PCH_DEV_PMC;
+ dev = SA_DEV_ROOT;
config = dev->chip_info;
pmcbase = pmc_mmio_regs();
if (config->PmTimerDisabled) {
diff --git a/src/soc/intel/icelake/pmc.c b/src/soc/intel/icelake/pmc.c
index 8f61d70955..25913a8904 100644
--- a/src/soc/intel/icelake/pmc.c
+++ b/src/soc/intel/icelake/pmc.c
@@ -136,7 +136,7 @@ static void pch_power_options(struct device *dev)
static void pmc_init(void *unused)
{
- struct device *dev = PCH_DEV_PMC;
+ struct device *dev = SA_DEV_ROOT;
config_t *config = dev->chip_info;
rtc_init();