Message ID | 20210504172157.29712-1-vidyas@nvidia.com |
---|---|
State | Not Applicable |
Headers | show |
Series | PCI: tegra: Fix host initialization during resume | expand |
On 04/05/2021 18:21, Vidya Sagar wrote: > Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke > host initialization during resume as it misses out calling the API > dw_pcie_setup_rc() which is required for host and MSI initialization. > > Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") > Signed-off-by: Vidya Sagar <vidyas@nvidia.com> > --- > drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c > index 6fa216e52d14..4c3c0738f2e6 100644 > --- a/drivers/pci/controller/dwc/pcie-tegra194.c > +++ b/drivers/pci/controller/dwc/pcie-tegra194.c > @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) > goto fail_host_init; > } > > + dw_pcie_setup_rc(&pcie->pci.pp); > + > ret = tegra_pcie_dw_start_link(&pcie->pci); > if (ret < 0) > goto fail_host_init; > Thanks for fixing! Tested-by: Jon Hunter <jonathanh@nvidia.com> We should also mark this for stable so that this gets back-ported. Jon
Hi Lorenzo, Bjorn, On 06/05/2021 09:49, Jon Hunter wrote: > > On 04/05/2021 18:21, Vidya Sagar wrote: >> Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke >> host initialization during resume as it misses out calling the API >> dw_pcie_setup_rc() which is required for host and MSI initialization. >> >> Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") >> Signed-off-by: Vidya Sagar <vidyas@nvidia.com> >> --- >> drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c >> index 6fa216e52d14..4c3c0738f2e6 100644 >> --- a/drivers/pci/controller/dwc/pcie-tegra194.c >> +++ b/drivers/pci/controller/dwc/pcie-tegra194.c >> @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) >> goto fail_host_init; >> } >> >> + dw_pcie_setup_rc(&pcie->pci.pp); >> + >> ret = tegra_pcie_dw_start_link(&pcie->pci); >> if (ret < 0) >> goto fail_host_init; >> > > > Thanks for fixing! > > Tested-by: Jon Hunter <jonathanh@nvidia.com> > > We should also mark this for stable so that this gets back-ported. Can we queue this as a fix for v5.13 and tag for stable? Thanks! Jon
On Mon, May 17, 2021 at 03:11:00PM +0100, Jon Hunter wrote: > Hi Lorenzo, Bjorn, > > On 06/05/2021 09:49, Jon Hunter wrote: > > > > On 04/05/2021 18:21, Vidya Sagar wrote: > >> Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke > >> host initialization during resume as it misses out calling the API > >> dw_pcie_setup_rc() which is required for host and MSI initialization. > >> > >> Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") > >> Signed-off-by: Vidya Sagar <vidyas@nvidia.com> > >> --- > >> drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c > >> index 6fa216e52d14..4c3c0738f2e6 100644 > >> --- a/drivers/pci/controller/dwc/pcie-tegra194.c > >> +++ b/drivers/pci/controller/dwc/pcie-tegra194.c > >> @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) > >> goto fail_host_init; > >> } > >> > >> + dw_pcie_setup_rc(&pcie->pci.pp); > >> + > >> ret = tegra_pcie_dw_start_link(&pcie->pci); > >> if (ret < 0) > >> goto fail_host_init; > >> > > > > > > Thanks for fixing! > > > > Tested-by: Jon Hunter <jonathanh@nvidia.com> > > > > We should also mark this for stable so that this gets back-ported. > > > Can we queue this as a fix for v5.13 and tag for stable? We usually send fixes for -rc* when the patches they are fixing were merged in the current cycle (ie merged for v5.13). This is not the case so I shall send it for v5.14. Lorenzo
On Mon, May 17, 2021 at 05:18:36PM +0100, Lorenzo Pieralisi wrote: > On Mon, May 17, 2021 at 03:11:00PM +0100, Jon Hunter wrote: > > Hi Lorenzo, Bjorn, > > > > On 06/05/2021 09:49, Jon Hunter wrote: > > > > > > On 04/05/2021 18:21, Vidya Sagar wrote: > > >> Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke > > >> host initialization during resume as it misses out calling the API > > >> dw_pcie_setup_rc() which is required for host and MSI initialization. > > >> > > >> Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") > > >> Signed-off-by: Vidya Sagar <vidyas@nvidia.com> > > >> --- > > >> drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ > > >> 1 file changed, 2 insertions(+) > > >> > > >> diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c > > >> index 6fa216e52d14..4c3c0738f2e6 100644 > > >> --- a/drivers/pci/controller/dwc/pcie-tegra194.c > > >> +++ b/drivers/pci/controller/dwc/pcie-tegra194.c > > >> @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) > > >> goto fail_host_init; > > >> } > > >> > > >> + dw_pcie_setup_rc(&pcie->pci.pp); > > >> + > > >> ret = tegra_pcie_dw_start_link(&pcie->pci); > > >> if (ret < 0) > > >> goto fail_host_init; > > > > > > Thanks for fixing! > > > > > > Tested-by: Jon Hunter <jonathanh@nvidia.com> > > > > > > We should also mark this for stable so that this gets back-ported. > > > > Can we queue this as a fix for v5.13 and tag for stable? > > We usually send fixes for -rc* when the patches they are fixing > were merged in the current cycle (ie merged for v5.13). Looks like this has been broken since v5.11-rc1 (December 27, 2020), when 275e88b06a27 was merged. Probably would be worth an occasional boot test to make sure things stay working. > This is not the case so I shall send it for v5.14. > > Lorenzo
On 17/05/2021 17:47, Bjorn Helgaas wrote: > On Mon, May 17, 2021 at 05:18:36PM +0100, Lorenzo Pieralisi wrote: >> On Mon, May 17, 2021 at 03:11:00PM +0100, Jon Hunter wrote: >>> Hi Lorenzo, Bjorn, >>> >>> On 06/05/2021 09:49, Jon Hunter wrote: >>>> >>>> On 04/05/2021 18:21, Vidya Sagar wrote: >>>>> Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke >>>>> host initialization during resume as it misses out calling the API >>>>> dw_pcie_setup_rc() which is required for host and MSI initialization. >>>>> >>>>> Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") >>>>> Signed-off-by: Vidya Sagar <vidyas@nvidia.com> >>>>> --- >>>>> drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ >>>>> 1 file changed, 2 insertions(+) >>>>> >>>>> diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c >>>>> index 6fa216e52d14..4c3c0738f2e6 100644 >>>>> --- a/drivers/pci/controller/dwc/pcie-tegra194.c >>>>> +++ b/drivers/pci/controller/dwc/pcie-tegra194.c >>>>> @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) >>>>> goto fail_host_init; >>>>> } >>>>> >>>>> + dw_pcie_setup_rc(&pcie->pci.pp); >>>>> + >>>>> ret = tegra_pcie_dw_start_link(&pcie->pci); >>>>> if (ret < 0) >>>>> goto fail_host_init; >>>> >>>> Thanks for fixing! >>>> >>>> Tested-by: Jon Hunter <jonathanh@nvidia.com> >>>> >>>> We should also mark this for stable so that this gets back-ported. >>> >>> Can we queue this as a fix for v5.13 and tag for stable? >> >> We usually send fixes for -rc* when the patches they are fixing >> were merged in the current cycle (ie merged for v5.13). > > Looks like this has been broken since v5.11-rc1 (December 27, 2020), > when 275e88b06a27 was merged. Probably would be worth an occasional > boot test to make sure things stay working. Yes exactly it has been broken for a while and unfortunately went unnoticed. We do boot test -next, mainline and the various stable branches on our Tegra boards daily. The boot test did not catch this, but there is a error generated when resuming from suspend and I am working to ensure we catch such errors when resuming from suspend. Cheers Jon
On Tue, 4 May 2021 22:51:57 +0530, Vidya Sagar wrote: > Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke > host initialization during resume as it misses out calling the API > dw_pcie_setup_rc() which is required for host and MSI initialization. Applied to pci/tegra, thanks! [1/1] PCI: tegra: Fix host initialization during resume https://git.kernel.org/lpieralisi/pci/c/d0180ba464 Thanks, Lorenzo
diff --git a/drivers/pci/controller/dwc/pcie-tegra194.c b/drivers/pci/controller/dwc/pcie-tegra194.c index 6fa216e52d14..4c3c0738f2e6 100644 --- a/drivers/pci/controller/dwc/pcie-tegra194.c +++ b/drivers/pci/controller/dwc/pcie-tegra194.c @@ -2214,6 +2214,8 @@ static int tegra_pcie_dw_resume_noirq(struct device *dev) goto fail_host_init; } + dw_pcie_setup_rc(&pcie->pci.pp); + ret = tegra_pcie_dw_start_link(&pcie->pci); if (ret < 0) goto fail_host_init;
Commit 275e88b06a27 ("PCI: tegra: Fix host link initialization") broke host initialization during resume as it misses out calling the API dw_pcie_setup_rc() which is required for host and MSI initialization. Fixes: 275e88b06a27 ("PCI: tegra: Fix host link initialization") Signed-off-by: Vidya Sagar <vidyas@nvidia.com> --- drivers/pci/controller/dwc/pcie-tegra194.c | 2 ++ 1 file changed, 2 insertions(+)