Re: [PATCH] Revert "PCI: dwc: Wait for link up only if link is started"

From: Johan Hovold
Date: Fri Jul 07 2023 - 08:47:37 EST


On Thu, Jul 06, 2023 at 06:28:11PM +0530, Manivannan Sadhasivam wrote:
> On Thu, Jul 06, 2023 at 10:26:10AM +0200, Johan Hovold wrote:

> > Finally, note that the intel-gw driver is the only driver currently not
> > providing a start_link callback and instead starts the link in its
> > host_init callback, and which may avoid an additional one-second timeout
> > during probe by making the link-up wait conditional. If anyone cares,
> > that can be done in a follow-up patch with a proper motivation.

> The offending commit is bogus since it makes the intel-gw _special_ w.r.t
> waiting for the link up. Most of the drivers call dw_pcie_host_init() during the
> probe time and they all have to wait for 1 sec if the slot is empty.

Just to clarify, the intel-gw driver starts the link and waits for link
up in its host_init() callback, which is called during probe. That wait
could possibly just be dropped in favour of the one in
dw_pcie_host_init() and/or the driver could be reworked to implement
start_link().

Either way, the call in dw_pcie_host_init() will only add an additional
1 second delay in cases where the link did *not* come up.

> As Johan noted, intel-gw should make use of the async probe to avoid the boot
> delay instead of adding a special case.

Indeed.

Johan