On 1/25/19 10:09 AM, Michael Bringmann wrote: > Adding Nathan Lynch > > On 1/24/19 6:04 PM, Tyrel Datwyler wrote: >> On 12/14/2018 12:50 PM, Michael Bringmann wrote: >>> Define interface to acquire arch-specific drc info to match against >>> hotpluggable devices. The current implementation exposes several >>> pseries-specific dynamic memory properties in generic kernel code. >>> This patch set provides an interface to pull that code out of the >>> generic kernel. >>> >>> Signed-off-by: Michael Bringmann <m...@linux.vnet.ibm.com> >>> --- >>> include/linux/topology.h | 9 +++++++++ >>> 1 file changed, 9 insertions(+) >>> >>> diff --git a/include/linux/topology.h b/include/linux/topology.h >>> index cb0775e..df97f5f 100644 >>> --- a/include/linux/topology.h >>> +++ b/include/linux/topology.h >>> @@ -44,6 +44,15 @@ >> >> As far as I know pseries is the only platform that uses DR connectors, and I >> highly doubt that any other powerpc platform or arch ever will. So, I'm not >> sure >> that this is really generic enough to belong in topology.h. If anything I >> would >> suggest putting this in an include in arch/powerpc/include/ named something >> like >> drcinfo.h or pseries-drc.h. That will make it visible to modules like rpaphp >> that want/need to use this functionality.
It looks like the 'rpaphp' and 'rpadlpar_io' modules are also dependent upon the powerpc platform. Shouldn't the relevant source files be moved completely to the powerpc-specific directories out of drivers/pci/hotplug as well? drivers/pci/hotplug/Kconfig has: config HOTPLUG_PCI_RPA tristate "RPA PCI Hotplug driver" depends on PPC_PSERIES && EEH help Say Y here if you have a RPA system that supports PCI Hotplug. To compile this driver as a module, choose M here: the module will be called rpaphp. When in doubt, say N. config HOTPLUG_PCI_RPA_DLPAR tristate "RPA Dynamic Logical Partitioning for I/O slots" depends on HOTPLUG_PCI_RPA help Say Y here if your system supports Dynamic Logical Partitioning for I/O slots. To compile this driver as a module, choose M here: the module will be called rpadlpar_io. When in doubt, say N. Michael >> >> -Tyrel >> >>> >>> int arch_update_cpu_topology(void); >>> >>> +int arch_find_drc_match(struct device_node *dn, >>> + bool (*usercb)(struct device_node *dn, >>> + u32 drc_index, char *drc_name, >>> + char *drc_type, u32 drc_power_domain, >>> + void *data), >>> + char *opt_drc_type, char *opt_drc_name, >>> + bool match_drc_index, bool ck_php_type, >>> + void *data); >>> + >>> /* Conform to ACPI 2.0 SLIT distance definitions */ >>> #define LOCAL_DISTANCE 10 >>> #define REMOTE_DISTANCE 20 >>> >> >> > -- Michael W. Bringmann Linux Technology Center IBM Corporation Tie-Line 363-5196 External: (512) 286-5196 Cell: (512) 466-0650 m...@linux.vnet.ibm.com