All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lorenzo Pieralisi <lpieralisi@kernel.org>
To: Ajay Agarwal <ajayagarwal@google.com>
Cc: "Jingoo Han" <jingoohan1@gmail.com>,
	"Gustavo Pimentel" <gustavo.pimentel@synopsys.com>,
	"Krzysztof Wilczyński" <kw@linux.com>,
	"Rob Herring" <robh@kernel.org>,
	nikhilnd@google.com, manugautam@google.com,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	linux-pci@vger.kernel.org
Subject: Re: [PATCH] PCI: dwc: Allow platform driver to skip the wait for link
Date: Wed, 5 Apr 2023 15:33:58 +0200	[thread overview]
Message-ID: <ZC14xhSc9e9nt72k@lpieralisi> (raw)
In-Reply-To: <20230404174141.4091634-1-ajayagarwal@google.com>

On Tue, Apr 04, 2023 at 11:11:41PM +0530, Ajay Agarwal wrote:
> Currently as a part of device probe, the driver waits for the
> link to come up for up to 1 second. If the link training is not
> enabled by default or as a part of host_init, then this wait for
> the link can be skipped to save the 1 second of wait time.
> 
> Allow the platform driver to skip this wait for the link up by
> setting a flag `skip_wait_for_link`. This flag will be false by
> default, thereby preserving the legacy behavior for existing
> platform drivers.
> 
> Signed-off-by: Ajay Agarwal <ajayagarwal@google.com>
> ---
>  drivers/pci/controller/dwc/pcie-designware-host.c | 9 +++++++--
>  drivers/pci/controller/dwc/pcie-designware.h      | 1 +
>  2 files changed, 8 insertions(+), 2 deletions(-)

A previous patch handles this change, dropping this one,
please chime in in this thread if needed:

https://lore.kernel.org/linux-pci/ZC12lN9Cs0QlPhVh@lpieralisi

> 
> diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
> index 9952057c8819..3425eb17b467 100644
> --- a/drivers/pci/controller/dwc/pcie-designware-host.c
> +++ b/drivers/pci/controller/dwc/pcie-designware-host.c
> @@ -491,8 +491,13 @@ int dw_pcie_host_init(struct dw_pcie_rp *pp)
>  			goto err_remove_edma;
>  	}
>  
> -	/* Ignore errors, the link may come up later */
> -	dw_pcie_wait_for_link(pci);
> +	/*
> +	 * If the platform driver sets `skip_wait_for_link` because it knows the
> +	 * link will not be up, do not wait for it. Save 1 sec of wait time.
> +	 * Else, test for the link. Ignore errors, the link may come up later
> +	 */
> +	if (!pp->skip_wait_for_link)
> +		dw_pcie_wait_for_link(pci);
>  
>  	bridge->sysdata = pp;
>  
> diff --git a/drivers/pci/controller/dwc/pcie-designware.h b/drivers/pci/controller/dwc/pcie-designware.h
> index 79713ce075cc..f8f6dad5c948 100644
> --- a/drivers/pci/controller/dwc/pcie-designware.h
> +++ b/drivers/pci/controller/dwc/pcie-designware.h
> @@ -297,6 +297,7 @@ struct dw_pcie_host_ops {
>  struct dw_pcie_rp {
>  	bool			has_msi_ctrl:1;
>  	bool			cfg0_io_shared:1;
> +	bool			skip_wait_for_link:1;
>  	u64			cfg0_base;
>  	void __iomem		*va_cfg0_base;
>  	u32			cfg0_size;
> -- 
> 2.40.0.348.gf938b09366-goog
> 

      reply	other threads:[~2023-04-05 13:34 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-04 17:41 [PATCH] PCI: dwc: Allow platform driver to skip the wait for link Ajay Agarwal
2023-04-05 13:33 ` Lorenzo Pieralisi [this message]

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=ZC14xhSc9e9nt72k@lpieralisi \
    --to=lpieralisi@kernel.org \
    --cc=ajayagarwal@google.com \
    --cc=bhelgaas@google.com \
    --cc=gustavo.pimentel@synopsys.com \
    --cc=jingoohan1@gmail.com \
    --cc=kw@linux.com \
    --cc=linux-pci@vger.kernel.org \
    --cc=manugautam@google.com \
    --cc=nikhilnd@google.com \
    --cc=robh@kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.