[PATCH v6 00/30] Refine PCI scan interfaces and make generic pci host bridge

Liviu Dudau liviu at dudau.co.uk
Tue Mar 17 03:55:00 PDT 2015


On Mon, Mar 16, 2015 at 09:48:14AM +0800, Yijing Wang wrote:
> On 2015/3/13 19:31, Liviu Dudau wrote:
> > On Thu, Mar 12, 2015 at 04:23:06PM -0500, Bjorn Helgaas wrote:
> >> On Mon, Mar 09, 2015 at 10:33:57AM +0800, Yijing Wang wrote:
> >>> ...
> >>> Yijing Wang (29):
> >>>   PCI: Rip out pci_bus_add_devices() from pci_scan_bus()
> >>>   PCI: Rip out pci_bus_add_devices() from pci_scan_root_bus()
> >>>   sparc/PCI: Claim bus resources before pci_bus_add_devices()
> >>
> >> I put the above patches plus a cleanup patch on my pci/enumeration branch.
> >> Please rebase your next revision to that.  If there's anything else
> >> non-controversial that we can pull in to chip away at this, let me know.
> > 
> > Hi Bjorn and Yijing,
> > 
> > Sorry for not providing feedback earlier on this series (or any previous ones),
> > I'm just crawling out from under a rock of doing graphics drivers :)
> > 
> > The patch ripping out pci_bus_add_devices() from pci_scan_root_bus() misses out
> > the users of that function from drivers/pci/host. If Yijing is going to refresh
> > the series it is probably worth starting with adding back the call into pcie-xilinx.c
> > and pci-versatile.c.
> 
> Hi Liviu, thanks for your comment. I would add pci_bus_add_devices() for pci-versatile.c,
> But for pcie-xilinx.c and other host drivers used for arm32, we do not need to add
> pci_bus_add_devices() for them, because in arm32 pci enumeration, another pci_bus_add_devices()
> would be called in pci_common_init_dev();
> 
> for arm32 pci enumeration:
> pci_common_init_dev()
>    pcibios_init_hw()
>        hw->scan/pci_scan_root_bus()
>    pci_bus_size_bridges()
>    pci_bus_assign_resources()
>    pci_bus_add_devices()
> 
> Is there something I have missed ?

No, you were right. I was under impression that pcie-xilinx.c has broken away from arch/arm dependencies.

Best regards,
Liviu

> 
> Thanks!
> Yijing.
> 
> > 
> > Will try to review (and test) the rest of the series soon.
> > 
> > Best regards,
> > Liviu
> > 
> >>
> >>>   PCI: Export busn_resource to drivers/pci
> >>>   PCI: Remove deprecated pci_scan_bus_parented()
> >>>   PCI: Combine PCI domain and bus number in u32 arg
> >>>   PCI: Pass PCI domain number combined with root bus number
> >>>   PCI: Introduce pci_host_assign_domain_nr() to assign domain
> >>>   PCI: Separate pci_host_bridge creation out of pci_create_root_bus()
> >>>   PCI: Introduce pci_host_bridge_list to manage host bridges
> >>>   PCI: Save sysdata in pci_host_bridge drvdata
> >>>   PCI: Introduce pci_host_bridge_ops to support host specific
> >>>     operations
> >>>   PCI: Introduce new scan function pci_scan_host_bridge()
> >>>   x86/PCI: Refine pci_acpi_scan_root() with generic pci_host_bridge
> >>>   ia64/PCI: Refine pci_acpi_scan_root() with generic pci_host_bridge
> >>>   powerpc/pci: Rename pcibios_root_bridge_prepare()
> >>>   powerpc/pci: Use pci_scan_host_bridge() for simplicity
> >>>   PCI: Remove weak pcibios_root_bridge_prepare()
> >>>   sparc/PCI: Use pci_scan_host_bridge() for simplicity
> >>>   PCI: Introduce pci_bus_child_max_busnr()
> >>>   parisc/PCI: Use pci_scan_root_bus() for simplicity
> >>>   PCI/mvebu: Use pci_common_init_dev() to simplify code
> >>>   PCI/tegra: Remove redundant tegra_pcie_scan_bus()
> >>>   PCI/designware: Use pci_scan_root_bus() for simplicity
> >>>   PCI/xgene: Use pci_scan_root_bus() instead of pci_create_root_bus()
> >>>   PCI: Rename __pci_create_root_bus() to pci_create_root_bus()
> >>>   PCI: Export find_pci_host_bridge() and rename to
> >>>     pci_find_host_bridge()
> >>>   PCI: Remove platform specific pci_domain_nr()
> >>>   PCI: Remove pci_bus_assign_domain_nr()
> >>
> > 
> 
> 
> -- 
> Thanks!
> Yijing
> 
> 

-- 
-------------------
   .oooO
   (   )
    \ (  Oooo.
     \_) (   )
          ) /
         (_/

 One small step
   for me ...




More information about the linux-arm-kernel mailing list