ARM: DT/kernel: define ARM specific arch_match_cpu_phys_id
authorSudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Mon, 17 Jun 2013 12:11:29 +0000 (13:11 +0100)
committerSudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Wed, 21 Aug 2013 09:24:48 +0000 (10:24 +0100)
OF/DT core library now provides architecture specific hook to match the
logical cpu index with the corresponding physical identifier. Most of the
cpu DT node parsing and initialisation is contained in devtree.c. So it's
better to define ARM specific arch_match_cpu_phys_id there.

This mainly helps to avoid replication of the code doing CPU node parsing
and physical(MPIDR) to logical mapping.

Cc: Russell King <linux@arm.linux.org.uk>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Acked-by: Rob Herring <rob.herring@calxeda.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
arch/arm/kernel/devtree.c

index 5859c8b..2ee8a17 100644 (file)
@@ -169,6 +169,11 @@ void __init arm_dt_init_cpu_maps(void)
        }
 }
 
+bool arch_match_cpu_phys_id(int cpu, u64 phys_id)
+{
+       return (phys_id & MPIDR_HWID_BITMASK) == cpu_logical_map(cpu);
+}
+
 /**
  * setup_machine_fdt - Machine setup when an dtb was passed to the kernel
  * @dt_phys: physical address of dt blob