From: Shawn Lin <shawn.lin@rock-chips.com>
To: Manivannan Sadhasivam <mani@kernel.org>
Cc: shawn.lin@rock-chips.com, manivannan.sadhasivam@oss.qualcomm.com,
"Jingoo Han" <jingoohan1@gmail.com>,
"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
"Rob Herring" <robh@kernel.org>,
"Bjorn Helgaas" <bhelgaas@google.com>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
vincent.guittot@linaro.org, zhangsenchuan@eswincomputing.com,
"Richard Zhu" <hongxing.zhu@nxp.com>
Subject: Re: [PATCH v4 3/6] PCI: dwc: Rework the error print of dw_pcie_wait_for_link()
Date: Wed, 7 Jan 2026 17:28:07 +0800 [thread overview]
Message-ID: <6662785c-7912-4e58-a5b2-613ddac419c0@rock-chips.com> (raw)
In-Reply-To: <gtgvh7bxfsm7xoigg7tiqs7n42gnfbxsa4aqxtupqnr6ihxswn@gk7dcw2zbh7x>
在 2026/01/07 星期三 17:09, Manivannan Sadhasivam 写道:
> On Wed, Jan 07, 2026 at 04:38:14PM +0800, Shawn Lin wrote:
>> 在 2026/01/07 星期三 16:11, Manivannan Sadhasivam via B4 Relay 写道:
>>> From: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
>>>
>>> If the link fails to come up even after detecting the device on the bus
>>> i.e., if the LTSSM is not in Detect.Quiet and Detect.Active states, then
>>> dw_pcie_wait_for_link() should log it as an error.
>>>
>>> So promote dev_info() to dev_err(), reword the error log to make it clear
>>> and also print the LTSSM state to aid debugging.
>>
>> LTSSM might still be changing, so not sure how much value it would be
>> to print it at a singal moment, but anyway
>>
>
> It is very unlikely that the LTSSM would be changing after the 1s timeout.
> Printing the state will allow debugging the link up failure.
>
Most cases, yes. But I saw some reports that the LTSSM is stiling
changing between RCVRY_* and CFG_* when supporting customers. Especially
a buggy card I remembered, which sends some hot reset immediately after
link comes up. If it misses the first 1s wait for link check, then we
could see ltssm changing here. But better than nothing, keeps a log here
isn't a big deal I think. :)
> - Mani
>
>> Reviewed-by: Shawn Lin <shawn.lin@rock-chips.com>
>>
>>>
>>> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
>>> ---
>>> drivers/pci/controller/dwc/pcie-designware.c | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/pci/controller/dwc/pcie-designware.c b/drivers/pci/controller/dwc/pcie-designware.c
>>> index 87f2ebc134d6..c2dfadc53d04 100644
>>> --- a/drivers/pci/controller/dwc/pcie-designware.c
>>> +++ b/drivers/pci/controller/dwc/pcie-designware.c
>>> @@ -776,7 +776,8 @@ int dw_pcie_wait_for_link(struct dw_pcie *pci)
>>> return -ENODEV;
>>> }
>>> - dev_info(pci->dev, "Phy link never came up\n");
>>> + dev_err(pci->dev, "Link failed to come up. LTSSM: %s\n",
>>> + dw_pcie_ltssm_status_string(ltssm));
>>> return -ETIMEDOUT;
>>> }
>>>
>>
>
next prev parent reply other threads:[~2026-01-07 9:43 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-07 8:11 [PATCH v4 0/6] PCI: dwc: Rework the error handling of dw_pcie_wait_for_link() API Manivannan Sadhasivam via B4 Relay
2026-01-07 8:11 ` [PATCH v4 1/6] PCI: dwc: Return -ENODEV from dw_pcie_wait_for_link() if device is not found Manivannan Sadhasivam via B4 Relay
2026-01-07 8:34 ` Shawn Lin
2026-01-07 8:11 ` [PATCH v4 2/6] PCI: dwc: Rename and move ltssm_status_string() to pcie-designware.c Manivannan Sadhasivam via B4 Relay
2026-01-07 8:35 ` Shawn Lin
2026-01-07 8:11 ` [PATCH v4 3/6] PCI: dwc: Rework the error print of dw_pcie_wait_for_link() Manivannan Sadhasivam via B4 Relay
2026-01-07 8:38 ` Shawn Lin
2026-01-07 9:09 ` Manivannan Sadhasivam
2026-01-07 9:28 ` Shawn Lin [this message]
2026-01-07 8:11 ` [PATCH v4 4/6] PCI: dwc: Only skip the dw_pcie_wait_for_link() failure if it returns -ENODEV Manivannan Sadhasivam via B4 Relay
2026-01-07 8:38 ` Shawn Lin
2026-01-07 8:11 ` [PATCH v4 5/6] PCI: host-common: Add an API to check for any device under the Root Ports Manivannan Sadhasivam via B4 Relay
2026-01-07 8:39 ` Shawn Lin
2026-01-07 8:11 ` [PATCH v4 6/6] PCI: dwc: Skip failure during dw_pcie_resume_noirq() if no device is available Manivannan Sadhasivam via B4 Relay
2026-01-07 8:41 ` Shawn Lin
2026-01-13 17:53 ` [PATCH v4 0/6] PCI: dwc: Rework the error handling of dw_pcie_wait_for_link() API Vincent Guittot
2026-01-16 1:36 ` Hongxing Zhu
2026-10-13 9:15 ` Franz Schnyder
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=6662785c-7912-4e58-a5b2-613ddac419c0@rock-chips.com \
--to=shawn.lin@rock-chips.com \
--cc=bhelgaas@google.com \
--cc=hongxing.zhu@nxp.com \
--cc=jingoohan1@gmail.com \
--cc=kwilczynski@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mani@kernel.org \
--cc=manivannan.sadhasivam@oss.qualcomm.com \
--cc=robh@kernel.org \
--cc=vincent.guittot@linaro.org \
--cc=zhangsenchuan@eswincomputing.com \
/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
all inboxes | Powered by JetHome®