Re: Query related to shutting down NVMe during system suspend

nitirawa
2022-02-09T21:17:52Z

On 2022-02-10 01:56, Keith Busch wrote:
> On Tue, Feb 01, 2022 at 09:52:28PM +0530, Vidya Sagar wrote:
>> Hi Rafael & Christoph,
>> My query is regarding the comment and the code that follows after it
>> at
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/nvme/host/pci.c?h=v5.17-rc2#n3243
>> What I understood from it is that, there is an underlying assumption
>> that the power to the devices is not removed during the suspend call.
>> In the case of device-tree based platforms like Tegra194, power is
>> indeed removed to the devices during suspend-resume process. Hence,
>> the
>> NVMe devices need to be taken through the shutdown path irrespective
>> of
>> whether the ASPM states are enabled or not.
>> I would like to hear from you the best method to follow to achieve
>> this.
>
> Christoph prefers to append quirks for platforms that need full device
> shutdown on s2idle instead of changing the driver default.
>
> We use dmi matching for our current platform quirk list. I do not know
> what the equivalent is for device-tree based platforms. Do you know?

Hi Keith,

IMO, the NVME driver is not associated with any device tree, Instead PCI
driver is associated with device tree.
So unlike ACPI based platform where we have platform specific DMI
matching, we don't have equivalent check for DT based platform.

Do we see any concern if we introduce a module param with default not
set to quick suspend.
For platform that need full shutdown durring resume , they can set it to
quick suspend.