From c1f0f1275375cb99623b2ff9f4ae6ecb570ab7de Mon Sep 17 00:00:00 2001 From: sato Date: Mon, 3 Apr 2000 03:39:58 +0000 Subject: [PATCH] - hpcmips_verbose - pbsdboot -v option - WIN I/O setting - vrisa IRQ GPIO mapping - memory banks. --- sys/arch/hpcmips/hpcmips/machdep.c | 21 ++++++++++++++++++-- sys/arch/hpcmips/hpcmips/machdep.h | 3 ++- sys/arch/hpcmips/isa/isa_machdep.c | 7 +++++-- sys/arch/hpcmips/vr/vrgiu.c | 32 ++++++++++++++++++++---------- 4 files changed, 47 insertions(+), 16 deletions(-) diff --git a/sys/arch/hpcmips/hpcmips/machdep.c b/sys/arch/hpcmips/hpcmips/machdep.c index 6de47570846e..beb006c5d60c 100644 --- a/sys/arch/hpcmips/hpcmips/machdep.c +++ b/sys/arch/hpcmips/hpcmips/machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.20 2000/03/25 10:14:14 nisimura Exp $ */ +/* $NetBSD: machdep.c,v 1.21 2000/04/03 03:39:58 sato Exp $ */ /* * Copyright (c) 1988 University of Utah. @@ -43,7 +43,7 @@ #include /* RCS ID & Copyright macro defns */ -__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.20 2000/03/25 10:14:14 nisimura Exp $"); +__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.21 2000/04/03 03:39:58 sato Exp $"); /* from: Utah Hdr: machdep.c 1.63 91/04/24 */ #include "opt_vr41x1.h" @@ -125,6 +125,10 @@ char cpu_model[128]; char cpu_name[40]; /* set cpu depend xx_init() */ +/* verbose boot message */ +int hpcmips_verbose = 0; +#define VPRINTF(arg) if (hpcmips_verbose) printf arg; + /* maps for VM objects */ vm_map_t exec_map = NULL; vm_map_t mb_map = NULL; @@ -341,6 +345,9 @@ mach_init(argc, argv, bi) #endif cp += strlen(cp); break; + case 'v': /* verbose for hpcmips */ + hpcmips_verbose = 1; + break; } } } @@ -466,6 +473,16 @@ cpu_startup() printf("%s\n", cpu_model); format_bytes(pbuf, sizeof(pbuf), ctob(physmem)); printf("total memory = %s\n", pbuf); + if (hpcmips_verbose) { + /* show again when verbose mode */ + printf("total memory banks = %d\n", mem_cluster_cnt); + for (i = 0; i < mem_cluster_cnt; i++) { + printf("memory bank %d = 0x%08lx %ldKB(0x%08lx)\n", i, + (paddr_t)mem_clusters[i].start, + (paddr_t)mem_clusters[i].size/1024, + (paddr_t)mem_clusters[i].size); + } + } /* * Allocate virtual address space for file I/O buffers. diff --git a/sys/arch/hpcmips/hpcmips/machdep.h b/sys/arch/hpcmips/hpcmips/machdep.h index 9e78a18b3a5e..3b0edabffd53 100644 --- a/sys/arch/hpcmips/hpcmips/machdep.h +++ b/sys/arch/hpcmips/hpcmips/machdep.h @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.h,v 1.3 2000/03/28 23:57:27 simonb Exp $ */ +/* $NetBSD: machdep.h,v 1.4 2000/04/03 03:39:59 sato Exp $ */ /* * Copyright (c) 1998 Jonathan Stone. All rights reserved. @@ -32,3 +32,4 @@ /* others.. */ extern char cpu_name[]; +extern int hpcmips_verbose; diff --git a/sys/arch/hpcmips/isa/isa_machdep.c b/sys/arch/hpcmips/isa/isa_machdep.c index 2e2321594356..6e207059d187 100644 --- a/sys/arch/hpcmips/isa/isa_machdep.c +++ b/sys/arch/hpcmips/isa/isa_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: isa_machdep.c,v 1.4 2000/03/10 01:30:06 sato Exp $ */ +/* $NetBSD: isa_machdep.c,v 1.5 2000/04/03 03:40:00 sato Exp $ */ /* * Copyright (c) 1999, by UCHIYAMA Yasushi @@ -37,6 +37,7 @@ #include #include +#include #include #include #include @@ -52,9 +53,11 @@ int vrisa_debug = VRISADEBUG_CONF; #define DPRINTF(arg) if (vrisa_debug) printf arg; #define DBITDISP32(mask) if (vrisa_debug) bitdisp32(mask); +#define VPRINTF(arg) if (hpcmips_verbose || vrisa_debug) printf arg; #else /* VRISADEBUG */ #define DPRINTF(arg) #define DBITDISP32(mask) +#define VPRINTF(arg) if (hpcmips_verbose) printf arg; #endif /* VRISADEBUG */ int vrisabprint __P((void*, const char*)); @@ -228,7 +231,7 @@ isa_intr_establish(ic, intr, type, level, ih_fun, ih_arg) mode = INTR_MODE(intr); port = INTR_PORT(intr); - DPRINTF(("ISA IRQ %d -> GPIO port %d, %s\n", + VPRINTF(("ISA IRQ %d -> GPIO port %d, %s\n", irq, port, intr_mode_names[mode])); /* Call Vr routine */ diff --git a/sys/arch/hpcmips/vr/vrgiu.c b/sys/arch/hpcmips/vr/vrgiu.c index e52f29f2e6e7..9d84b4fa91dc 100644 --- a/sys/arch/hpcmips/vr/vrgiu.c +++ b/sys/arch/hpcmips/vr/vrgiu.c @@ -1,4 +1,4 @@ -/* $NetBSD: vrgiu.c,v 1.9 2000/03/14 08:26:42 sato Exp $ */ +/* $NetBSD: vrgiu.c,v 1.10 2000/04/03 03:40:00 sato Exp $ */ /*- * Copyright (c) 1999 * Shin Takemura and PocketBSD Project. All rights reserved. @@ -45,6 +45,7 @@ #include #include +#include /* hpcmips_verbose */ #include #include #include @@ -56,18 +57,27 @@ #define DEBUG_IO 1 #define DEBUG_INTR 2 #ifndef VRGIUDEBUG_CONF -#define VRGIUDEBUG_CONF DEBUG_IO -/* #define VRGIUDEBUG_CONF 0 */ +#define VRGIUDEBUG_CONF 0 #endif /* VRGIUDEBUG_CONF */ int vrgiu_debug = VRGIUDEBUG_CONF; #define DPRINTF(flag, arg) if (vrgiu_debug & flag) printf arg; #define DDUMP_IO(flag, sc) if (vrgiu_debug & flag) vrgiu_dump_io(sc); #define DDUMP_IOSETTING(flag, sc) \ - if (vrgiu_debug & flag) vrgiu_dump_iosetting(sc); + if (vrgiu_debug & flag) vrgiu_dump_iosetting(sc); +#define VPRINTF(flag, arg) \ + if (hpcmips_verbose || vrgiu_debug & flag) printf arg; +#define VDUMP_IO(flag, sc) \ + if (hpcmips_verbose || vrgiu_debug & flag) vrgiu_dump_io(sc); +#define VDUMP_IOSETTING(flag, sc) \ + if (hpcmips_verbose || vrgiu_debug & flag) vrgiu_dump_iosetting(sc); #else #define DPRINTF(flag, arg) #define DDUMP_IO(flag, sc) #define DDUMP_IOSETTING(flag, sc) +#define VPRINTF(flag, arg) if (hpcmips_verbose) printf arg; +#define VDUMP_IO(flag, sc) if (hpcmips_verbose) vrgiu_dump_io(sc); +#define VDUMP_IOSETTING(flag, sc) \ + if (hpcmips_verbose) vrgiu_dump_iosetting(sc); #endif #define LEGAL_INTR_PORT(x) ((x) >= 0 && (x) < MAX_GPIO_INOUT) @@ -138,9 +148,9 @@ vrgiu_attach(parent, self, aux) #ifdef WINCE_DEFAULT_SETTING #warning WINCE_DEFAULT_SETTING #else - DPRINTF(DEBUG_IO, ("WIN setting: ")); - DDUMP_IOSETTING(DEBUG_IO, sc); - DPRINTF(DEBUG_IO, ("\n")); + VPRINTF(DEBUG_IO, ("WIN setting: ")); + VDUMP_IOSETTING(DEBUG_IO, sc); + VPRINTF(DEBUG_IO, ("\n")); vrgiu_regwrite_4(sc, GIUINTEN_REG, sc->sc_intr_mask); #endif @@ -159,11 +169,11 @@ vrgiu_attach(parent, self, aux) vrip_giu_function_register(va->va_vc, &vrgiu_functions, self); /* Display port status (Input/Output) for debugging */ - DPRINTF(DEBUG_IO, ("I/O setting: ")); + VPRINTF(DEBUG_IO, ("I/O setting: ")); DDUMP_IOSETTING(DEBUG_IO, sc); - DPRINTF(DEBUG_IO, ("\n")); - DPRINTF(DEBUG_IO, (" data:")); - DDUMP_IO(DEBUG_IO, sc); + VPRINTF(DEBUG_IO, ("\n")); + VPRINTF(DEBUG_IO, (" data:")); + VDUMP_IO(DEBUG_IO, sc); /* * General purpose bus