From: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: lpieralisi@kernel.org, kw@linux.com, bhelgaas@google.com,
robh@kernel.org, gustavo.pimentel@synopsys.com,
jingoohan1@gmail.com, andersson@kernel.org,
konrad.dybcio@linaro.org, linux-pci@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH v2 1/2] PCI: dwc: Add host_post_init() callback
Date: Tue, 17 Oct 2023 13:29:52 +0530 [thread overview]
Message-ID: <20231017075952.GC5274@thinkpad> (raw)
In-Reply-To: <20231016205849.GA1225381@bhelgaas>
On Mon, Oct 16, 2023 at 03:58:49PM -0500, Bjorn Helgaas wrote:
> On Tue, Oct 10, 2023 at 09:29:13PM +0530, Manivannan Sadhasivam wrote:
> > This callback can be used by the platform drivers to do configuration once
> > all the devices are scanned. Like changing LNKCTL of all downstream devices
> > to enable ASPM etc...
> >
> > Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
> > ---
> > drivers/pci/controller/dwc/pcie-designware-host.c | 3 +++
> > drivers/pci/controller/dwc/pcie-designware.h | 1 +
> > 2 files changed, 4 insertions(+)
> >
> > diff --git a/drivers/pci/controller/dwc/pcie-designware-host.c b/drivers/pci/controller/dwc/pcie-designware-host.c
> > index a7170fd0e847..7991f0e179b2 100644
> > --- a/drivers/pci/controller/dwc/pcie-designware-host.c
> > +++ b/drivers/pci/controller/dwc/pcie-designware-host.c
> > @@ -502,6 +502,9 @@ int dw_pcie_host_init(struct dw_pcie_rp *pp)
> > if (ret)
> > goto err_stop_link;
> >
> > + if (pp->ops->host_post_init)
> > + pp->ops->host_post_init(pp);
>
> I know we talked about this a little bit in the context of enabling
> ASPM for devices below qcom 1.9.0 controllers at
> https://lore.kernel.org/r/20231011050058.GC3508@thinkpad
>
> But I didn't realize at the time that this callback adds a fundamental
> difference between devices present at boot-time (these devices can be
> affected by this callback) and any devices hot-added later (we never
> run this callback again, so anything done by .host_post_init() never
> applies to them).
>
> We merged this for now, and it helps enable ASPM for builtin devices
> on qcom, but I don't feel good about this from a larger DWC
> perspective. If other drivers use this and they support hot-add, I
> think we're going to have problems.
>
If someone is going to add same ASPM code in host_post_init() callback, they
will most likely aware of the hotplug issue. I see this as an interim solution
overall and we should fix the PCI core to handle this. But I do not see any
straightforward way to enable ASPM by default in PCI core as the misbehaving
devices can pull the system down (atleast in some x86 cases).
- Mani
--
மணிவண்ணன் சதாசிவம்
next prev parent reply other threads:[~2023-10-17 8:00 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-10 15:59 [PATCH v2 0/2] PCI: qcom: Enable ASPM on host bridge and devices Manivannan Sadhasivam
2023-10-10 15:59 ` [PATCH v2 1/2] PCI: dwc: Add host_post_init() callback Manivannan Sadhasivam
2023-10-16 20:58 ` Bjorn Helgaas
2023-10-17 7:59 ` Manivannan Sadhasivam [this message]
2023-10-18 16:47 ` Bjorn Helgaas
2023-10-10 15:59 ` [PATCH v2 2/2] PCI: qcom: Enable ASPM for platforms supporting 1.9.0 ops Manivannan Sadhasivam
2023-10-10 16:29 ` Bjorn Helgaas
2023-10-11 5:00 ` Manivannan Sadhasivam
2023-10-10 16:33 ` Konrad Dybcio
2023-10-11 5:03 ` Manivannan Sadhasivam
2023-10-10 16:25 ` [PATCH v2 0/2] PCI: qcom: Enable ASPM on host bridge and devices Konrad Dybcio
2023-10-14 20:32 ` Krzysztof Wilczyński
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=20231017075952.GC5274@thinkpad \
--to=manivannan.sadhasivam@linaro.org \
--cc=andersson@kernel.org \
--cc=bhelgaas@google.com \
--cc=gustavo.pimentel@synopsys.com \
--cc=helgaas@kernel.org \
--cc=jingoohan1@gmail.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=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.