[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <t7urbtpoy26muvqnvebdctm7545pllly44bymimy7wtazcd7gj@mofvna4v5sd3>
Date: Mon, 7 Apr 2025 23:21:05 +0530
From: Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
To: "Wenbin Yao (Consultant)" <quic_wenbyao@...cinc.com>
Cc: jingoohan1@...il.com, lpieralisi@...nel.org, kw@...ux.com,
robh@...nel.org, bhelgaas@...gle.com, linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org, quic_cang@...cinc.com, mrana@...cinc.com,
yuqiang <quic_qianyu@...cinc.com>
Subject: Re: [PATCH] PCI: dwc: Set PORT_LOGIC_LINK_WIDTH to one lane
On Thu, Dec 12, 2024 at 04:19:12PM +0800, Wenbin Yao (Consultant) wrote:
> PORT_LOGIC_LINK_WIDTH field of the PCIE_LINK_WIDTH_SPEED_CONTROL register
> indicates the number of lanes to check for exit from Electrical Idle in
> Polling.Active and L2.Idle. It is used to limit the effective link width to
> ignore broken or unused lanes that detect a receiver to prevent one or more
> bad Receivers or Transmitters from holding up a valid Link from being
> configured.
>
> In a PCIe link that support muiltiple lanes, setting PORT_LOGIC_LINK_WIDTH
> to 1 will not affect the link width that is actually intended to be used.
Where in the spec it is defined?
> But setting it to a value other than 1 will lead to link training fail if
> one or more lanes are broken.
>
Which means the link partner is not able to downsize the link during LTSSM?
> Hence, always set PORT_LOGIC_LINK_WIDTH to 1 no matter how many lanes the
> port actually supports to make linking up more robust. Link can still be
> established with one lane at least if other lanes are broken.
>
This looks like a specific endpoint/controller issue to me. Where exactly did
you see the issue?
- Mani
--
மணிவண்ணன் சதாசிவம்
Powered by blists - more mailing lists