Message ID | 1512723493-865-4-git-send-email-mmaddireddy@nvidia.com (mailing list archive) |
---|---|
State | New, archived |
Delegated to: | Bjorn Helgaas |
Headers | show |
On Fri, Dec 08, 2017 at 02:28:09PM +0530, Manikanta Maddireddy wrote: > Primary, secondary and subordinate default bus numbers are 0 in Tegra and > it is expecting SW to program these numbers in configration space. > > pci_scan_bridge_extend() function programs these numbers in configuration > space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS > flag is set. Since secondary & subordinate default bus numbers are 0, > PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. > > Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> > --- > V3: > * new patch in V3 > V4: > * no change in this patch > > drivers/pci/host/pci-tegra.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c > index a549c5899e26..0d91f1a3a6b4 100644 > --- a/drivers/pci/host/pci-tegra.c > +++ b/drivers/pci/host/pci-tegra.c > @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) > > tegra_pcie_enable_ports(pcie); > > - pci_add_flags(PCI_REASSIGN_ALL_BUS); This looks obviously OK to me but I need Thierry's ACK to queue it. Lorenzo > host->busnr = pcie->busn.start; > host->dev.parent = &pdev->dev; > host->ops = &tegra_pcie_ops; > -- > 2.1.4 >
On Fri, Dec 15, 2017 at 05:36:43PM +0000, Lorenzo Pieralisi wrote: > On Fri, Dec 08, 2017 at 02:28:09PM +0530, Manikanta Maddireddy wrote: > > Primary, secondary and subordinate default bus numbers are 0 in Tegra and > > it is expecting SW to program these numbers in configration space. > > > > pci_scan_bridge_extend() function programs these numbers in configuration > > space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS > > flag is set. Since secondary & subordinate default bus numbers are 0, > > PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. > > > > Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> > > --- > > V3: > > * new patch in V3 > > V4: > > * no change in this patch > > > > drivers/pci/host/pci-tegra.c | 1 - > > 1 file changed, 1 deletion(-) > > > > diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c > > index a549c5899e26..0d91f1a3a6b4 100644 > > --- a/drivers/pci/host/pci-tegra.c > > +++ b/drivers/pci/host/pci-tegra.c > > @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) > > > > tegra_pcie_enable_ports(pcie); > > > > - pci_add_flags(PCI_REASSIGN_ALL_BUS); > > This looks obviously OK to me but I need Thierry's ACK to queue it. Just as an additional note: I think the real reason why this is okay to do is because we reset the PCI host controller in the kernel driver, so any bus assignments done by the firmware are reset as well. Acked-by: Thierry Reding <treding@nvidia.com>
On Wed, Dec 20, 2017 at 08:30:11PM +0100, Thierry Reding wrote: > On Fri, Dec 15, 2017 at 05:36:43PM +0000, Lorenzo Pieralisi wrote: > > On Fri, Dec 08, 2017 at 02:28:09PM +0530, Manikanta Maddireddy wrote: > > > Primary, secondary and subordinate default bus numbers are 0 in Tegra and > > > it is expecting SW to program these numbers in configration space. > > > > > > pci_scan_bridge_extend() function programs these numbers in configuration > > > space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS > > > flag is set. Since secondary & subordinate default bus numbers are 0, > > > PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. > > > > > > Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> > > > --- > > > V3: > > > * new patch in V3 > > > V4: > > > * no change in this patch > > > > > > drivers/pci/host/pci-tegra.c | 1 - > > > 1 file changed, 1 deletion(-) > > > > > > diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c > > > index a549c5899e26..0d91f1a3a6b4 100644 > > > --- a/drivers/pci/host/pci-tegra.c > > > +++ b/drivers/pci/host/pci-tegra.c > > > @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) > > > > > > tegra_pcie_enable_ports(pcie); > > > > > > - pci_add_flags(PCI_REASSIGN_ALL_BUS); > > > > This looks obviously OK to me but I need Thierry's ACK to queue it. > > Just as an additional note: I think the real reason why this is okay to > do is because we reset the PCI host controller in the kernel driver, so > any bus assignments done by the firmware are reset as well. > > Acked-by: Thierry Reding <treding@nvidia.com> Thank you. This series needs rebasing, we should try to untangle the dependencies between series so that I can actually apply some of these patches that make sense on their own. Lorenzo
On Thu, Dec 21, 2017 at 10:46:30AM +0000, Lorenzo Pieralisi wrote: > On Wed, Dec 20, 2017 at 08:30:11PM +0100, Thierry Reding wrote: > > On Fri, Dec 15, 2017 at 05:36:43PM +0000, Lorenzo Pieralisi wrote: > > > On Fri, Dec 08, 2017 at 02:28:09PM +0530, Manikanta Maddireddy wrote: > > > > Primary, secondary and subordinate default bus numbers are 0 in Tegra and > > > > it is expecting SW to program these numbers in configration space. > > > > > > > > pci_scan_bridge_extend() function programs these numbers in configuration > > > > space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS > > > > flag is set. Since secondary & subordinate default bus numbers are 0, > > > > PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. > > > > > > > > Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> > > > > --- > > > > V3: > > > > * new patch in V3 > > > > V4: > > > > * no change in this patch > > > > > > > > drivers/pci/host/pci-tegra.c | 1 - > > > > 1 file changed, 1 deletion(-) > > > > > > > > diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c > > > > index a549c5899e26..0d91f1a3a6b4 100644 > > > > --- a/drivers/pci/host/pci-tegra.c > > > > +++ b/drivers/pci/host/pci-tegra.c > > > > @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) > > > > > > > > tegra_pcie_enable_ports(pcie); > > > > > > > > - pci_add_flags(PCI_REASSIGN_ALL_BUS); > > > > > > This looks obviously OK to me but I need Thierry's ACK to queue it. > > > > Just as an additional note: I think the real reason why this is okay to > > do is because we reset the PCI host controller in the kernel driver, so > > any bus assignments done by the firmware are reset as well. > > > > Acked-by: Thierry Reding <treding@nvidia.com> > > Thank you. This series needs rebasing, we should try to untangle > the dependencies between series so that I can actually apply some > of these patches that make sense on their own. Manikanta, would you be able to decouple this series from: https://patchwork.ozlabs.org/patch/832053/ so that we can make forward progress ? There are some patches in this series that I could apply - if rebased. Lorenzo
On 03-Jan-18 9:21 PM, Lorenzo Pieralisi wrote: > On Thu, Dec 21, 2017 at 10:46:30AM +0000, Lorenzo Pieralisi wrote: >> On Wed, Dec 20, 2017 at 08:30:11PM +0100, Thierry Reding wrote: >>> On Fri, Dec 15, 2017 at 05:36:43PM +0000, Lorenzo Pieralisi wrote: >>>> On Fri, Dec 08, 2017 at 02:28:09PM +0530, Manikanta Maddireddy wrote: >>>>> Primary, secondary and subordinate default bus numbers are 0 in Tegra and >>>>> it is expecting SW to program these numbers in configration space. >>>>> >>>>> pci_scan_bridge_extend() function programs these numbers in configuration >>>>> space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS >>>>> flag is set. Since secondary & subordinate default bus numbers are 0, >>>>> PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. >>>>> >>>>> Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> >>>>> --- >>>>> V3: >>>>> * new patch in V3 >>>>> V4: >>>>> * no change in this patch >>>>> >>>>> drivers/pci/host/pci-tegra.c | 1 - >>>>> 1 file changed, 1 deletion(-) >>>>> >>>>> diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c >>>>> index a549c5899e26..0d91f1a3a6b4 100644 >>>>> --- a/drivers/pci/host/pci-tegra.c >>>>> +++ b/drivers/pci/host/pci-tegra.c >>>>> @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) >>>>> >>>>> tegra_pcie_enable_ports(pcie); >>>>> >>>>> - pci_add_flags(PCI_REASSIGN_ALL_BUS); >>>> >>>> This looks obviously OK to me but I need Thierry's ACK to queue it. >>> >>> Just as an additional note: I think the real reason why this is okay to >>> do is because we reset the PCI host controller in the kernel driver, so >>> any bus assignments done by the firmware are reset as well. >>> >>> Acked-by: Thierry Reding <treding@nvidia.com> >> >> Thank you. This series needs rebasing, we should try to untangle >> the dependencies between series so that I can actually apply some >> of these patches that make sense on their own. > > Manikanta, would you be able to decouple this series from: > > https://patchwork.ozlabs.org/patch/832053/ > > so that we can make forward progress ? There are some patches in > this series that I could apply - if rebased. > > Lorenzo > Sure, I will decouple and send this series again.
diff --git a/drivers/pci/host/pci-tegra.c b/drivers/pci/host/pci-tegra.c index a549c5899e26..0d91f1a3a6b4 100644 --- a/drivers/pci/host/pci-tegra.c +++ b/drivers/pci/host/pci-tegra.c @@ -2604,7 +2604,6 @@ static int tegra_pcie_probe(struct platform_device *pdev) tegra_pcie_enable_ports(pcie); - pci_add_flags(PCI_REASSIGN_ALL_BUS); host->busnr = pcie->busn.start; host->dev.parent = &pdev->dev; host->ops = &tegra_pcie_ops;
Primary, secondary and subordinate default bus numbers are 0 in Tegra and it is expecting SW to program these numbers in configration space. pci_scan_bridge_extend() function programs these numbers in configuration space if secondary & subordinate bus numbers are 0 or PCI_REASSIGN_ALL_BUS flag is set. Since secondary & subordinate default bus numbers are 0, PCI_REASSIGN_ALL_BUS flag can be removed for Tegra PCIe. Signed-off-by: Manikanta Maddireddy <mmaddireddy@nvidia.com> --- V3: * new patch in V3 V4: * no change in this patch drivers/pci/host/pci-tegra.c | 1 - 1 file changed, 1 deletion(-)