On Thu, Feb 20, 2020 at 9:08 AM Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx> wrote: > > Hi Srinivas, > > > On Feb 20, 2020, at 02:36, Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx> wrote: > > > > Hi Kai, > > > > On Wed, 2020-02-19 at 22:22 +0800, Kai-Heng Feng wrote: > >> Hi Srinivas, > >> > >> Your previous work to support DEVSLP works well on SATA SSDs, so I am > >> asking you the issue I am facing: > >> Once a laptop has a HDD installed, the power consumption during > >> S2Idle increases ~0.4W, which is quite a lot. > >> However, HDDs don't seem to support DEVSLP, so I wonder if you know > >> to do proper power management for HDDs? > > What is the default here > > cat /sys/power/mem_sleep > > s2idle or deep? > > It defaults to s2idle. > > > > > Please follow debug steps here: > > https://01.org/blogs/qwang59/2018/how-achieve-s0ix-states-linux > > > > We need to check whether you get any PC10 residency or not. > > Yes it reaches PC10. It doesn't reach SLP_S0 though. > The real number on S2Idle power consumption: > No HDD: ~1.4W > One HDD: ~1.8W > > If the SoC doesn't hit PC10 the number should be significantly higher. > That's why I think the issue is the power management on HDD itself. I'm assuming that you mean a non-SSD device here. That would be handled via ata_port_suspend() I gather and whatever that does should do the right thing. Do you think that the disk doesn't spin down or it spins down, but the logic stays on?