Module Name: src
Committed By: cliff
Date: Fri Dec 11 23:57:38 UTC 2009
Modified Files:
src/sys/arch/evbmips/rmixl [matt-nb5-mips64]: machdep.c
Log Message:
- add another known/recognized psb_version ID#
- useing comcnfreq instead of -1 in rmixl_com_cnattach now
- MIPS_RESET_EXC_VEC is physical addr, no need for translation to phys
when reserving from phys memory (should never be in the list anyway).
- in rmixlfw_init(), when untested psb_version, initialize mem_clusters[]
(to use MEMSIZE)
To generate a diff of this commit:
cvs rdiff -u -r1.1.2.8 -r1.1.2.9 src/sys/arch/evbmips/rmixl/machdep.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/evbmips/rmixl/machdep.c
diff -u src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.8 src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.9
--- src/sys/arch/evbmips/rmixl/machdep.c:1.1.2.8 Mon Nov 16 23:57:26 2009
+++ src/sys/arch/evbmips/rmixl/machdep.c Fri Dec 11 23:57:38 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $ */
+/* $NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $ */
/*
* Copyright 2001, 2002 Wasabi Systems, Inc.
@@ -112,7 +112,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.1.2.8 2009/11/16 23:57:26 cliff Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.1.2.9 2009/12/11 23:57:38 cliff Exp $");
#include "opt_ddb.h"
#include "opt_com.h"
@@ -199,6 +199,7 @@
static uint64_t rmiclfw_psb_versions[] = {
0x4958d4fb00000056ULL,
0x49a5a8fa00000056ULL,
+ 0x4aacdb6a00000056ULL,
};
#define RMICLFW_PSB_VERSIONS_LEN \
(sizeof(rmiclfw_psb_versions)/sizeof(rmiclfw_psb_versions[0]))
@@ -282,7 +283,7 @@
rmixl_mtcr(0x400, 0); /* enable MMU clock gating */
/* set single MMU Thread Mode */
- /* TLB is partitioned (but 1 partition) */
+ /* TLB is partitioned (1 partition) */
/*
* Clear the BSS segment.
@@ -309,7 +310,7 @@
rmixl_obio_bus_mem_init(&rcp->rc_obio_memt, rcp); /* need for console */
#if NCOM > 0
- rmixl_com_cnattach(comcnaddr, comcnspeed, -1,
+ rmixl_com_cnattach(comcnaddr, comcnspeed, comcnfreq,
COM_TYPE_NORMAL, comcnmode);
#endif
@@ -374,9 +375,9 @@
0, round_page(MIPS_KSEG0_TO_PHYS(kernend)));
/* reserve reset exception vector page */
+ /* should never be in our clusters anyway... */
vm_cluster_cnt = ram_seg_resv(vm_clusters, vm_cluster_cnt,
- MIPS_KSEG1_TO_PHYS(MIPS_RESET_EXC_VEC),
- MIPS_KSEG1_TO_PHYS(MIPS_RESET_EXC_VEC+NBPG));
+ MIPS_RESET_EXC_VEC, MIPS_RESET_EXC_VEC+NBPG);
/*
* Load vm_clusters[] into the VM system.
@@ -388,6 +389,7 @@
last = round_page(vm_clusters[i].start + vm_clusters[i].size);
DPRINTF(("%s: %d: %#"PRIx64", %#"PRIx64"\n",
__func__, i, first, last));
+
uvm_page_physload(atop(first), atop(last), atop(first),
atop(last), VM_FREELIST_DEFAULT);
}
@@ -428,7 +430,6 @@
#endif
}
-
/*
* ram_seg_resv - cut reserved regions out of segs, fragmenting as needed
*
@@ -625,6 +626,11 @@
rmixl_puthex64(rmixlfw_info.psb_version);
rmixl_puts("\r\n");
#endif
+
+ /* XXX trust and use MEMSIZE */
+ mem_clusters[0].start = 0;
+ mem_clusters[0].size = MEMSIZE;
+ mem_cluster_cnt = 1;
return MEMSIZE;
found: