All of lore.kernel.org
 help / color / mirror / Atom feed
From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
To: Krishna Chaitanya Chundru <quic_krichai@quicinc.com>
Cc: quic_vbadigan@quicinc.com, quic_ramkri@quicinc.com,
	linux-arm-msm@vger.kernel.org, konrad.dybcio@linaro.org,
	"Manivannan Sadhasivam" <mani@kernel.org>,
	"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
	"Krzysztof Wilczyński" <kw@linux.com>,
	"Rob Herring" <robh@kernel.org>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"open list:PCIE ENDPOINT DRIVER FOR QUALCOMM"
	<linux-pci@vger.kernel.org>,
	"open list" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v4 3/3] PCI: qcom-ep: Add ICC bandwidth voting support
Date: Tue, 27 Jun 2023 19:16:48 +0530	[thread overview]
Message-ID: <20230627134648.GD5490@thinkpad> (raw)
In-Reply-To: <9495a254-a219-fdd8-2c6e-ac147075813e@quicinc.com>

On Tue, Jun 27, 2023 at 06:33:01AM +0530, Krishna Chaitanya Chundru wrote:
> 
> On 6/23/2023 11:04 AM, Manivannan Sadhasivam wrote:
> > On Wed, Jun 14, 2023 at 07:54:26PM +0530, Krishna chaitanya chundru wrote:
> > > Add support to vote for ICC bandwidth based on the link
> > > speed and width.
> > > 
> > > This patch is inspired from pcie-qcom driver to add basic
> > > interconnect support.
> > > 
> > > Reference: commit c4860af88d0c ("PCI: qcom: Add basic interconnect
> > > support").
> > > Signed-off-by: Krishna chaitanya chundru <quic_krichai@quicinc.com>
> > > ---
> > >   drivers/pci/controller/dwc/pcie-qcom-ep.c | 73 +++++++++++++++++++++++++++++++
> > >   1 file changed, 73 insertions(+)
> > > 
> > > diff --git a/drivers/pci/controller/dwc/pcie-qcom-ep.c b/drivers/pci/controller/dwc/pcie-qcom-ep.c
> > > index 19b3283..5d146ec 100644
> > > --- a/drivers/pci/controller/dwc/pcie-qcom-ep.c
> > > +++ b/drivers/pci/controller/dwc/pcie-qcom-ep.c

[...]

> > > +	/*
> > > +	 * Some Qualcomm platforms require interconnect bandwidth constraints
> > > +	 * to be set before enabling interconnect clocks.
> > > +	 *
> > > +	 * Set an initial average bandwidth corresponding to GEN1x1
> > Keep the comment same as the other driver.
> done
> > > +	 * for the pcie to mem path.
> > > +	 */
> > > +	ret = icc_set_bw(pcie_ep->icc_mem, 0, MBps_to_icc(PCIE_GEN1_BW_MBPS));
> > > +	if (ret) {
> > > +		dev_err(pci->dev, "failed to set interconnect bandwidth: %d\n",
> > > +			ret);
> > > +		goto err_phy_exit;
> > PHY should be powered off in the case of error.
> > 
> > Rest looks good.
> > 
> > - Mani
> 
> For platforms which need ICC it is must to vote for interconnect so better
> to power off in case of error.
> 

That's what I'm also suggesting. Currently used err_phy_exit path doesn't power
off the PHY.

- Mani

> -KC
> 
> > > +	}
> > > +
> > >   	return 0;
> > >   err_phy_exit:
> > > @@ -550,6 +618,10 @@ static int qcom_pcie_ep_get_resources(struct platform_device *pdev,
> > >   	if (IS_ERR(pcie_ep->phy))
> > >   		ret = PTR_ERR(pcie_ep->phy);
> > > +	pcie_ep->icc_mem = devm_of_icc_get(dev, "pcie-mem");
> > > +	if (IS_ERR(pcie_ep->icc_mem))
> > > +		ret = PTR_ERR(pcie_ep->icc_mem);
> > > +
> > >   	return ret;
> > >   }
> > > @@ -572,6 +644,7 @@ static irqreturn_t qcom_pcie_ep_global_irq_thread(int irq, void *data)
> > >   	} else if (FIELD_GET(PARF_INT_ALL_BME, status)) {
> > >   		dev_dbg(dev, "Received BME event. Link is enabled!\n");
> > >   		pcie_ep->link_status = QCOM_PCIE_EP_LINK_ENABLED;
> > > +		qcom_pcie_ep_icc_update(pcie_ep);
> > >   	} else if (FIELD_GET(PARF_INT_ALL_PM_TURNOFF, status)) {
> > >   		dev_dbg(dev, "Received PM Turn-off event! Entering L23\n");
> > >   		val = readl_relaxed(pcie_ep->parf + PARF_PM_CTRL);
> > > -- 
> > > 2.7.4
> > > 

-- 
மணிவண்ணன் சதாசிவம்

  reply	other threads:[~2023-06-27 13:47 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-14 14:24 [PATCH v4 0/3] PCI: qcom: ep: Add basic interconnect support Krishna chaitanya chundru
2023-06-14 14:24 ` [PATCH v4 1/3] dt-bindings: PCI: qcom: ep: Add interconnects path Krishna chaitanya chundru
2023-06-15  8:38   ` Krzysztof Kozlowski
2023-06-14 14:24 ` [PATCH v4 2/3] arm: dts: qcom: sdx55: Add interconnect path Krishna chaitanya chundru
2023-06-14 14:24 ` [PATCH v4 3/3] PCI: qcom-ep: Add ICC bandwidth voting support Krishna chaitanya chundru
2023-06-23  5:34   ` Manivannan Sadhasivam
2023-06-27  1:03     ` Krishna Chaitanya Chundru
2023-06-27 13:46       ` Manivannan Sadhasivam [this message]
2023-06-14 16:03 ` (subset) [PATCH v4 0/3] PCI: qcom: ep: Add basic interconnect support Bjorn Andersson

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=20230627134648.GD5490@thinkpad \
    --to=manivannan.sadhasivam@linaro.org \
    --cc=bhelgaas@google.com \
    --cc=konrad.dybcio@linaro.org \
    --cc=kw@linux.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    --cc=mani@kernel.org \
    --cc=quic_krichai@quicinc.com \
    --cc=quic_ramkri@quicinc.com \
    --cc=quic_vbadigan@quicinc.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.