[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZG/c1+/mCp/PfFSO@bhelgaas>
Date: Thu, 25 May 2023 17:10:31 -0500
From: Bjorn Helgaas <helgaas@...nel.org>
To: Owen Yang <ecs.taipeikernel@...il.com>
Cc: LKML <linux-kernel@...r.kernel.org>,
Bob Moragues <moragues@...gle.com>,
Abner Yen <abner.yen@....com.tw>,
Doug Anderson <dianders@...omium.org>,
Matthias Kaehlcke <mka@...gle.com>,
Stephen Boyd <swboyd@...omium.org>, Harvey <hunge@...gle.com>,
Gavin Lee <gavin.lee@....com.tw>,
Bjorn Helgaas <bhelgaas@...gle.com>, linux-pci@...r.kernel.org
Subject: Re: [PATCH v1] drivers: pci: quirks: Add suspend fixup for SSD on
sc7280
On Thu, May 25, 2023 at 04:35:12PM +0800, Owen Yang wrote:
> Implement this workaround until Qualcomm fixed the
> correct NVMe suspend process.
Thanks for the patch. Before I can do anything, this needs:
- Subject line in style of the file (use "git log --oneline
drivers/pci/quirks.c").
- Format commit log correctly (fill 75 columns, no leading spaces).
- Description of incorrect behavior. What does the user see? If
there's a bug report, include a link to it.
- Multi-line code comments in style of the file (look at existing
comments in the file).
- Details of "the correct ASPM state". ASPM may be enabled or
disabled by the user, so you can't assume any particular ASPM
configuration.
- Details on the Qualcomm sc7280 connection. This quirk would
affect Phison SSDs on *all* platforms, not just sc7280. I don't
want to slow down suspend on all platforms just for a sc7280
issue.
- Drop the "until Qualcomm fixes NVMe suspend" text. Even if
Qualcomm fixes something, we can't just drop this quirk because
there will be platforms in the field that don't have the Qualcomm
fix.
Bjorn
> Signed-off-by: Owen Yang <ecs.taipeikernel@...il.com>
> ---
>
> drivers/pci/quirks.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index f4e2a88729fd..b57876dc2624 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -5945,6 +5945,16 @@ static void nvidia_ion_ahci_fixup(struct pci_dev *pdev)
> }
> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);
>
> +/* In Qualcomm 7c gen 3 sc7280 platform. Some of the SSD won't enter
> + * the correct ASPM state properly. Therefore. Implement this workaround
> + * until Qualcomm fixed the correct NVMe suspend process*/
> +static void phison_suspend_fixup(struct pci_dev *pdev)
> +{
> + msleep(30);
> +}
> +DECLARE_PCI_FIXUP_SUSPEND(0x1987, 0x5013, phison_suspend_fixup);
> +DECLARE_PCI_FIXUP_SUSPEND(0x1987, 0x5015, phison_suspend_fixup);
> +
> static void rom_bar_overlap_defect(struct pci_dev *dev)
> {
> pci_info(dev, "working around ROM BAR overlap defect\n");
> --
> 2.17.1
>
Powered by blists - more mailing lists