From: Hanjun Guo <hanjun.guo@linaro.org> To: "Rafael J. Wysocki" <rjw@rjwysocki.net>, Catalin Marinas <catalin.marinas@arm.com>, linux-arm-kernel@lists.infradead.org, linux-acpi@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>, Bjorn Helgaas <bhelgaas@google.com>, rric@kernel.org, Grant Likely <grant.likely@linaro.org>, Sudeep Holla <Sudeep.Holla@arm.com>, Mark Rutland <mark.rutland@arm.com>, Charles.Garcia-Tobin@arm.com, lorenzo.pieralisi@arm.com, linaro-acpi@lists.linaro.org, Hanjun Guo <hanjun.guo@linaro.org> Subject: [PATCH v4 08/13] ARM64 / ACPI: Introduce arch_fix_phys_package_id() for cpu topology Date: Fri, 27 Jun 2014 11:49:31 +0800 [thread overview] Message-ID: <1403840976-7456-9-git-send-email-hanjun.guo@linaro.org> (raw) In-Reply-To: <1403840976-7456-1-git-send-email-hanjun.guo@linaro.org> arch_fix_phys_package_id() will be called in ACPI core to use the slot number provided by ACPI to update the physical package id, then we can get the right value in the "physical id" field of /proc/cpuinfo. Reviewed-by: Grant Likely <grant.likely@linaro.org> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> --- arch/arm64/include/asm/topology.h | 2 ++ arch/arm64/kernel/topology.c | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/arch/arm64/include/asm/topology.h b/arch/arm64/include/asm/topology.h index 7ebcd31..2b216d4 100644 --- a/arch/arm64/include/asm/topology.h +++ b/arch/arm64/include/asm/topology.h @@ -23,11 +23,13 @@ extern struct cpu_topology cpu_topology[NR_CPUS]; void init_cpu_topology(void); void store_cpu_topology(unsigned int cpuid); const struct cpumask *cpu_coregroup_mask(int cpu); +void arch_fix_phys_package_id(int num, u32 slot); #else static inline void init_cpu_topology(void) { } static inline void store_cpu_topology(unsigned int cpuid) { } +static inline void arch_fix_phys_package_id(int num, u32 slot) { } #endif diff --git a/arch/arm64/kernel/topology.c b/arch/arm64/kernel/topology.c index 43514f9..c547885 100644 --- a/arch/arm64/kernel/topology.c +++ b/arch/arm64/kernel/topology.c @@ -281,3 +281,17 @@ void __init init_cpu_topology(void) if (parse_dt_topology()) reset_cpu_topology(); } + +/* + * Use the CPU slot number provided by ACPI to update the physical + * package id when cpuid_topo->cluster_id is not available, then we + * can get the right value in the "physical id" field of /proc/cpuinfo. + */ +void arch_fix_phys_package_id(int num, u32 slot) +{ + struct cpu_topology *cpuid_topo = &cpu_topology[num]; + + if (cpuid_topo->cluster_id == -1) + cpuid_topo->cluster_id = slot; +} +EXPORT_SYMBOL_GPL(arch_fix_phys_package_id); -- 1.7.9.5
WARNING: multiple messages have this Message-ID (diff)
From: hanjun.guo@linaro.org (Hanjun Guo) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v4 08/13] ARM64 / ACPI: Introduce arch_fix_phys_package_id() for cpu topology Date: Fri, 27 Jun 2014 11:49:31 +0800 [thread overview] Message-ID: <1403840976-7456-9-git-send-email-hanjun.guo@linaro.org> (raw) In-Reply-To: <1403840976-7456-1-git-send-email-hanjun.guo@linaro.org> arch_fix_phys_package_id() will be called in ACPI core to use the slot number provided by ACPI to update the physical package id, then we can get the right value in the "physical id" field of /proc/cpuinfo. Reviewed-by: Grant Likely <grant.likely@linaro.org> Signed-off-by: Hanjun Guo <hanjun.guo@linaro.org> --- arch/arm64/include/asm/topology.h | 2 ++ arch/arm64/kernel/topology.c | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/arch/arm64/include/asm/topology.h b/arch/arm64/include/asm/topology.h index 7ebcd31..2b216d4 100644 --- a/arch/arm64/include/asm/topology.h +++ b/arch/arm64/include/asm/topology.h @@ -23,11 +23,13 @@ extern struct cpu_topology cpu_topology[NR_CPUS]; void init_cpu_topology(void); void store_cpu_topology(unsigned int cpuid); const struct cpumask *cpu_coregroup_mask(int cpu); +void arch_fix_phys_package_id(int num, u32 slot); #else static inline void init_cpu_topology(void) { } static inline void store_cpu_topology(unsigned int cpuid) { } +static inline void arch_fix_phys_package_id(int num, u32 slot) { } #endif diff --git a/arch/arm64/kernel/topology.c b/arch/arm64/kernel/topology.c index 43514f9..c547885 100644 --- a/arch/arm64/kernel/topology.c +++ b/arch/arm64/kernel/topology.c @@ -281,3 +281,17 @@ void __init init_cpu_topology(void) if (parse_dt_topology()) reset_cpu_topology(); } + +/* + * Use the CPU slot number provided by ACPI to update the physical + * package id when cpuid_topo->cluster_id is not available, then we + * can get the right value in the "physical id" field of /proc/cpuinfo. + */ +void arch_fix_phys_package_id(int num, u32 slot) +{ + struct cpu_topology *cpuid_topo = &cpu_topology[num]; + + if (cpuid_topo->cluster_id == -1) + cpuid_topo->cluster_id = slot; +} +EXPORT_SYMBOL_GPL(arch_fix_phys_package_id); -- 1.7.9.5
next prev parent reply other threads:[~2014-06-27 3:49 UTC|newest] Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-06-27 3:49 [PATCH v4 00/13] Enable ACPI on ARM64 in Kconfig Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 01/13] acpi: arm64 does not have a BIOS add config for BIOS table scan Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 02/13] ACPI: Don't use acpi_lapic in ACPI core code Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 03/13] ACPI / processor: Introduce ARCH_HAS_ACPI_PDC Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 04/13] ARM64 : Add dummy asm/cpu.h Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 05/13] ARM64 / ACPI: Introduce arm-core.c and its related head file Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-30 16:24 ` Catalin Marinas 2014-06-30 16:24 ` Catalin Marinas 2014-06-30 16:24 ` Catalin Marinas 2014-06-30 17:21 ` Graeme Gregory 2014-06-30 17:21 ` Graeme Gregory 2014-06-30 17:21 ` Graeme Gregory 2014-06-27 3:49 ` [PATCH v4 06/13] ARM64 / ACPI: Introduce early_param for "acpi" Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 9:07 ` Arnd Bergmann 2014-06-27 9:07 ` Arnd Bergmann 2014-06-27 10:57 ` Graeme Gregory 2014-06-27 10:57 ` Graeme Gregory 2014-06-27 10:57 ` Graeme Gregory 2014-06-27 3:49 ` [PATCH v4 07/13] ARM64 / ACPI: Introduce lowlevel suspend function Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-30 16:28 ` Catalin Marinas 2014-06-30 16:28 ` Catalin Marinas 2014-06-30 16:28 ` Catalin Marinas 2014-06-27 3:49 ` Hanjun Guo [this message] 2014-06-27 3:49 ` [PATCH v4 08/13] ARM64 / ACPI: Introduce arch_fix_phys_package_id() for cpu topology Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 09/13] ARM64 / ACPI: Introduce PCI functions for ACPI on ARM64 Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 10/13] ACPI: Make EC debugfs depend on X86 || IA64 in Kconfig Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 11/13] ARM64 / ACPI: Select ACPI_REDUCED_HARDWARE_ONLY if ACPI is enabled on ARM64 Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 3:49 ` [PATCH v4 12/13] ARM64 / ACPI: if we chose to boot from acpi then disable FDT Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-27 9:09 ` [Linaro-acpi] " Arnd Bergmann 2014-06-27 9:09 ` Arnd Bergmann 2014-06-27 3:49 ` [PATCH v4 13/13] ARM64 / ACPI: Enable ARM64 in Kconfig Hanjun Guo 2014-06-27 3:49 ` Hanjun Guo 2014-06-30 10:46 ` Catalin Marinas 2014-06-30 10:46 ` Catalin Marinas 2014-06-30 10:46 ` Catalin Marinas 2014-07-01 7:54 ` Hanjun Guo 2014-07-01 7:54 ` Hanjun Guo 2014-07-01 7:54 ` Hanjun Guo 2014-07-01 8:20 ` Hanjun Guo 2014-07-01 8:20 ` Hanjun Guo 2014-07-01 8:20 ` Hanjun Guo 2014-07-01 9:22 ` Catalin Marinas 2014-07-01 9:22 ` Catalin Marinas 2014-07-01 9:22 ` Catalin Marinas
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1403840976-7456-9-git-send-email-hanjun.guo@linaro.org \ --to=hanjun.guo@linaro.org \ --cc=Charles.Garcia-Tobin@arm.com \ --cc=Sudeep.Holla@arm.com \ --cc=arnd@arndb.de \ --cc=bhelgaas@google.com \ --cc=catalin.marinas@arm.com \ --cc=grant.likely@linaro.org \ --cc=linaro-acpi@lists.linaro.org \ --cc=linux-acpi@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=lorenzo.pieralisi@arm.com \ --cc=mark.rutland@arm.com \ --cc=rjw@rjwysocki.net \ --cc=rric@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.