diff options
author | asami <asami@FreeBSD.org> | 1996-11-13 02:00:17 +0000 |
---|---|---|
committer | asami <asami@FreeBSD.org> | 1996-11-13 02:00:17 +0000 |
commit | f530bd2c71777c0f554b94d405627688497be35e (patch) | |
tree | 6f88d1661c87ffa287555ab2bbb68a29259ee9ea /sys/pc98/i386 | |
parent | 3781f2dcb04f4f320bf7b51a32450154bf7d7030 (diff) | |
download | FreeBSD-src-f530bd2c71777c0f554b94d405627688497be35e.zip FreeBSD-src-f530bd2c71777c0f554b94d405627688497be35e.tar.gz |
Another round of resync and some added sound support.
sys/pc98/i386/machdep.c: sync with i386/i386/machdep.c
sys/pc98/conf/options.pc98: sync with i386/conf/options.i386
sys/i386/isa/sound: DMA auto initialize mode support for PC98.
contributed by: Akio Morita <amorita@bird.scphys.kyoto-u.ac.jp>
Definite 2.2 material, I believe.
Submitted by: The FreeBSD (98) Development Team
Diffstat (limited to 'sys/pc98/i386')
-rw-r--r-- | sys/pc98/i386/machdep.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/sys/pc98/i386/machdep.c b/sys/pc98/i386/machdep.c index c6539d9..23e1d67 100644 --- a/sys/pc98/i386/machdep.c +++ b/sys/pc98/i386/machdep.c @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $Id: machdep.c,v 1.11 1996/10/29 08:36:16 asami Exp $ + * $Id: machdep.c,v 1.12 1996/11/02 10:38:57 asami Exp $ */ #include "npx.h" @@ -210,17 +210,6 @@ cpu_startup(dummy) bootverbose++; /* - * Initialize error message buffer (at end of core). - */ - - /* avail_end was pre-decremented in init386() to compensate */ - for (i = 0; i < btoc(sizeof (struct msgbuf)); i++) - pmap_enter(pmap_kernel(), (vm_offset_t)msgbufp, - avail_end + i * PAGE_SIZE, - VM_PROT_ALL, TRUE); - msgbufmapped = 1; - - /* * Good {morning,afternoon,evening,night}. */ printf(version); @@ -994,6 +983,7 @@ init386(first) struct region_descriptor r_gdt, r_idt; int pagesinbase, pagesinext; int target_page, pa_indx; + int off; proc0.p_addr = proc0paddr; @@ -1340,6 +1330,12 @@ init386(first) /* now running on new page tables, configured,and u/iom is accessible */ + /* Map the message buffer. */ + for (off = 0; off < round_page(sizeof(struct msgbuf)); off += PAGE_SIZE) + pmap_enter(kernel_pmap, (vm_offset_t)msgbufp + off, + avail_end + off, VM_PROT_ALL, TRUE); + msgbufmapped = 1; + /* make a initial tss so microp can get interrupt stack on syscall! */ proc0.p_addr->u_pcb.pcb_tss.tss_esp0 = (int) kstack + UPAGES*PAGE_SIZE; proc0.p_addr->u_pcb.pcb_tss.tss_ss0 = GSEL(GDATA_SEL, SEL_KPL) ; |