Lijian Zhao has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/30945
Change subject: soc/intel/cannonlake: Fix afterg3 programming ......................................................................
soc/intel/cannonlake: Fix afterg3 programming
According to EDS #565870 chapter 5.3.1, AG3E bit in PMC located in PMC memory mapped register but not pci config spaces. Change the programming to affect that difference.
BUG=b:122425492 TEST=Change System Power State after failure to "s5 off", and boot up onto sarien platform, check the register with iotools mmio_read32 0xfe001020 and bit 0 is set.
Signed-off-by: Lijian Zhao lijian.zhao@intel.com Change-Id: I0934894558fd9cbc056dea8e7ac30426c2529e4e --- M src/soc/intel/cannonlake/pmc.c 1 file changed, 3 insertions(+), 2 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/45/30945/1
diff --git a/src/soc/intel/cannonlake/pmc.c b/src/soc/intel/cannonlake/pmc.c index aebcfc9..74c877b 100644 --- a/src/soc/intel/cannonlake/pmc.c +++ b/src/soc/intel/cannonlake/pmc.c @@ -33,8 +33,9 @@ static void pmc_set_afterg3(struct device *dev, int s5pwr) { uint8_t reg8; + uint8_t *pmcbase = pmc_mmio_regs();
- reg8 = pci_read_config8(dev, GEN_PMCON_B); + reg8 = read8(pmcbase + GEN_PMCON_A);
switch (s5pwr) { case MAINBOARD_POWER_STATE_OFF: @@ -48,7 +49,7 @@ break; }
- pci_write_config8(dev, GEN_PMCON_B, reg8); + write8(pmcbase + GEN_PMCON_A, reg8); }
/*