Commit Graph

1388 Commits

Author SHA1 Message Date
chuck 8bef431273 remove unused share map code from UVM:
- update calls to uvm_unmap_remove/uvm_unmap (mainonly boolean arg
        has been removed)
1998-10-11 23:20:59 +00:00
thorpej 908cdfe4e3 Add scsibus entry points to the cdevsw[]. 1998-10-10 02:00:49 +00:00
thorpej 29d472f53d Garbage-collect the open_target_lu and close_target_lu entry points from
struct scsipi_adapter; they were not used.

Add a scsipi_ioctl entry point to struct scsipi_adapter.  This will be
used to issue ioctl commands to the host adapters.

Inspired by PR #6090, from Matt Jacob.
1998-10-10 00:28:28 +00:00
is 6662b5ed74 - define framework for >8bit transfers
- implement 16 bit contiguous and 16 bit interleaved, both big-endian
1998-10-08 21:46:39 +00:00
thorpej b38544d99e Oops, back out a buglet I didn't intend to commit in the last change. 1998-10-07 18:29:26 +00:00
tron 8362affa14 Add a few "nop" instructions to make the memory size probe more reliable. 1998-10-06 22:26:42 +00:00
thorpej d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +00:00
thorpej c01f29bdf1 Sigh, we are going to have to burn a vector for Just Sigreturn again,
for now, until we have a more generic {get,set}context().  Update the
comment for trap #3 accordingly.
1998-10-04 23:38:55 +00:00
is 66d6e30a1b Yet another workaround for pmap bugs. Several reports on the port-amiga
list claim this helps with some big-machine situations.
1998-10-02 19:29:49 +00:00
thorpej d15a64c38b Adapt to signal changes. 1998-10-01 02:53:53 +00:00
thorpej 8b220e1148 Define SYS_compat_13_sigreturn13. 1998-10-01 00:29:51 +00:00
thorpej bcf14a99e2 Garbage collect trap #1 and trap #2 handlers; they're moved to
trap_subr.s
1998-09-30 23:47:33 +00:00
thorpej 1e62485c23 If !COMPAT_13, make trap #1 produce an illegal instruction. Fix the comment
for trap #2 to reflect that it's the trace trap.
1998-09-30 23:13:58 +00:00
thorpej a11e6632a8 Pull in opt_compat_netbsd.h 1998-09-30 23:01:28 +00:00
thorpej 35d282c8d5 Make sure SYS_exit and SYS___sigreturn14 are defined. Garbage collect
SYS_sigreturn.
1998-09-30 22:23:13 +00:00
thorpej 38084c6615 Note that trap #1 is compat_13_sigreturn, and give trap #3 to syscalls
which require special handling, e.g. sigreturn on m68k.

This differs from the old sigreturn trap in that we require the syscall
number to be in register d0, just like the regular syscall entry point.
This will allow sigreturn to be versioned in the future without the need
to allocate another trap vector.
1998-09-30 22:14:11 +00:00
is 6eb98a7967 4/NPTEPG is 0. This is a very old editing error. 1998-09-26 19:26:58 +00:00
is 95807e512a Garbage collect unused 3rd parameter to comprobe1(). 1998-09-16 21:30:58 +00:00
mycroft 7b15b3b56d Minor change. 1998-09-13 12:01:41 +00:00
is 283229c668 Fix catastrophic typo. DraCos rev. 3 (or older) would crash on exiting from
the first timer interupt.
1998-09-10 20:45:33 +00:00
thorpej 70e641047c In cpu_coredump(), use MID_MACHINE rather than MID_* (whatever it expands
to).
1998-09-09 11:17:24 +00:00
thorpej 8abe0d6b1c Adjust for the new "reaper" kernel thread: do not free the vmspace and
u-area in machine-dependent code.  Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
mhitch 3299eb8c5b Fix error in kernel shadow mapping when kernel is loaded into fastmem on
69040/060 and the number of initial KPT pages is odd.  This would cause
a memofy fault before the 040 trap routines were set up and gave a
misleading trap message.  The odd number of KTP pages would result if
Sysptsize was patched, or if a large amount of Zorro3 space was needed.
1998-09-07 19:50:17 +00:00
is 1fd18c6ecf Define is_draco() inlined.
Corresponds to removal of this function in autoconf.c 1.61.
1998-09-05 21:10:55 +00:00
lukem c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
is 0eb25ce882 Add support for Apollo-68060-board-reworked A3000 motherboards.
This is only tested on the original A3000...
1998-09-04 22:00:27 +00:00
is a99b5503f1 Account for the 68060 store buffer. 1998-09-04 21:19:07 +00:00
is c38a877ead Add bus_space_read_region_1/bus_space_write_region_1 to the Amiga bus.h. 1998-09-02 23:00:04 +00:00
is a3ee69c87a Split SMC chipset ARCnet driver into
- machine independent chip driver, in dev/ic/smc90cx6.c/...reg.h,...var.h,
  using bus_space methods
