From: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>, Christoph Hellwig <hch@lst.de>
Cc: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>,
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: Fri, 20 Dec 2024 16:15:21 +0100 [thread overview]
Message-ID: <dd557897-f2e0-4347-ae67-27cd45920159@oss.qualcomm.com> (raw)
In-Reply-To: <CAJZ5v0g8CdGgWA7e6TXpUjYNkU1zX46Rz3ELiun42MayoN0osA@mail.gmail.com>
On 16.12.2024 5:42 PM, 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.
That would be correct.
The Qualcomm platform (or class of platforms) we're looking at with this
specific issue requires PCIe (implying NVMe) shutdown for S2RAM.
The S2RAM entry mechanism is unfortunately misrepresented as an S2Idle
state by Linux as of today, and I'm trying really hard to convince some
folks to let me describe it correctly, with little success so far..
That is the real underlying issue and once/if it's solved, this patch
will not be necessary.
> In theory, ACPI S3 or hibernation may request that, but I've never
> seen it happen in practice.
>
> Suspend-to-idle on x86 may want devices to end up in specific power
> states in order to be able to switch the entire platform into a deep
> energy-saving mode, but that's never been D3cold so far.
In our case the plug is only pulled in S2RAM, otherwise the best we can
do is just turn off the devices individually to decrease the overall
power draw
(simplifying some small edge cases here, but that's mostly the story)
Konrad
next prev parent reply other threads:[~2024-12-20 15:15 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
2024-12-16 19:10 ` Rafael J. Wysocki
2024-12-20 15:15 ` Konrad Dybcio [this message]
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=dd557897-f2e0-4347-ae67-27cd45920159@oss.qualcomm.com \
--to=konrad.dybcio@oss.qualcomm.com \
--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=manivannan.sadhasivam@linaro.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