Module Name: src
Committed By: nakayama
Date: Fri Jul 25 17:21:32 UTC 2014
Modified Files:
src/sys/arch/sparc/sparc: autoconf.c cpu.c
src/sys/arch/sparc64/sparc64: autoconf.c cpu.c
Log Message:
Backout using humanize_number(9) in clockfreq().
humanize_number(9) cannot handle a fraction part and doesn't
match the intention of clockfreq().
Also backout the changes caused by the fallout of clockfreq().
Fixed outputs:
-cpu0 at mainbus0: MB86904 @ 170 MHz, MB86910 or WTL1164/5 FPU
+cpu0 at mainbus0: MB86904 @ 170 MHz, MB86910 or WTL1164/5 FPU
-sbus0 at iommu0: clock = 21250 MHz
+sbus0 at iommu0: clock = 21.250 MHz
-cpu0 at mainbus0: SUNW,UltraSPARC-II @ 449 MHz, CPU id 0
+cpu0 at mainbus0: SUNW,UltraSPARC-II @ 449.971 MHz, CPU id 0
To generate a diff of this commit:
cvs rdiff -u -r1.256 -r1.257 src/sys/arch/sparc/sparc/autoconf.c
cvs rdiff -u -r1.247 -r1.248 src/sys/arch/sparc/sparc/cpu.c
cvs rdiff -u -r1.197 -r1.198 src/sys/arch/sparc64/sparc64/autoconf.c
cvs rdiff -u -r1.113 -r1.114 src/sys/arch/sparc64/sparc64/cpu.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/sparc/sparc/autoconf.c
diff -u src/sys/arch/sparc/sparc/autoconf.c:1.256 src/sys/arch/sparc/sparc/autoconf.c:1.257
--- src/sys/arch/sparc/sparc/autoconf.c:1.256 Wed Apr 23 09:06:57 2014
+++ src/sys/arch/sparc/sparc/autoconf.c Fri Jul 25 17:21:32 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.256 2014/04/23 09:06:57 macallan Exp $ */
+/* $NetBSD: autoconf.c,v 1.257 2014/07/25 17:21:32 nakayama Exp $ */
/*
* Copyright (c) 1996
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.256 2014/04/23 09:06:57 macallan Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.257 2014/07/25 17:21:32 nakayama Exp $");
#include "opt_ddb.h"
#include "opt_kgdb.h"
@@ -1034,8 +1034,13 @@ char *
clockfreq(int freq)
{
static char buf[10];
+ size_t len;
- humanize_number(buf, sizeof(buf), freq / 1000, "", 1000);
+ freq /= 1000;
+ len = snprintf(buf, sizeof(buf), "%d", freq / 1000);
+ freq %= 1000;
+ if (freq)
+ snprintf(buf + len, sizeof(buf) - len, ".%03d", freq);
return buf;
}
Index: src/sys/arch/sparc/sparc/cpu.c
diff -u src/sys/arch/sparc/sparc/cpu.c:1.247 src/sys/arch/sparc/sparc/cpu.c:1.248
--- src/sys/arch/sparc/sparc/cpu.c:1.247 Wed Jun 4 07:06:03 2014
+++ src/sys/arch/sparc/sparc/cpu.c Fri Jul 25 17:21:32 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.c,v 1.247 2014/06/04 07:06:03 martin Exp $ */
+/* $NetBSD: cpu.c,v 1.248 2014/07/25 17:21:32 nakayama Exp $ */
/*
* Copyright (c) 1996
@@ -52,7 +52,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.247 2014/06/04 07:06:03 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.248 2014/07/25 17:21:32 nakayama Exp $");
#include "opt_multiprocessor.h"
#include "opt_lockdebug.h"
@@ -437,7 +437,7 @@ cpu_attach(struct cpu_softc *sc, int nod
/* Stuff to only run on the boot CPU */
cpu_setup();
snprintf(buf, sizeof buf, "%s @ %s MHz, %s FPU",
- cpi->cpu_longname, clockfreq(cpi->hz / 1000), cpi->fpu_name);
+ cpi->cpu_longname, clockfreq(cpi->hz), cpi->fpu_name);
cpu_setmodel("%s (%s)", machine_model, buf);
printf(": %s\n", buf);
cache_print(sc);
@@ -526,7 +526,7 @@ cpu_attach_non_boot(struct cpu_softc *sc
/* Now start this CPU */
cpu_spinup(cpi);
printf(": %s @ %s MHz, %s FPU\n", cpi->cpu_longname,
- clockfreq(cpi->hz / 1000), cpi->fpu_name);
+ clockfreq(cpi->hz), cpi->fpu_name);
cache_print(sc);
Index: src/sys/arch/sparc64/sparc64/autoconf.c
diff -u src/sys/arch/sparc64/sparc64/autoconf.c:1.197 src/sys/arch/sparc64/sparc64/autoconf.c:1.198
--- src/sys/arch/sparc64/sparc64/autoconf.c:1.197 Wed Mar 26 17:29:21 2014
+++ src/sys/arch/sparc64/sparc64/autoconf.c Fri Jul 25 17:21:32 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: autoconf.c,v 1.197 2014/03/26 17:29:21 christos Exp $ */
+/* $NetBSD: autoconf.c,v 1.198 2014/07/25 17:21:32 nakayama Exp $ */
/*
* Copyright (c) 1996
@@ -48,7 +48,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.197 2014/03/26 17:29:21 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: autoconf.c,v 1.198 2014/07/25 17:21:32 nakayama Exp $");
#include "opt_ddb.h"
#include "opt_kgdb.h"
@@ -511,8 +511,13 @@ char *
clockfreq(long freq)
{
static char buf[10];
+ size_t len;
- humanize_number(buf, sizeof(buf), freq / 1000, "", 1000);
+ freq /= 1000;
+ len = snprintf(buf, sizeof(buf), "%ld", freq / 1000);
+ freq %= 1000;
+ if (freq)
+ snprintf(buf + len, sizeof(buf) - len, ".%03ld", freq);
return buf;
}
Index: src/sys/arch/sparc64/sparc64/cpu.c
diff -u src/sys/arch/sparc64/sparc64/cpu.c:1.113 src/sys/arch/sparc64/sparc64/cpu.c:1.114
--- src/sys/arch/sparc64/sparc64/cpu.c:1.113 Tue Jun 10 18:27:41 2014
+++ src/sys/arch/sparc64/sparc64/cpu.c Fri Jul 25 17:21:32 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: cpu.c,v 1.113 2014/06/10 18:27:41 palle Exp $ */
+/* $NetBSD: cpu.c,v 1.114 2014/07/25 17:21:32 nakayama Exp $ */
/*
* Copyright (c) 1996
@@ -52,7 +52,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.113 2014/06/10 18:27:41 palle Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu.c,v 1.114 2014/07/25 17:21:32 nakayama Exp $");
#include "opt_multiprocessor.h"
@@ -342,7 +342,7 @@ cpu_attach(device_t parent, device_t dev
ci->ci_system_clockrate[1] = sclk / 1000000;
snprintf(buf, sizeof buf, "%s @ %s MHz",
- prom_getpropstring(node, "name"), clockfreq(clk / 1000));
+ prom_getpropstring(node, "name"), clockfreq(clk));
cpu_setmodel("%s (%s)", machine_model, buf);
aprint_normal(": %s, CPU id %d\n", buf, ci->ci_cpuid);