Message ID | 20190215004817.19961-5-oohall@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 67060cb1ffa474c4fa1ae4db865ac1c7ed1fa899 |
Headers | show |
Series | [v2,1/7] powerpc/eeh: Use debugfs_create_u32 for eeh_max_freezes | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | success | next/apply_patch Successfully applied |
snowpatch_ozlabs/checkpatch | warning | total: 0 errors, 0 warnings, 1 checks, 25 lines checked |
On Fri, Feb 15, 2019 at 11:48:15AM +1100, Oliver O'Halloran wrote: > Add a helper to find the pci_controller structure based on the domain > number / phb id. > > Signed-off-by: Oliver O'Halloran <oohall@gmail.com> Reviewed-by: Sam Bobroff <sbobroff@linux.ibm.com> > --- > v2: Renamed pci_find_hose_for_domain() to > pci_find_controller_for_domain() > --- > arch/powerpc/include/asm/pci-bridge.h | 2 ++ > arch/powerpc/kernel/pci-common.c | 11 +++++++++++ > 2 files changed, 13 insertions(+) > > diff --git a/arch/powerpc/include/asm/pci-bridge.h b/arch/powerpc/include/asm/pci-bridge.h > index aee4fcc24990..feea9534a015 100644 > --- a/arch/powerpc/include/asm/pci-bridge.h > +++ b/arch/powerpc/include/asm/pci-bridge.h > @@ -274,6 +274,8 @@ extern int pcibios_map_io_space(struct pci_bus *bus); > extern struct pci_controller *pci_find_hose_for_OF_device( > struct device_node* node); > > +extern struct pci_controller *pci_find_controller_for_domain(int domain_nr); > + > /* Fill up host controller resources from the OF node */ > extern void pci_process_bridge_OF_ranges(struct pci_controller *hose, > struct device_node *dev, int primary); > diff --git a/arch/powerpc/kernel/pci-common.c b/arch/powerpc/kernel/pci-common.c > index 88e4f69a09e5..21eeeabb3e0e 100644 > --- a/arch/powerpc/kernel/pci-common.c > +++ b/arch/powerpc/kernel/pci-common.c > @@ -357,6 +357,17 @@ struct pci_controller* pci_find_hose_for_OF_device(struct device_node* node) > return NULL; > } > > +struct pci_controller *pci_find_controller_for_domain(int domain_nr) > +{ > + struct pci_controller *hose; > + > + list_for_each_entry(hose, &hose_list, list_node) > + if (hose->global_number == domain_nr) > + return hose; > + > + return NULL; > +} > + > /* > * Reads the interrupt pin to determine if interrupt is use by card. > * If the interrupt is used, then gets the interrupt line from the > -- > 2.20.1 >
diff --git a/arch/powerpc/include/asm/pci-bridge.h b/arch/powerpc/include/asm/pci-bridge.h index aee4fcc24990..feea9534a015 100644 --- a/arch/powerpc/include/asm/pci-bridge.h +++ b/arch/powerpc/include/asm/pci-bridge.h @@ -274,6 +274,8 @@ extern int pcibios_map_io_space(struct pci_bus *bus); extern struct pci_controller *pci_find_hose_for_OF_device( struct device_node* node); +extern struct pci_controller *pci_find_controller_for_domain(int domain_nr); + /* Fill up host controller resources from the OF node */ extern void pci_process_bridge_OF_ranges(struct pci_controller *hose, struct device_node *dev, int primary); diff --git a/arch/powerpc/kernel/pci-common.c b/arch/powerpc/kernel/pci-common.c index 88e4f69a09e5..21eeeabb3e0e 100644 --- a/arch/powerpc/kernel/pci-common.c +++ b/arch/powerpc/kernel/pci-common.c @@ -357,6 +357,17 @@ struct pci_controller* pci_find_hose_for_OF_device(struct device_node* node) return NULL; } +struct pci_controller *pci_find_controller_for_domain(int domain_nr) +{ + struct pci_controller *hose; + + list_for_each_entry(hose, &hose_list, list_node) + if (hose->global_number == domain_nr) + return hose; + + return NULL; +} + /* * Reads the interrupt pin to determine if interrupt is use by card. * If the interrupt is used, then gets the interrupt line from the
Add a helper to find the pci_controller structure based on the domain number / phb id. Signed-off-by: Oliver O'Halloran <oohall@gmail.com> --- v2: Renamed pci_find_hose_for_domain() to pci_find_controller_for_domain() --- arch/powerpc/include/asm/pci-bridge.h | 2 ++ arch/powerpc/kernel/pci-common.c | 11 +++++++++++ 2 files changed, 13 insertions(+)