Thread (4 messages) flat view 4 messages, 3 authors, 2021-01-19

Re: [PATCH] arm64/cpuinfo: Show right CPU architecture information

From: Catalin Marinas <catalin.marinas@arm.com>
Date: 2021-01-19 12:42:12
Also in: lkml

On Tue, Jan 19, 2021 at 07:26:31PM +0800, 乱石 wrote:
锟斤拷 2021/1/19 19:01, Will Deacon 写锟斤拷:
quoted
On Tue, Jan 19, 2021 at 06:55:10PM +0800, Liguang Zhang wrote:
quoted
CPU architecture is assigned to be a fixed value, it should be obtained
from midr register.

Signed-off-by: Liguang Zhang <redacted>
---
  arch/arm64/kernel/cpuinfo.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
index 77605aec25fe..0bd11e0fe9f2 100644
--- a/arch/arm64/kernel/cpuinfo.c
+++ b/arch/arm64/kernel/cpuinfo.c
@@ -191,7 +191,7 @@ static int c_show(struct seq_file *m, void *v)
  		seq_printf(m, "CPU implementer\t: 0x%02x\n",
  			   MIDR_IMPLEMENTOR(midr));
-		seq_printf(m, "CPU architecture: 8\n");
+		seq_printf(m, "CPU architecture: %d\n", MIDR_ARCHITECTURE(midr));
Huh? Won't this always return 0xf?
Hi Will,

I'm not sure. My platform return 0xf, but /proc/cpuinfo show 8. Why we
assign a fixed

value to cpu architecture?
Because 0xf first appeared on some ARMv6 CPUs (1176, 11MPcore and some
newer revisions of 1136). A field value of 0xf means don't bother with
architecture version but rather check the CPUID information for the
features you need. We decided to call it 8 here with 64-bit as that was
announced as ARMv8. A 32-bit kernel running on ARMv8 hardware would
report 7 (as it would on some ARMv6 hardware like 1176 etc.)

-- 
Catalin

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help