From 8cbe43b8d73ba02fc771f8ea00f7ec4ab2e37f5b Mon Sep 17 00:00:00 2001 From: Subrata Banik Date: Fri, 9 Apr 2021 20:35:09 +0530 Subject: soc/intel/alderlake: Skip D3Cold for TBT Check TBT NVM FW Ready (INFR) bit to skip D3Cold for TBT when device is in disconnected state. Not adhering this recommendation is blocking the S0ix state transition. BUG=b:183670327 TEST=S0ix state transition occurs with TBT disconnected. Change-Id: Ib9b9ceee4393aeba37fdcb4e05d1b279a6ff72d2 Signed-off-by: Sugnan Prabhu S Signed-off-by: Subrata Banik Reviewed-on: https://review.coreboot.org/c/coreboot/+/51274 Tested-by: build bot (Jenkins) Reviewed-by: Furquan Shaikh Reviewed-by: Tim Wawrzynczak Reviewed-by: EricR Lai --- src/soc/intel/alderlake/acpi/tcss.asl | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/soc/intel/alderlake') diff --git a/src/soc/intel/alderlake/acpi/tcss.asl b/src/soc/intel/alderlake/acpi/tcss.asl index 1b13260bc6..30bca38114 100644 --- a/src/soc/intel/alderlake/acpi/tcss.asl +++ b/src/soc/intel/alderlake/acpi/tcss.asl @@ -555,6 +555,9 @@ Scope (\_SB.PCI0) Printf("TDM0 does not exist.") } Else { If (\_SB.PCI0.TDM0.STAT == 1) { + If (\_SB.PCI0.TDM0.INFR != 1) { + Return + } /* DMA0 is not in D3Cold now. */ \_SB.PCI0.TDM0.D3CE() /* Enable DMA RTD3 */ @@ -610,6 +613,9 @@ Scope (\_SB.PCI0) Printf("TDM1 does not exist.") } Else { If (\_SB.PCI0.TDM1.STAT == 1) { + If (\_SB.PCI0.TDM1.INFR != 1) { + Return + } /* DMA1 is not in D3Cold now */ \_SB.PCI0.TDM1.D3CE() /* Enable DMA RTD3. */ -- cgit v1.2.3