Attention is currently required from: Tarun Tuli, Subrata Banik, Kapil Porwal.
Subrata Banik has uploaded a new patch set (#2) to the change originally created by Kapil Porwal. ( https://review.coreboot.org/c/coreboot/+/69680 )
Change subject: soc/intel/meteorlake: Skip setting D0I3 bit for HECI devices ......................................................................
soc/intel/meteorlake: Skip setting D0I3 bit for HECI devices
This patch skips setting D0I3 bit for all HECI devices by FSP.
The learning being made from Alder Lake platform showed that the CSE EOP cmd response time is highly nondeterministic and letting the EOP cmd issued by FSP makes the response time even worse.
The idea being pursued during Alder Lake platform is to let FSP skip sending the EOP cmd and coreboot sends it at the last minute (late sending of EOP) to ensure there is ample time for CSE to come to a state where the response to the EOP is almost immediate.
There were a number of refactoring being done to ensure the EOP cmd can be sent at the later stage.
#1: Ensure FSP is not putting those HECI devices into the D0i3. (SoC specific change) #2: Modify the CSE related boot state based operation to allow a proper window for sending late EOP cmd. (Common Code Specific change)
The entire refactoring helps us to save ~60ms of boot time.
Without those code change EOP sending timestamp as below:
943:after sending EOP to ME 1,248,328(61,954))
With those code change EOP sending timestamp as below:
943:after sending EOP to ME 1,231,660 (2,754)
Port of commit d6da4ef69e4e ("soc/intel/alderlake: Skip setting D0I3 bit for HECI devices") to incorporate the #1 which is a SoC specific code change.
BUG=none TEST=FSP-S UPD dump suggested `DisableD0I3SettingForHeci` UPD is set to `1`.
Excerpt from google/rex coreboot log: [SPEW ] DisableD0I3SettingForHeci : 0x1
Signed-off-by: Kapil Porwal kapilporwal@google.com Change-Id: I1c3765ce41f192ab5f5ff176e0a2b49b312d18d2 --- M src/soc/intel/meteorlake/fsp_params.c 1 file changed, 51 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/80/69680/2