- ZBUS frontend in arch/amiga/dev/if_bah_zbus.c
- added IPL_SOFTNET to arch/amiga/include/intr.h, for this
Implementing the ISA bus frontend is left as an exercise to the reader.
1998-09-02 22:32:06 +00:00
mhitch 7a359022d9 Re-enable mfc and msc serial drivers. Both compile, but only mfc is
currently known to work [I can't test the msc changes].
Add commented-out UVM option (until UVM is standard).
1998-09-01 02:40:36 +00:00
mhitch 1d7e0301d3 Quick fix for TS_WOPEN -> t_wopen change. Compiles, but I can't verify
that it actually works again.
1998-09-01 02:33:32 +00:00
mhitch b741e97082 Quick fix for TS_WOPEN -> t_wopen change. Compiles and works. 1998-09-01 02:30:29 +00:00
is 9948205c5a Prepare for support of Apollo-cpuboard-reworked A3000 mainboard SCSI. 1998-08-21 19:13:27 +00:00
is ae8175cb09 Workaround for the incomplete fastmem loading scheme: put uptbase lots higher,
so that hopefully it doesn't get overwritten by the 1:1 mapped kernel copy.
See line 375 for an explanation.
1998-08-21 18:51:58 +00:00
veego ff2c3adddc Add some braces to stop the new egcs warnings. 1998-08-20 19:55:06 +00:00
augustss cd09067eb4 * Redo the way the way the MIDI driver attaches to audio devices.
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
  The opl driver is not finished yet; it sounds pretty awful.

For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.
1998-08-17 21:16:09 +00:00
mycroft a1ac68819f Assign my copyrights to TNF. 1998-08-17 00:26:32 +00:00
mycroft d07b3639a4 Assign my copyrights to TNF. 1998-08-15 17:47:15 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
is 8b950c2a65 Get rid of AMIGA_UPTBASE.
Replace it by a variable, which is initialized in amiga_init.c.
This will make the kernel actually work even if we have lots of Zorro-III
(or DraCo direct bus) i/o space.
1998-08-12 19:46:12 +00:00
is f8dd65f3f5 Fix ommision in last backout. 1998-08-10 20:23:50 +00:00
is c81476c89d ISDN Blaster / Master: ZBus attachment / SUPIO driver. 1998-08-10 18:53:31 +00:00
is e5439fc15b Back out last change --- it doesn't work this way 1998-08-10 18:43:06 +00:00
is 878203d616 Cosmetics: it's a "HyperCom 3Z" on a ZBUS, no "HyperCom 3". 1998-08-09 22:25:18 +00:00
is 98f1a01dec Actually probe the hardware.
This is for HyperCom 3i slaveboards (to be done soon) that might or might not
sit on top of a HyperCom 3Z or HyperCom 4 or ISDN Blaster.
1998-08-09 22:08:40 +00:00
kleink 88191aeeee Reduce this file as done in the Alpha RAMDISK configuration, which makes
keeping it in sync less prone to errors.
1998-08-08 12:59:43 +00:00
kleink 3dc1e8147c Kill "options FIFO" - they're mandatory now. 1998-08-04 11:19:02 +00:00
thorpej 3ff8e6493a Don't cast the null residual pointer passed to vn_rdwr(). 1998-07-28 18:34:52 +00:00
is 8eebf1cfc5 yet more atomic operations accessing DraCo registers 1998-07-26 06:45:17 +00:00
is 401f1157b0 Use atomic operations for DraCo interupt registers 1998-07-25 11:01:11 +00:00
is 3d0dcc7181 This has been in amiga/amiga/mtpr.h for a long, long time. 1998-07-25 07:21:20 +00:00
is 0751419914 Back out previous change. It breaks Seyon in a non-obvious way. 1998-07-22 19:13:02 +00:00
drochner 49bb9d8214 adapt to LANCE driver split 1998-07-21 17:36:01 +00:00
is 6054d626f9 Switching dev/ic/lpt.c to use spllpt() instead of spltty(). It doesn't use
tty structures, and on some machines (namely the DraCo internal lpt, and some
multi-i/o boards for Amigas and DraCos), tying spltty to the pretty high printer
interupt level would hurt serial performance.

On all affected ports but Amiga, spllpt() has been defined in machine/intr.h
to be spltty(), thus preserving old behaviour. Portmasters are encouraged to
change is, if they feel something else is better (e.g., one of its own were
possible).
1998-07-18 21:27:25 +00:00
is 52ac5e203e Precompute lots of bitmasks etc. in serparam(). Results in slightly better
(but I suspect, insignificant) performance, and also prepares for 8bit +
parity support.
1998-07-18 20:19:33 +00:00
mhitch 32a0c413a5 Oops - check and calculate maxproc with right symbols - maxproc was getting
incorrectly reduced for UVM.
1998-07-14 03:17:05 +00:00
veego 1b46ebe1d9 Add elf_machdep.h to the INCS list. 1998-07-12 17:53:29 +00:00
thorpej 639cc899cf Basic elf_machdep.h for m68k; doesn't include relocations, yet. 1998-07-12 01:17:58 +00:00
mhitch 7b04d96d02 Add UVM support to amiga.
Use a second free memory list for 16-bit Zorro II memory other than the
first memory segment.
1998-07-10 20:26:35 +00:00
mhitch dc9188e3e1 Add UVM support to amiga 1998-07-10 20:23:24 +00:00
mhitch 6e2d9eae80 Support two free memory lists; second list will be 16-bit Zorro II memory. 1998-07-10 20:16:21 +00:00
is 49ed29ab05 The INTF_RBF bit of INTREQ is mirrored in SERDAT. As we would read this
register anyway when the bit is set, we can safe one of the (slow) custom
chip accesses by using this bit.
Sounds ridiculous, but at a hardware FIFO depth of 1 and ~1 usec per
access (at IPL 5) it might help the highspeed addicts.
1998-07-07 16:46:38 +00:00
jonathan d275e56dee * defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID.
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 08:49:30 +00:00
jonathan 011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan 5c0c5dd0b4 defopt ISO TPIP. 1998-07-05 04:37:35 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
mhitch 34c823e939 A "GENERIC" kernel configured with a memory disk root. The miniroot can
now be inserted into the kernel for a self-contained installation kernel.
No more questions or problems trying to copy the miniroot to the swap
partition.
1998-07-03 22:27:59 +00:00
mhitch 65346d4042 Add memory disk. 1998-07-03 22:24:45 +00:00
mhitch 14a5ad4ce6 Make 'end' references consistant. Fixes PR#5670. 1998-07-03 22:21:42 +00:00
is 8a8208f978 Synchronize shadow ciab.pra variable on first open. 1998-06-29 19:31:19 +00:00
is 1bec8366fd Fix a problem with bogus hangups that Thorsten Frueauf has reported. 1998-06-26 17:50:20 +00:00
lukem bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej 8aee7782f5 defopt COMPAT_SUNOS 1998-06-25 23:40:33 +00:00
thorpej 971b8956ef defopt KTRACE 1998-06-25 21:18:11 +00:00
kleink 513959b129 `interupt' -> `interrupt' 1998-06-14 19:47:14 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
tv 00ede2160e Change ddb_init() for a.out to provision for kernels which are not booted by
the current 'bootblock' method, like the Shark, which preloads and preformats
the symbol table right in the boot code.
1998-06-09 01:57:41 +00:00
thorpej a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
is 07a089c48c Replace a couple of machineid uses by cputype uses. 1998-05-24 20:55:01 +00:00
is d96ca9b830 Fix thinko. Rather, nonthink-o. 1998-05-24 20:10:33 +00:00
is b20631e721 Last part of the opt_m68kcpu.h backout. 1998-05-24 20:06:32 +00:00
is 7a0f63f982 Back out the defopt for M680?0. As pointed out to me, this breaks ports which
dont use the M680?0 the way Amiga, Atari, Mac68k, and X68k do. I must have
missed this in the past discussion about this project.
1998-05-24 19:32:34 +00:00
is e58fc1f821 - remove some dependency lines which aren't needed anymore due to opt_m68kcpu.h
- There isn't any vfs_conf.o anymore.
1998-05-24 08:31:33 +00:00
is 6a6812fd92 Move M680[2346]0 to opt_m68kcpu.h.
XXX Some explicit dependencies could be removed now from the individual
arch/$ARCH/conf/Makefile.$ARCH files, but this is still to be done.
1998-05-23 20:51:06 +00:00
thorpej 6626878e7b It is no longer necessary for pmap_pinit() and pmap_release() to be
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
is db6e62f6ec pcb_ustp went away long ago. 1998-05-12 23:48:34 +00:00
chopps 9ed2f725ab add -m and -k flags 1998-05-08 23:03:49 +00:00
chopps 09332ff276 remove -Z (load from chipmem) flag
fix copier code (startit) to work bi-directionally.
change compiler optimization options to save some bytes
1998-05-08 19:08:18 +00:00
kleink aa36ad1f55 Fix some arithmetics lossage on typeless pointers. 1998-05-07 21:01:41 +00:00
veego 8a9498f09a Don't use an 'register char' as an array index, change it to an int. 1998-04-17 17:57:08 +00:00
veego d15b06459b Add missing int after an register. 1998-04-17 17:38:14 +00:00
is e61d6bdb82 Dont define splserial here... its now different from spltty. 1998-04-16 21:28:00 +00:00
is c61f5c0cc5 Uhm... looks like I forgot this when doing the MACHINE_NEW_NONCONTIG stuff.
Sorry folks.
1998-04-14 20:18:08 +00:00
tv b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
is 4e23fff56a Make ser.c compile again (preliminary release). It needs still a lot of
cleanup, but at least mainstream usage should be possible again (worked
for me 5 minutes ago).
1998-04-11 19:30:56 +00:00
is da0b5bf913 amiga_ttyspl -> amiga_serialspl (and keep ttyspl constant at 4 again).
(Part of this change slipped in with my last machdep commit; thanks to
Matthias Scheler for pointing this out).
1998-04-11 18:28:33 +00:00
mhitch 11b4024ccf Initialize proc0.p_addr so we don't dref NULL in trap(). [From hp300 locore.s]
Fixes PR 5281.
1998-04-11 16:13:57 +00:00
mhitch 18114765d8 Fix a bug I think I introduced long, long ago. The bug would only show
up on systems that have Zorro I/O space allocated outside the Z2 I/O
region, and then only if kvm usage is high enough to begin allocating
pages already mapped for hardware mappings.  Found and fixed by Niklas
Hallqvist on OpenBSD.

From niklas@cvs.openbsd.org:
Yay! This fixes a bug that has been there since day one of the amiga port.
We have never protected the kvm area that maps Zorro I/O registers in the
Z2 memory space from being allocated by the kmem_* routines.  Lately kvm
usage has increased and we have needed more kvm allocated than earlier thus
this area have got allocated with random results.  Most often resulting in
MMU fault panics, but also in hangs.  This bug has stalled the amiga port
release builds for several weeks, but now I *hope* the amiga will have a
chance to be built and tested in time for 2.3.
1998-04-10 15:59:35 +00:00
is 1e9c878d39 ser.c, mfc.c and msc.c dont compile currently. 1998-04-07 19:43:08 +00:00
is 6c7f702633 - remove one level of soft interupt in the software autorepeat code
- WOPEN -> wopen
1998-03-25 22:14:13 +00:00
is a798a71d08 MACHINE_NEW_NONCONTIG for NetBSD/Amiga. The older contiguous and
MACHINE_NONCONTIG stuff isn't supported anymore.
1998-03-22 23:12:49 +00:00
is 456d2a7c07 Add bus_space_subregion(). 1998-03-22 17:58:01 +00:00
is 6e806b8115 This is no longer DraCo-specific (and hasn't been for a long time). 1998-03-22 17:16:33 +00:00
bouyer 9f50fca1fd Add commented out "options FFS_EI" 1998-03-18 16:34:41 +00:00
is a830b47531 Ite keyboard map, for spanish Amiga keyboards.
Contributed by Inaki Saez <jisaez@sfe.indra.es>.
1998-03-13 19:28:11 +00:00
is 20251e62f9 Bug fix for the Ariadne panic: don't touch addresses outside the buffer we
got passed.
- analysis by Charles Hannum
- bugfix by Michael van Elst
- test by Thorsten Frueauf & Matthias Scheler
1998-03-09 17:00:33 +00:00
is 90e5d61467 Conditionally (on defined(DRACO)) compile new DraCo keyboard code sequences.
Pointed out by Bernd Ernesti.
1998-03-08 19:59:15 +00:00
is eb3cda883b Probe for the native DraCo (rekeycaped MF-II) keyboard, instead of guessing
it from the QuickLogic chip version byte.
If found, switch it to non-autorepeat mode (which seems to avoid the race
condition which made my keyboard driver / X server lose state under heavy
interupt load).
If not found, assume an Amiga keyboard on CIA-A.
XXX We should probe for the presence of the CIAs on the DraCo.
1998-02-28 21:53:15 +00:00
perry 1ed8ea9966 note second parm of sysarch() is now void *, + trivial KNF, etc. 1998-02-25 21:41:55 +00:00
is 85c6760e2d Initialize keyboard structures also from kbdopen(), if necessary.
To do this, move the flag variable to kbdenable().
This will make kernels with serial console provice a working keyboard driver.
1998-02-23 00:47:30 +00:00
is 7667dac2d2 Actually fix, rather than mask, the Amiga big machine panic: the pmap needs
to (pre)allocate enough kernel page table pages to (among others) map the
buffer cache buffers.
1998-02-22 22:51:46 +00:00
thorpej 772da350d4 Disable the message buffer during crash dumps by clearing msgbufenabled,
not msgbufmapped.
1998-02-19 04:18:30 +00:00
cgd 3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
is 31c87441a4 Cosmetics. Pointed out by Matthias Scheler. 1998-02-17 19:42:38 +00:00
thorpej 8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
scottr f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
is cb1085870c Add the LIMITMEM workaround for the kernel address space size problem.
Will be removed as soon as the kernel can auto-adapt to its address space.
1998-02-09 22:14:43 +00:00
is dcc4b3ec64 Get rid of std.draco file.
Amiga specific devices must be named in GENERIC, too.
While here, add vnd pseudo-devices to DRACO.
1998-02-05 20:07:15 +00:00
mycroft b5c132e4d2 Prototype __flt_rounds() consistently. 1998-02-03 01:26:20 +00:00
is b3fa451227 Amiga uses the common m68k/sig_machdep.c now. Also moved its definition from
the other 68k ports' files.${port} to arch/m68k/conf/files.m68k.
1998-02-01 21:23:24 +00:00
mycroft 15ae963bea When dumping, print out the device number as major,minor. 1998-01-24 16:46:23 +00:00
is 53d89006d1 If on the M68060, make cache-inhibited pages imprecise. Reads and writes
are still in-order, but cached reads dont wait for the last write to finish.
Xamiga on a Altais in 8bit-mode became 30% faster servicing xanim (well, 6%
if you count xanim, too).
1998-01-22 23:13:40 +00:00
is 632b1123ba struct cfdrivers are emitted by config(8) into ioconf.c, nowadays. Delete
mainbus_cd here.
1998-01-15 21:55:51 +00:00
thorpej 0b6e56ec02 Adjust for changes to config. 1998-01-12 10:39:01 +00:00
is 5d5c1cd59e - avoid system stack underflow when calling sigreturn via trap #0
- make sure all sigreturn error conditions are reported to the caller,
  instead of the place jumped to.
This is the bugfix part of pr 4628 by ITOH Yasufumi.
The performance optimization part will be handled seperately, after evaluating
its implications.
Testing on 68040 and removing the performance change from the proposed patch
by scottr. Half of the Amiga machdep.c change had to be done manually by me,
as the patchfile didn't apply cleanly.
XXX Yes, Amiga should be changed to use the common sig_machdep.c instead.
XXX Really soon now. I promise.
1998-01-07 22:46:00 +00:00
is d002f566b3 Support 68060 (and, for the Amiga, even 68040 buserr frames) in the sendsig()
and, indirectly, sigreturn() functions.
XXX The Amiga should be switched to using sig_machdep.c instead.
1998-01-06 20:50:22 +00:00
thorpej 6ac24f05df Garbage-collect VM_PMAP. 1998-01-06 08:46:11 +00:00
thorpej 2317f9064e Garbage-collect pm_stchanged. 1998-01-06 08:40:50 +00:00
thorpej 07f835de1f Garbage-collect PMAP_ACTIVATE() call here; it's no longer necessary. 1998-01-06 07:49:36 +00:00
thorpej 61567b54de Garbage-collect pm_stchanged; it's not used by anything. 1998-01-06 07:02:58 +00:00
thorpej d11b109f2b Garbage-collect use of the PCB's copy of the user segment table pointer. 1998-01-06 06:51:40 +00:00
thorpej ab9b250a37 The user segment table pointer is no longer kept here. Change it to
a spare field.

XXX Should be changed to use generic m68k PCB!
1998-01-06 06:47:04 +00:00
thorpej a8f80ad4fd Fix a bogosity apparently inherited from when the Utah 4.3BSD code base
was converted to use Mach VM for Net2/4.4BSD.  The user segment table
pointer was originally stored in the PCB.  When Mach VM came along,
however, it was also stored in the pmap, and loaded into the PCB in
pmap_activate().  pmap_activate() would then note that the PCB's USTP
was now in sync with the pmap's USTP, and the low-level context switch
code would use the value from the PCB.

However, pmap_activate() would also load the hardware MMU context if
the pmap was the current pmap (or, in the case where pmaps can be shared,
such as in NetBSD, if the proc was the current proc).  The low-level
context switch code would then reload the hardware _again_ using the
USTP from the PCB.

However, the optimization of not calling pmap_activate() if "stchanged"
was false ended up causing some processes to use stale USTP values from
the PCB when the low-level context switch code reloaded the hardware!
This was noticed by using a real vfork(2) (which worked for some time
before failing, surprisingly!)

Since I'm hard pressed to find any real optimization here (since the
hardware was always reloaded once, sometimes twice!), the code now always
calls pmap_activate(), which uses the correct USTP value (the one in the
pmap).  The PCB's USTP is now ignored, and should eventually be g/c'd.

Another optimization can actually be performed, and I have added a comment
describing what it is, but have not yet implemented it.

Also note that most of the loadustp() functions where actually incomplete.
This has been corrected.  These functions should probably be split up into
MMU-specific operations, and called indirectly, rather than doing constant
run-time decision making based on values that will never change during the
course of a boot's lifetime.
1998-01-05 23:16:21 +00:00
perry 3625dbcd48 RCSID Police. 1998-01-05 21:34:56 +00:00
perry b46484bb8a RCSID Police. 1998-01-05 20:51:25 +00:00
thorpej b9f1b716f3 Now that all ports have pmap_activate(), and it has an identical interface,
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
thorpej dd966fca05 Change an argument name to PMAP_ACTIVATE() to more accurately describe the
semantics of the argument.
1998-01-01 20:05:23 +00:00
thorpej 287b63b321 - Make pmap_activate() and pmap_deactivate() take a struct proc *.
- Define active_user_pmap() and use it in the appropriate places (from hp300
  port).
1998-01-01 19:52:50 +00:00
perry 589a5e2c79 patch from is -- I don't know what it does, but he says it's critical. 1997-12-20 21:13:13 +00:00
tv 0a558b3f1f Standardize COMPAT_SUNOS -- remove all references to
sunos_exec_aout_makecmds() in machdep.c for various architectures and put
it in exec_conf.c like the other emulations; rename exec.h to
sunos_exec.h.
1997-12-04 15:33:17 +00:00
kleink c87631771e Add COMPAT_13. 1997-12-01 14:52:51 +00:00
mhitch c9d1ca0df4 delay() is using calculated timing, so correct the delay during polled
SCSI wait to get a more accurate timeout.
1997-11-27 22:43:44 +00:00
is a90ace971a Workaround for the "xanim volume setting problem":
We play mono samples on all 4 channels.
However, we get the volume settings for mono samples as a symmetic two-channel
setting... the other two channels used to stay at max volume...
I believe that something else is wrong here, but dont want to change MI
code (which in turn influences a couple of MD driver) thus late in the release
cycle.
1997-11-24 21:00:50 +00:00
veego 0fe37675f7 Ups, forget a 'i'. 1997-11-23 23:26:03 +00:00
lukem 6c986561ee * add commented out DDB_HISTORY_SIZE=100 if DDB exists in config file
* fix up use of 'options<SPACE><TAB>'
1997-11-17 01:57:23 +00:00
is ad4c422ef9 Oops. Somehow the code to actually config_find the BBC on A1200s wasn't
committed.
1997-11-13 23:03:10 +00:00
thorpej ce4c770f88 Make sure CPP, AR, AS, and RANLIB are defined. 1997-11-12 23:11:50 +00:00
thorpej a421995756 Define LORDER, NM, and TSORT here, like we do the rest of the tools. 1997-11-12 22:25:31 +00:00
is 9360bfcc81 Remove remnants from ISA com console attachment code, which caused, due
to missing variable initialization, a panic on the DraCo.
1997-11-10 22:29:03 +00:00
is ff1fd132f3 Forgot this yestereve: s/CV64CONSOLE/CV3DCONSOLE/ 1997-11-10 12:17:20 +00:00
is f31e12d69d - recognize CV3D in Zorro-II mode.
- use board address space > 4 MB, instead of iszthreepa(), to detect Z3-mode
  boards. We dont want the bus, but want the address configuration.
- s/CV64CONSOLE/CV3DCONSOLE/
- s/cv3d_zorroIII == 1/cv3d_zorroIII/ and s/cv3d_zorroIII != 1/!cv3d_zorroIII/
1997-11-09 23:30:47 +00:00
chopps 7b80c0d8fa make GENERIC more generic 1997-11-02 18:47:02 +00:00
lukem 3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
veego d2ec787a03 Remove the unsuported options COMPAT_HPUX.
Enable COMAPT_09 and COMPAT_10 for old binaries.
Enable the console options for the CyberVision 64/3D and fix a typo for
ite7.
1997-10-29 21:16:48 +00:00
veego 6352bbdb7c The Console driver works now.
Added some fixes for Zorro2 mode, but keep it still disabled.
1997-10-29 20:00:47 +00:00
is c3feaf6bf5 Make splserial == spltty, for now. This should be revisited after the
release.
1997-10-27 22:13:25 +00:00
veego 2d11975bbd Include <bsd.subdir.mk> to build SUBDIRS. 1997-10-27 00:24:54 +00:00
is a16fd7d74e Make these compile after m68k/m68k.h 1.4->1.5. 1997-10-26 21:41:34 +00:00
mhitch 5b2fd76fd3 Don't rely on fixed padding to longword align the buffer used for non-aligned
transfers - compute aligned address when interface is attached.  Fixes PR#4258.
1997-10-24 01:50:03 +00:00
mhitch 9bec32eefe Check manufacturer and product codes correctly. The Blizzard 2060 driver
was trying to configure on a Cyberstorm MKI SCSI.
1997-10-24 01:43:49 +00:00
is 6c04d467ec Make l different from |.
Downgrades PR 1998 from software bug to change request.
1997-10-21 12:29:30 +00:00
is 25d10d4369 zbus.c 1997-10-19 21:22:19 +00:00
veego f08eca2b03 Add CyberVision 64/3D support. 1997-10-19 19:20:30 +00:00
veego 7017046979 New unit number for the CyberVision 64/3D. 1997-10-19 19:08:00 +00:00
veego 09b9eff341 Add an entry for the CyberVison 64/3D to the aconftab and to the
preconftab list.
1997-10-19 19:07:08 +00:00
veego c9252fa879 First version of the CyberVision 3D driver. This driver is based on
the CyberVision64 driver. Modified by Tobias Abt with some bugfixes
from Bernd Ernesti.
ZorroII is at the moment not supported and there is a small problem
with the Console driver where you just get a black screen, but the
system boots and you can use X11 without a problem.
1997-10-19 18:55:21 +00:00
augustss e7029fc0da Make the audio API (almost) SunOS compatible.
The changes is to allow some limited mixer manipulation through
the audio device (instead of the mixer device).
This rendered 4 methods in audio_hw_if unused so garbage collect these.
1997-10-19 07:41:33 +00:00
is fa78c4ba06 Driver for the VMC HyperCom3/zbus and the VMC HyperCom4.
lpt on HyperCom3 isn't supported yet.
1997-10-18 23:31:32 +00:00
is 84a59e77b2 Stopgap measure to handle EXTER interupts for the DraCo. Maybe this should
be handled by the locore.s code like for Amigas, but DraCos dont have
necessarily a CIA B.
1997-10-18 23:18:40 +00:00
is 61f82620c4 Part of this is voodoo from the sparc/machdep.c, part guesswork. 1997-10-18 10:50:50 +00:00
is d3baeaf812 Stopgap for splaudio(), needed by the Melody driver.
This will be replaced soon by something similar to the spltty stuff.
1997-10-17 19:39:34 +00:00
is 11446b9b6e TMS320AV110 (mpeg layer 2 decoder chip) and ZBUS Melody board, which uses it.
No optionboards yet for Melody, only audio driver.
MPEG data types for audio.c
1997-10-16 23:58:10 +00:00
christos e42293ca28 fix chrtoblk declaration 1997-10-16 23:37:34 +00:00
is 57ce3eaaf4 Move zbus attachment to the end, so that motherboard devices don't "jump"
if zbus devices of the same class are added.
1997-10-16 21:39:10 +00:00
thorpej 8bae901f73 Adjust for new home of "com" driver. 1997-10-16 01:06:37 +00:00
thorpej 19b8a62d74 Garbage-collect "com" driver declaration. 1997-10-16 01:02:56 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
mhitch 31508593d3 Oops, wrong file was committed. Get the right one this time. 1997-10-12 19:32:12 +00:00
mhitch 7c5af2d5da Fix typo from DIOCGDEFLABEL implementation. 1997-10-11 16:13:19 +00:00
mycroft 3081c6f8cf AudioC[A-Z] -> AudioC[a-z]
AudioElinear -> AudioEslinear
1997-10-11 12:43:51 +00:00
mycroft a7aef46287 Use m68k/Makefile.inc. 1997-10-11 09:11:17 +00:00
mycroft 5c8d588138 Nuke NOOBJ. 1997-10-11 08:44:42 +00:00
mycroft acf0e569a5 Update all the tags goo, and use bsd.subdir.mk. 1997-10-11 08:42:02 +00:00
scottr 017e6c7f10 Address PR 4120 by synchronizing v{,un}mapbuf() with the i386 vm_machdep.c,
v 1.27, pulling in changes made there by Charles Hannum.  Also, incorporate
a few tweaks made by Gordon W. Ross in the sun3 version of this change.
1997-10-11 06:38:45 +00:00
mhitch 76b5a9517f The Blizzard-IV SCSI driver is now separate from the Blizzard-II. 1997-10-10 04:56:09 +00:00
mhitch 06ff9502c2 Add separate driver frontend for the Blizzard-IV; the differences with
the Blizzard-II are more extensive than I orginally thought.
1997-10-10 04:53:32 +00:00
is 9f6d6708f4 Help crosscompiling, by as -> $(AS). Define AS?= as in the calling
Makefile.$(ARCH)es. Will hopefully fix the (remaining) part or pr4010.
1997-10-09 20:40:18 +00:00
jtc c8f77c0b8b Fix tipo inherited from old version of TNF copyright template. 1997-10-09 07:25:45 +00:00
thorpej e3834cc351 Implement DIOCGDEFLABEL. 1997-10-08 23:37:50 +00:00
is e183d29c61 Oops, I forgot this when doing the recent 060sp make system change. 1997-10-07 19:23:37 +00:00
veego d39db07047 Update the 'depend on CPU configuration' section for the new or updated
ncr53c9x frontends.
1997-10-05 17:19:35 +00:00
veego b59e0fd6a7 Unused files after the sfas driver is replaced by the MI ncr53c9x driver. 1997-10-05 17:12:44 +00:00
thorpej 92a347c574 Copyright assigned to The NetBSD Foundation. 1997-10-04 09:38:47 +00:00
mhitch 66e9e9018c Replace Fastlane and Blizzard SCSI driver frontends, using the machine
independent ncr53c9x driver.  Add 12x0-IV support to the 1230 driver, and
add Cyberstorm SCSI I and II drivers.
1997-10-04 04:01:17 +00:00
mhitch 3d83dee874 Use a global variable to hold the current speed of the internal serial port.
This will be used by certain SCSI drivers to limit the length of DMA transfers
when the serial port is running at higher speeds.  GVP and Phase5 DMA
interfers significantly with CPU execution, and significantly increases
receive buffer overruns (silo overflow).  Reducing the DMA transfer length
can reduce the overruns.
1997-10-04 03:59:36 +00:00
lukem 7d508b124f define SIZE?=size, and use ${SIZE} instead of size. makes cross
compilation easier
1997-10-03 07:17:00 +00:00
christos 3996b53189 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:39:49 +00:00
is ac8e08ea4a When changing btst #7,_machineid+3 to cmpl #CPU_68060,_cputype, I forgot to
reverse the conditional branches. "We apologize for the inconvenience."
1997-09-29 20:52:05 +00:00
is d5e867bb03 Build the 68060 support package in the kernel build dir.
XXX PCB_ONFAULT is still hardwired to 64 in netbsd060sp.S.
1997-09-28 20:49:56 +00:00