Ordering Dell XPS 13 9310 to test QCA6390

Justin Mazzola Paluska jmp at justinmp.com
Sat Feb 13 14:10:07 EST 2021


On 2/12/21 2:14 AM, Kalle Valo wrote:
> Justin Mazzola Paluska <jmp at justinmp.com> writes:
>> I'm still using the ath11k-qca6390-bringup-202012140938 branch.  I'm
>> happy to try out new patches, particularly ones related to power
>> management.  The laptop doesn't get into states lower than pc6 while
>> the wireless card is running.  If I shut down the card, the laptop
>> will opportunistically get down into the pc10 state, which leads to
>> massive power savings.
> I'm not familiar with pc states, do you have any pointers? How do you
> check the states yourself?

"c" states are power saving states for a core.  "pc" states are package 
c-states and are deeper power saving states that can only be reached 
when all cores in a package are in low-power c-states. Higher numbered 
states save more power than lower numbered states. Getting into the 
lowest-power states (pc10) allows the system to get into what Intel 
calls "S0ix" idle states that save a lot of power.

The best pointers I have for this stuff is 
https://01.org/blogs/qwang59/2018/how-achieve-s0ix-states-linux . It's 
written for a lay user, not a kernel developer. 
https://01.org/blogs/qwang59/2020/linux-s0ix-troubleshooting goes into 
more detail.

I generally check the states using powertop.  If you run powertop and 
tab over to the "Idle stats" tab, the left-most column has the pc states.

It's also possible to use a program from Intel called turbostat. (On 
Debian and derivatives, turbostat is in the linux-cpupower package.)  
turbostat spits out frequency and power information to stdout and is way 
better for scripting compared to powertop.

> At the moment in suspend we leave the firmware running in low power
> state due to problems in MHI. The ideal state would be to power off the
> firmware entirely, but that needs changes in MHI. But I suspect you are
> not talking about suspend.

Indeed, I'm not talking about suspend, I'm talking about when the 
computer is awake, but idle because I'm not putting much load on it.  
For example, when reading a PDF, the computer doesn't need to do much 
and can go into a very low-power state.

What's interesting about the Dell XPS 9310 is that suspend is no longer 
the good old S3 "s2ram" suspend, but rather S0ix "s2idle" suspend.  
Microsoft has been pushing s2idle kind of suspend as "Modern Standby" 
and as of Tiger Lake, Intel only allows s2idle.

You'll note that the word S0ix appears both for s2idle suspend and for 
the pc states power management stuff above.  It's because they're the 
same! It's theoretically possible for a running computer to 
opportunistically get itself into a S0ix state that's almost as low 
power as s2idle.

When I had access to a Dell XPS 9300 (Intel 10th Gen CPU & Intel WiFI), 
I ran powertop while I went about my normal usage and the 9300 would 
regularly get itself into pc10 states when I was reading a PDF and I 
wasn't actively using the network (the card was connected to my access 
point and I had connections open, but none of them were actively 
transmitting data).

The Dell XPS 9310 that's my daily driver can get into a pc6 state when 
doing a similar task, but won't go into a pc10 or s0ix state until I 
disable WiFi.
     --Justin



More information about the ath11k mailing list