Commit 8d3bf19f authored by Krishna chaitanya chundru's avatar Krishna chaitanya chundru Committed by Bjorn Helgaas
Browse files

PCI: dwc: Don't wait for link up if driver can detect Link Up event

If the driver can detect the Link Up event and enumerate downstream devices
at that time, we need not wait here.

Skip waiting for link to come up if the driver supports 'use_linkup_irq'.

Link: https://lore.kernel.org/r/20241123-remove_wait2-v5-1-b5f9e6b794c2@quicinc.com


Signed-off-by: default avatarKrishna chaitanya chundru <quic_krichai@quicinc.com>
Signed-off-by: default avatarKrzysztof Wilczyński <kwilczynski@kernel.org>
[bhelgaas: wrap comment, update commit log]
Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
Reviewed-by: default avatarManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: default avatarNiklas Cassel <cassel@kernel.org>
parent 574913f9
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -530,6 +530,12 @@ int dw_pcie_host_init(struct dw_pcie_rp *pp)
			goto err_remove_edma;
	}

	/*
	 * Note: Skip the link up delay only when a Link Up IRQ is present.
	 * If there is no Link Up IRQ, we should not bypass the delay
	 * because that would require users to manually rescan for devices.
	 */
	if (!pp->use_linkup_irq)
		/* Ignore errors, the link may come up later */
		dw_pcie_wait_for_link(pci);

+1 −0
Original line number Diff line number Diff line
@@ -379,6 +379,7 @@ struct dw_pcie_rp {
	bool			use_atu_msg;
	int			msg_atu_index;
	struct resource		*msg_res;
	bool			use_linkup_irq;
};

struct dw_pcie_ep_ops {