From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Christoph Hellwig <hch@lst.de>,
Ulf Hansson <ulf.hansson@linaro.org>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Bjorn Helgaas <helgaas@kernel.org>,
kbusch@kernel.org, axboe@kernel.dk, sagi@grimberg.me,
linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org, andersson@kernel.org,
konradybcio@kernel.org, Len Brown <len.brown@intel.com>,
linux-pm@vger.kernel.org
Subject: Re: [PATCH] nvme-pci: Shutdown the device if D3Cold is allowed by the user
Date: Mon, 16 Dec 2024 23:09:45 +0530 [thread overview]
Message-ID: <20241216173945.s5y4dsyzhi5fo4ey@thinkpad> (raw)
In-Reply-To: <CAJZ5v0hxnYere19wXbua6zWEDRDgSPeJgSECugtwfgTP-UN8Bw@mail.gmail.com>
On Mon, Dec 16, 2024 at 06:28:55PM +0100, Rafael J. Wysocki wrote:
> On Mon, Dec 16, 2024 at 5:48 PM Manivannan Sadhasivam
> <manivannan.sadhasivam@linaro.org> wrote:
> >
> > On Mon, Dec 16, 2024 at 05:42:30PM +0100, Rafael J. Wysocki wrote:
> > > On Mon, Dec 16, 2024 at 5:23 PM Christoph Hellwig <hch@lst.de> wrote:
> > > >
> > > > On Sat, Dec 14, 2024 at 12:00:23PM +0530, Manivannan Sadhasivam wrote:
> > > > > We need a PM core API that tells the device drivers when it is safe to powerdown
> > > > > the devices. The usecase here is with PCIe based NVMe devices but the problem is
> > > > > applicable to other devices as well.
> > > >
> > > > Maybe I'm misunderstanding things, but I think the important part is
> > > > to indicate when a suspend actually MUST put the device into D3. Because
> > > > doing that should always be safe, but not always optimal.
> > >
> > > I'm not aware of any cases when a device must be put into D3cold
> > > (which I think is what you mean) during system-wide suspend.
> > >
> > > Suspend-to-idle on x86 doesn't require this, at least not for
> > > correctness. I don't think any platforms using DT require it either.
> > >
> >
> > On suspend-to-idle, yes D3Cold doesn't make sense,
>
> Why?
>
Because there is no requirement to remove power during S2Idle, isn't it?
From Documentation/admin-guide/pm/sleep-states.rst:
'This is a generic, pure software, light-weight variant of system suspend'.
> > but on suspend-to-ram it is pretty much required.
>
> Well, I know for a fact that on x86 platforms ACPI S3 does not require
> putting devices into D3cold in general.
>
> Why is it required for NVMe?
>
But ACPI code currently calls pm_set_suspend_via_firmware() for S3 suspend. And
that causes NVMe to be powered down because of pm_suspend_via_firmware() check.
> > That applies to DT as well.
>
> Again, why?
On DT systems if firmware supports both S2Idle and S2R, devices can be kept in
low power state during S2Idle and powered down during S2R.
The problem comes if the firmware only supports the former state.
- Mani
--
மணிவண்ணன் சதாசிவம்
next prev parent reply other threads:[~2024-12-16 17:39 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20241205232900.GA3072557@bhelgaas>
[not found] ` <20241206014934.GA3081609@bhelgaas>
[not found] ` <20241209133606.GA18172@lst.de>
[not found] ` <20241209143821.m4dahsaqeydluyf3@thinkpad>
2024-12-12 5:59 ` [PATCH] nvme-pci: Shutdown the device if D3Cold is allowed by the user Christoph Hellwig
2024-12-12 12:21 ` Rafael J. Wysocki
2024-12-12 12:49 ` Ulf Hansson
2024-12-12 15:13 ` Christoph Hellwig
2024-12-13 14:35 ` Rafael J. Wysocki
2024-12-14 6:30 ` Manivannan Sadhasivam
2024-12-16 16:23 ` Christoph Hellwig
2024-12-16 16:42 ` Rafael J. Wysocki
2024-12-16 16:48 ` Manivannan Sadhasivam
2024-12-16 17:28 ` Rafael J. Wysocki
2024-12-16 17:39 ` Manivannan Sadhasivam [this message]
2024-12-16 19:10 ` Rafael J. Wysocki
2024-12-20 15:15 ` Konrad Dybcio
2024-12-21 3:38 ` Manivannan Sadhasivam
2024-12-21 11:17 ` Konrad Dybcio
2024-12-26 16:22 ` Manivannan Sadhasivam
2025-01-03 7:28 ` Christoph Hellwig
2025-01-03 11:48 ` Konrad Dybcio
2024-12-16 16:24 ` Rafael J. Wysocki
2024-12-16 17:11 ` Manivannan Sadhasivam
2024-12-16 17:35 ` Rafael J. Wysocki
2024-12-16 17:52 ` Manivannan Sadhasivam
2024-12-16 19:34 ` Rafael J. Wysocki
2024-12-16 19:40 ` Keith Busch
2024-12-16 19:43 ` Rafael J. Wysocki
2024-12-17 5:26 ` manivannan.sadhasivam
2024-12-17 19:45 ` Rafael J. Wysocki
2024-12-19 8:02 ` Manivannan Sadhasivam
2024-12-19 12:45 ` Rafael J. Wysocki
2024-12-19 16:41 ` Ulf Hansson
2024-12-19 18:28 ` Rafael J. Wysocki
2025-01-03 7:26 ` Christoph Hellwig
2024-12-19 6:30 ` Christoph Hellwig
2024-12-19 8:03 ` Manivannan Sadhasivam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20241216173945.s5y4dsyzhi5fo4ey@thinkpad \
--to=manivannan.sadhasivam@linaro.org \
--cc=andersson@kernel.org \
--cc=axboe@kernel.dk \
--cc=hch@lst.de \
--cc=helgaas@kernel.org \
--cc=kbusch@kernel.org \
--cc=konradybcio@kernel.org \
--cc=len.brown@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=rafael@kernel.org \
--cc=rjw@rjwysocki.net \
--cc=sagi@grimberg.me \
--cc=ulf.hansson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox