diff options
author | Thomas Moestl <tmm@FreeBSD.org> | 2002-02-13 15:47:12 +0000 |
---|---|---|
committer | Thomas Moestl <tmm@FreeBSD.org> | 2002-02-13 15:47:12 +0000 |
commit | 68716de3ec466e05afa9b492b48c303e85f24b41 (patch) | |
tree | ddc75a5b9c251efd4281af2eae13c351b2873e48 | |
parent | 95c7d7d47e96f4db32a440629f6bfe2d13702d84 (diff) | |
download | src-68716de3ec466e05afa9b492b48c303e85f24b41.tar.gz src-68716de3ec466e05afa9b492b48c303e85f24b41.zip |
Define constants for the CPU implementation id; export the dectected id
as cpu_impl.
Notes
Notes:
svn path=/head/; revision=90614
-rw-r--r-- | sys/sparc64/include/ver.h | 9 | ||||
-rw-r--r-- | sys/sparc64/sparc64/identcpu.c | 15 |
2 files changed, 18 insertions, 6 deletions
diff --git a/sys/sparc64/include/ver.h b/sys/sparc64/include/ver.h index 4d98355889c8..207c3ce9de92 100644 --- a/sys/sparc64/include/ver.h +++ b/sys/sparc64/include/ver.h @@ -58,4 +58,13 @@ #define VER_MAXWIN(ver) \ (((ver) & VER_MAXWIN_MASK) >> VER_MAXWIN_SHIFT) +extern int cpu_impl; + +/* Known implementations. */ +#define CPU_IMPL_SPARC64 0x01 +#define CPU_IMPL_ULTRASPARCI 0x10 +#define CPU_IMPL_ULTRASPARCII 0x11 +#define CPU_IMPL_ULTRASPARCIIi 0x12 +#define CPU_IMPL_ULTRASPARCIIe 0x13 + #endif /* !_MACHINE_VER_H_ */ diff --git a/sys/sparc64/sparc64/identcpu.c b/sys/sparc64/sparc64/identcpu.c index 9cdd7d0bb371..45b5d0f9af67 100644 --- a/sys/sparc64/sparc64/identcpu.c +++ b/sys/sparc64/sparc64/identcpu.c @@ -25,6 +25,8 @@ static char cpu_model[128]; SYSCTL_STRING(_hw, HW_MODEL, model, CTLFLAG_RD, cpu_model, 0, "Machine model"); +int cpu_impl; + void cpu_identify(unsigned int freq) { @@ -46,20 +48,21 @@ cpu_identify(unsigned int freq) manus = "Sun Microsystems"; break; } - switch (VER_IMPL(vers)) { - case 0x01: + cpu_impl = VER_IMPL(vers); + switch (cpu_impl) { + case CPU_IMPL_SPARC64: impls = "SPARC64"; break; - case 0x10: + case CPU_IMPL_ULTRASPARCI: impls = "UltraSparc-I"; break; - case 0x11: + case CPU_IMPL_ULTRASPARCII: impls = "UltraSparc-II"; break; - case 0x12: + case CPU_IMPL_ULTRASPARCIIi: impls = "UltraSparc-IIi"; break; - case 0x13: + case CPU_IMPL_ULTRASPARCIIe: /* V9 Manual says `UltraSparc-e'. I assume this is wrong. */ impls = "UltraSparc-IIe"; break; |