On 2015/3/5 6:46, Rafael J. Wysocki wrote: > On Wednesday, February 25, 2015 04:39:54 PM Hanjun Guo wrote: >> Introduce a new function map_gicc_mpidr() to allow MPIDRs to be obtained >> from the GICC Structure introduced by ACPI 5.1. >> >> The ARM architecture defines the MPIDR register as the CPU hardware >> identifier. This patch adds the code infrastructure to retrieve the MPIDR >> values from the ARM ACPI GICC structure in order to look-up the kernel CPU >> hardware ids required by the ACPI core code to identify CPUs. >> >> CC: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> >> CC: Catalin Marinas <catalin.marinas@xxxxxxx> >> CC: Will Deacon <will.deacon@xxxxxxx> >> Tested-by: Suravee Suthikulpanit <Suravee.Suthikulpanit@xxxxxxx> >> Tested-by: Yijing Wang <wangyijing@xxxxxxxxxx> >> Tested-by: Mark Langsdorf <mlangsdo@xxxxxxxxxx> >> Tested-by: Jon Masters <jcm@xxxxxxxxxx> >> Tested-by: Timur Tabi <timur@xxxxxxxxxxxxxx> >> Tested-by: Robert Richter <rrichter@xxxxxxxxxx> >> Acked-by: Robert Richter <rrichter@xxxxxxxxxx> >> Signed-off-by: Hanjun Guo <hanjun.guo@xxxxxxxxxx> >> --- >> arch/arm64/include/asm/acpi.h | 12 ++++++++++++ >> drivers/acpi/processor_core.c | 30 ++++++++++++++++++++++++++++++ >> 2 files changed, 42 insertions(+) >> >> diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h >> index 9719921..9a23369 100644 >> --- a/arch/arm64/include/asm/acpi.h >> +++ b/arch/arm64/include/asm/acpi.h >> @@ -13,6 +13,8 @@ >> #define _ASM_ACPI_H >> >> #include <linux/mm.h> >> +#include <asm/cputype.h> >> +#include <asm/smp_plat.h> >> >> /* Basic configuration for ACPI */ >> #ifdef CONFIG_ACPI >> @@ -27,6 +29,9 @@ static inline void __iomem *acpi_os_ioremap(acpi_physical_address phys, >> } >> #define acpi_os_ioremap acpi_os_ioremap >> >> +typedef u64 phys_cpuid_t; >> +#define CPU_PHYS_ID_INVALID INVALID_HWID >> + > Any chance to combine this with patch [2/21]? Or at least put them next to each > other in the series so as to indicate that they are related or *mention* patch > [2/21] in the changelog here? Both are ok to me. I separated those two patches for the assumption that you will merge the first two patches in your tree, I will put them next to each other. > > IMO, you really need to define phys_cpuid_t in a common place or people will > forget that it may be 64-bit, because they'll only be looking at their arch. Since x86 and ARM64 are using different types for phys_cpuid_t, we need to introduce something like following if define it in common place: in linux/acpi.h, #if defined(CONFIG_X86) || defined(CONFIG_IA64) typedef u32 phys_cpuid_t; #define PHYS_CPUID_INVALID (phys_cpuid_t)(-1) #else if defined(CONFIG_ARM64) typedef u64 phys_cpuid_t; #define PHYS_CPUID_INVALID INVALID_HWID #endif I think it's awful, did I miss something? Thanks Hanjun -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html