On Friday, May 15, 2020 11:41:16 PM CEST Andy Shevchenko wrote:
> +Cc: ACPI ML and Rafael

+Cc: David Box

> On Fri, May 15, 2020 at 8:36 PM la...@apache.org <la...@apache.org> wrote:
> >
> > Hi. I hope this is the right forum to raise this...
> >
> > For a while I have noticed that my CPU (i9-9880H in a Lenovo X1 Extreme 
> > Gen2) never enters any sleep mode below pc2.
> > (Confirmed with powertop and /sys/kernel/debug/pmc_core/package_cstate_show)
> >
> > Interestingly the CPU *can* reachers deeper C states *after* a resume from 
> > sleep (either S0ix or S3, i.e. freeze or mem).
> >
> > This article finally pointed me in the right direction: 
> > https://01.org/blogs/qwang59/2020/linux-s0ix-troubleshooting
> >
> > Somehow SOUTHPORT_A is requesting a max latency of 1 us.
> > There are no external devices attached.
> >
> > This is before a resume:
> >
> > $ cat /sys/kernel/debug/pmc_core/ltr_show
> > SOUTHPORT_A                             LTR: RAW: 0x88018c01            
> > Non-Snoop(ns): 1024             Snoop(ns): 32768           <-------
> > SOUTHPORT_B                             LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SATA                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > GIGABIT_ETHERNET                        LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > XHCI                                    LTR: RAW: 0x13ff                
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > Reserved                                LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ME                                      LTR: RAW: 0x8000800             
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > EVA                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SOUTHPORT_C                             LTR: RAW: 0x9f409f4             
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > HD_AUDIO                                LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CNV                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > LPSS                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SOUTHPORT_D                             LTR: RAW: 0x8c548c54            
> > Non-Snoop(ns): 2752512          Snoop(ns): 2752512
> > SOUTHPORT_E                             LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CAMERA                                  LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ESPI                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SCC                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ISH                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > UFSX2                                   LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > EMMC                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > WIGIG                                   LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CURRENT_PLATFORM                        LTR: RAW: 0x40201               
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > AGGREGATED_SYSTEM                       LTR: RAW: 0x7fbfdfe             
> > Non-Snoop(ns): 0                Snoop(ns): 0
> >
> > Notice the 1000ns max latency requirement for SOUTHPORT_A.
> >
> > Ignoring SOUTHPORT_A via /sys/kernel/debug/pmc_core/ltr_ignore subsequently 
> > allows the CPU to reach deep sleep states.
> >
> > After a resume it looks like suddenly SOUTHPORT_C is active and with a less 
> > tight latency requirement:
> >
> > $ cat /sys/kernel/debug/pmc_core/ltr_show
> > SOUTHPORT_A                             LTR: RAW: 0x8010c01             
> > Non-Snoop(ns): 0                Snoop(ns): 0               <--------
> > SOUTHPORT_B                             LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SATA                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > GIGABIT_ETHERNET                        LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > XHCI                                    LTR: RAW: 0x13ff                
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > Reserved                                LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ME                                      LTR: RAW: 0x8000800             
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > EVA                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SOUTHPORT_C                             LTR: RAW: 0x88468846            
> > Non-Snoop(ns): 71680            Snoop(ns): 71680           <---------
> > HD_AUDIO                                LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CNV                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > LPSS                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SOUTHPORT_D                             LTR: RAW: 0x8c548c54            
> > Non-Snoop(ns): 2752512          Snoop(ns): 2752512
> > SOUTHPORT_E                             LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CAMERA                                  LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ESPI                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > SCC                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > ISH                                     LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > UFSX2                                   LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > EMMC                                    LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > WIGIG                                   LTR: RAW: 0x0                   
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > CURRENT_PLATFORM                        LTR: RAW: 0x40201               
> > Non-Snoop(ns): 0                Snoop(ns): 0
> > AGGREGATED_SYSTEM                       LTR: RAW: 0x904824              
> > Non-Snoop(ns): 0                Snoop(ns): 0
> >
> > Does anybody know what's going on or how to debug this further?
> >
> > As stated above, I was able to work around this problem by ignoring 
> > SOUTHPORT_A via /sys/kernel/debug/pmc_core/ltr_ignore.
> > There has to be a better way, and I'm sure I'm not the only one running 
> > into this.
> >
> > Thanks.
> >
> > -- Lars
> 
> 
> 
> 






_______________________________________________
ibm-acpi-devel mailing list
ibm-acpi-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ibm-acpi-devel

Reply via email to