Hi, arm and arm64 topology.c share a lot of code related to parsing of capacity information. This set of patches proposes a solution (based on Will's, Catalin's and Mark's off-line suggestions) to move such common code in a single place: drivers/base/arch_topology.c (by creating such file and conditionally compiling it for arm and arm64 only). First 5 patches are actually fixes for the current code. Patch 6 is the actual refactoring. Last patch removes one of the extern symbols by changing a bit the now common code. We still remain with some other externs, which are not nice. Moving them in some header file solves the issue, should I just create a new include/ linux/arch_topology.h file and move them there? The set is based on top of linux/master (4.10-rc4 fb1d8e0e2c50) and it is also available from: git://linux-arm.org/linux-jl.git upstream/default_caps_factorize Best, - Juri Juri Lelli (7): Documentation: arm: fix wrong reference number in DT definition Documentation/ABI: add information about cpu_capacity arm: fix return value of parse_cpu_capacity arm: remove wrong CONFIG_PROC_SYSCTL ifdef arm64: remove wrong CONFIG_PROC_SYSCTL ifdef arm, arm64: factorize common cpu capacity default code arm,arm64,drivers: reduce scope of cap_parsing_failed Documentation/ABI/testing/sysfs-devices-system-cpu | 7 + Documentation/devicetree/bindings/arm/cpus.txt | 4 +- arch/arm/Kconfig | 1 + arch/arm/kernel/topology.c | 216 +------------------ arch/arm64/Kconfig | 1 + arch/arm64/kernel/topology.c | 218 +------------------ drivers/base/Kconfig | 8 + drivers/base/Makefile | 1 + drivers/base/arch_topology.c | 240 +++++++++++++++++++++ 9 files changed, 269 insertions(+), 427 deletions(-) create mode 100644 drivers/base/arch_topology.c -- 2.10.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html