All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: srinivas.kandagatla@linaro.org
Cc: Stanimir Varbanov <svarbanov@mm-sol.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	linux-pci@vger.kernel.org, linux-arm-msm@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] PCI: dwc: qcom: limit TPL size to 2K to fix hw issue
Date: Sun, 2 Jul 2017 16:42:54 -0500	[thread overview]
Message-ID: <20170702214254.GG18324@bhelgaas-glaptop.roam.corp.google.com> (raw)
In-Reply-To: <20170629153455.11995-1-srinivas.kandagatla@linaro.org>

On Thu, Jun 29, 2017 at 05:34:55PM +0200, srinivas.kandagatla@linaro.org wrote:
> From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
> 
> This patch limits TPL size to 2K from default 4K size as a workaround
> for a HW bug in v0 version of pcie IP. When using default TPL size of 4K
> the internal buffer gets corrupted due to this HW bug.
> 
> This bug was originally noticed during ssh session between APQ8064
> based board and PC. Network packets got corrupted randomly and
> terminated the ssh session due to this bug.
> 
> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>

Applied to pci/host-qcom for v4.13, thanks!

> ---
>  drivers/pci/dwc/pcie-qcom.c | 13 +++++++++++++
>  1 file changed, 13 insertions(+)
> 
> diff --git a/drivers/pci/dwc/pcie-qcom.c b/drivers/pci/dwc/pcie-qcom.c
> index 5bf23d432fdb..28ba5192a21d 100644
> --- a/drivers/pci/dwc/pcie-qcom.c
> +++ b/drivers/pci/dwc/pcie-qcom.c
> @@ -51,6 +51,12 @@
>  #define PCIE20_ELBI_SYS_CTRL			0x04
>  #define PCIE20_ELBI_SYS_CTRL_LT_ENABLE		BIT(0)
>  
> +#define PCIE20_AXI_MSTR_RESP_COMP_CTRL0		0x818
> +#define CFG_REMOTE_RD_REQ_BRIDGE_SIZE_2K	0x4
> +#define CFG_REMOTE_RD_REQ_BRIDGE_SIZE_4K	0x5
> +#define PCIE20_AXI_MSTR_RESP_COMP_CTRL1		0x81c
> +#define CFG_BRIDGE_SB_INIT			BIT(0)
> +
>  #define PCIE20_CAP				0x70
>  
>  #define PERST_DELAY_US				1000
> @@ -357,6 +363,13 @@ static int qcom_pcie_init_v0(struct qcom_pcie *pcie)
>  	/* wait for clock acquisition */
>  	usleep_range(1000, 1500);
>  
> +
> +	/* Set the Max TLP size to 2K, instead of using default of 4K */
> +	writel(CFG_REMOTE_RD_REQ_BRIDGE_SIZE_2K,
> +	       pci->dbi_base + PCIE20_AXI_MSTR_RESP_COMP_CTRL0);
> +	writel(CFG_BRIDGE_SB_INIT,
> +	       pci->dbi_base + PCIE20_AXI_MSTR_RESP_COMP_CTRL1);
> +
>  	return 0;
>  
>  err_deassert_ahb:
> -- 
> 2.11.0
> 

      reply	other threads:[~2017-07-02 21:42 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-29 15:34 [PATCH] PCI: dwc: qcom: limit TPL size to 2K to fix hw issue srinivas.kandagatla
2017-07-02 21:42 ` Bjorn Helgaas [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=20170702214254.GG18324@bhelgaas-glaptop.roam.corp.google.com \
    --to=helgaas@kernel.org \
    --cc=bhelgaas@google.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=svarbanov@mm-sol.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 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.