Commit Graph

1466 Commits

Author SHA1 Message Date
ragge bd66c9dafc Make the HDC9224 MFM device driver up-to-date; has been not-working
since NetBSD 1.2 (!) It also uses interrupts instead of polling now.
Also fix the DMA area locking between SCSI and MFM disks.
Still missing - floppy support.
2000-06-25 16:00:43 +00:00
kleink 133ea38323 Add a WEAK_ALIAS() macro. 2000-06-23 12:18:45 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
matt 15511d1dcc Move COFF_LDPGSZ to ibcs2_machdep.h. Fix nmagic loader to deal with
subpage mappings.
2000-06-21 05:45:15 +00:00
ragge e79e5730cc Variable "from" must be in first block read from disk, otherwise it will be
overwritten on non-VMB machines.
2000-06-19 20:05:17 +00:00
matt 1293f1b88b Rename ncr[5380] device to si to more consistent with other ports.
Add VAX660 to cputype.h.  Remove needs-flag from si & asc entries.
2000-06-19 04:22:14 +00:00
matt 955a631ce4 We use opt_cputype.h now. 2000-06-18 22:47:19 +00:00
matt 4e6d07206d make printf happy. 2000-06-17 01:05:11 +00:00
matt ff76991706 Add an installboot. 2000-06-17 01:01:06 +00:00
matt 94956e7869 Adjust this a bit so that the primary entry point is 0x200, not 0x0a. 2000-06-17 01:00:17 +00:00
matt 4343326b78 Add an installboot(8) for vax. This is needed so the VAX can do multiboot
CDroms.
2000-06-17 00:59:24 +00:00
matt bd160eabec these are obsolete now that vax uses sysinst. 2000-06-16 06:36:45 +00:00
matt 1e3f670589 This file now lives one level down in common. 2000-06-16 06:35:12 +00:00
matt 2aaf9eb5c7 now lives one level down in boot. 2000-06-16 06:33:22 +00:00
ragge 53cc7ebe6b Standalone device driver for DEBNx (ni) ethernet controllers. 2000-06-15 19:53:23 +00:00
ragge 8767feaaff Recognize "ni" as boot device. 2000-06-15 19:49:37 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
ragge 2df63a9cc1 Evil bug: sizeof(struct cpu_info) -> sizeof(struct ka820_softc). 2000-06-12 11:26:26 +00:00
ragge 8ea974e809 Put all cputype definitions in one file instead of separate files.
This was becoming unmaintainable.
2000-06-12 11:13:14 +00:00
matt 7f40194cbc Make spl0 & spllowersoftclock return void. 2000-06-11 23:33:37 +00:00
matt 0dc4d9cf90 export bus.h 2000-06-11 23:32:55 +00:00
matt e910b71c73 Comment out asc0 for vs4000/90. remove slip/ppp. 2000-06-11 23:32:10 +00:00
matt 3dfb96fa8f Add local symlink so that machine & vax refer ../../include instead of the
system ones.
2000-06-11 23:30:35 +00:00
ragge 11b7c895aa Remove some unneeded code. 2000-06-11 10:40:06 +00:00
ragge fdc27c43a1 Fix booting from BI-based disks. 2000-06-11 10:39:26 +00:00
ragge e7aefcd7ae Allow printf's from slave CPUs by stealing the v_putc function.
Easier than expected because the printout lock is hold in the higher levels.
2000-06-11 07:50:11 +00:00
ragge b826825917 Code to spin up other CPUs on a VAX 8200 system.
Haven't solved the printf() problem yet, though.
2000-06-10 14:59:38 +00:00
matt 50dff37fd9 fix botch by me. 2000-06-10 05:24:46 +00:00
matt 2dde4ce0c9 Slight stylistic changes. Add KAME checksum routine. 2000-06-07 19:31:33 +00:00
jhawk c063b64a2b Do not clear msgbufenabled in dumpsys(). Dump messages will now go to
the message buffer. This can be invaluable in debugging if the dump
fails (assuming a persistant message buffer)
2000-06-05 23:44:55 +00:00
nisimura 4371d91433 Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +00:00
matt 661884208a add support for counting soft interrupts 2000-06-05 03:45:23 +00:00
matt 2f85fe7adb Adjust to new evcnt stuff. 2000-06-05 00:09:17 +00:00
matt ac621687a3 Add coff_machdep.h (now need due to the recent exec_coff changes). 2000-06-04 21:06:18 +00:00
ragge 1320a4106c Adopt to latest mba/hp changes. 2000-06-04 20:04:21 +00:00
ragge 79e7f9966d Adapt to mba changes. Fix assembler buf (EDIV uses 64-bit arg, not 32). 2000-06-04 19:58:17 +00:00
matt a8a863d4ea more cleanup. use __builtin_frame_address(0) instead of our funky
FRAMEOFFSET macro.  define an interrupt call frame and use that directly
instead of some magic offsets.  Make boot autoconf.o use the current
reality.
2000-06-04 19:30:14 +00:00
matt e2293f4ad0 Add a comment 2000-06-04 19:03:27 +00:00
ragge c46119030a Forward declaration of `struct proc'. 2000-06-04 18:27:39 +00:00
matt f08ff1ad2d use PR_IPL instead of 0x12.
align entries of various symbols.
2000-06-04 18:13:06 +00:00
ragge db7db1456e Remove home-grown interrupt vector handler.
Bus_space'ify; needed to get RH11 working. Still much more to do, though.
2000-06-04 18:04:38 +00:00
ragge d7a5a63645 Changes to sbi_attach_args. (and some cleanup) 2000-06-04 18:02:35 +00:00
ragge 1838716f7b Remove some unneeded code. (and cleanup). 2000-06-04 18:00:48 +00:00
ragge 82e0b5f7db Changes of sbi_attach_args. (and cleanup) 2000-06-04 17:59:50 +00:00
ragge 1e19df4bfd Clean up the sbi_attach_args struct and put in tag/handle.
Move a nice macro to scb.h.
2000-06-04 17:58:19 +00:00
matt 0bd304e528 More event counter stuff. Plus a little cruft cleanup while doing it. 2000-06-04 06:16:53 +00:00
matt 713121e8c4 Nuke it. It's in dev/qbus now... 2000-06-04 04:48:34 +00:00
matt 078c7563c2 newer version exists in dev/qbus. nuke this one. 2000-06-04 04:19:57 +00:00
matt 061896a992 now in dev/qbus so nuke this version. 2000-06-04 04:16:58 +00:00
matt 7c24069048 Add extra argument to scb_vecalloc (a struct evcnt *)
Move ivec_dsp from trap.h to scb.h
Add interrupt counting to asc, le, ze, ncr, dz interrupts.
add common support for counting interrupts to cnm_idisp so
it can be done very efficiently.
2000-06-04 02:19:24 +00:00
matt baaa1154d5 no need to raise ipl since the definition of softintr_schedule is that
it's from at or above softipl.
2000-06-02 22:14:10 +00:00
matt 34a96c661b replace spl4 with splconsmedia 2000-06-02 21:51:46 +00:00
matt d278b1da45 Add IPL_* codes.
Add other codes for struct references.
Add softintr framework for IPL_SOFTNET and IPL_SOFTSERIAL.
General cleanup of .s files replacing hardcoded structure offsets with
symbolic ones.
2000-06-02 21:51:15 +00:00
matt 83a385c230 use splsoftddb() instead of hardcoding the ipl. 2000-06-02 21:49:06 +00:00
matt b8cccfafd8 Move spl macros from <machine/param.h> to <machine/intr.h>
Fix botch on my part and make the IPL_* match reality on VAX.
Redefine spl macro using the symbolic IPL_ instead of being hardcoded.
Move schedsoftnet, schedsoftclock from <machine/cpu.h> to <machine/intr.h>
Add a _setsirr macro for schedsoft*.
Add softintr function and framework.
2000-06-02 21:47:02 +00:00
matt fb6a3dfb64 Include offsets in vs_cpu register in comments. 2000-06-02 21:39:54 +00:00
matt e488ca043b change void f() to void f(void) 2000-06-01 02:28:11 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
matt 22635242c9 Eliminate booted_from. extern'ed booted_device (for raidframe). nothing
outside autoconf.c in sys/arch/vax needs to deal with booted_device).
2000-05-31 23:55:51 +00:00
matt 7a66d70655 add placeholders for the MicroVAX 3400 (ka640). 2000-05-31 23:53:27 +00:00
thorpej 858becb7c2 In the MULTIPROCESSOR case, initialize p_cpu before a process is
marked SONPROC.
2000-05-31 05:10:54 +00:00
ragge 992002c2be Use the cpu_info struct to store cpu-specific data in the same way in
both uniprocessor and multiprocessor environments. Use the otherwise
unused internal CPU register SSP to store the cpu_info pointer.
The macros curcpu(), curproc, cpu_number() and need_resched() are now the
same in both uniprocessor and multiprocessor environments.
2000-05-29 20:00:55 +00:00
matt 33889a5e6c Enable DDB. 2000-05-28 20:21:04 +00:00
matt 166475069f fix it so it compiles. 2000-05-28 18:17:59 +00:00
thorpej e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
matt 141dcca251 Add VAX660/670/680 support. 2000-05-28 05:17:25 +00:00
ragge 26acf7f88a Only map in map registers and the I/O page if they are not mapped in already. 2000-05-27 21:44:35 +00:00
ragge 8293b12111 Write kvtopte() and kvtophys() as inline assembler. GCC create quite bad
code for them, and they are only 2-3 instructions each if written by hand.
2000-05-27 21:17:06 +00:00
ragge 6cfde8f146 Remove the pcbtrap global variable, use a per-CPU variable instead. 2000-05-27 20:02:58 +00:00
ragge 98d0ab9e1c Use machine instead of vax in include path. 2000-05-27 16:44:14 +00:00
ragge 99baa81ae7 Rewrite cpu_fork(), it now looks like and works as other ports' cpu_fork()
(calling child_return() etc...). Have fun, Jason!
2000-05-27 16:33:04 +00:00
ragge aacf5a4bc1 Growel out the SCSI BUS ID from NVRAM instead of hard-code it. 2000-05-27 10:12:45 +00:00
thorpej 21fc65e1a8 sleep() -> tsleep() 2000-05-27 04:52:27 +00:00
matt fa1474c2eb This need <sys/sched.h> to compile. 2000-05-27 03:23:22 +00:00
sommerfeld 40339b39f9 Reduce use of curproc in several places:
- Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()
2000-05-27 00:40:29 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
ragge 02512fa1e9 Correct a comparision. 2000-05-26 21:05:23 +00:00
ragge 4eea61af11 If we panic before the vsbus is found, don't panic again. 2000-05-26 21:05:01 +00:00
ragge 1e700bc362 Make it compile again. 2000-05-26 20:51:25 +00:00
ragge b2bc655ba8 Fake success when trying to use the strategy() routine on a network device.
This avoids clobbering errno and bad error messages.
2000-05-26 20:18:57 +00:00
ragge e2148b38ab Don't init the net info more than once. 2000-05-26 20:16:46 +00:00
ragge b8b40eed22 Avoid hanging if boot fails on some machines. 2000-05-26 20:15:21 +00:00
jhawk 8e44b27348 Rename the machine-specific stack trace printing functions
from db_stack_trace_cmd() to db_stack_trace_print(),
and add an additional argument, a function pointer for an
output routine (i.e. printf() or db_printf()).

Add db_stack_trace_cmd() in db_command.[ch], calling
db_stack_trace_print() with db_printf() as the printer.

Move count==-1 special handling from db_stack_trace_print() [nee
db_stack_trace_cmd()] to db_stack_trace_cmd() [nascent here].

Again, I'm unable to test compilation on all affected platforms,
so advance apologies for potential brokenness.
2000-05-26 03:34:24 +00:00
thorpej 8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
matt 37be92c0d1 Add loadfile() support. soon to be needed by bootblocks. 2000-05-25 20:25:22 +00:00
matt 091b74891d Modify the file list for kernel to supress errors/text for certain ones. 2000-05-25 19:36:20 +00:00
thorpej 6ec6c6f90a Move common return-to-userland goo into userret(), like other ports. 2000-05-25 17:01:11 +00:00
ragge e256727fb2 Four more instructions makes it possible to boot old kernels also. 2000-05-24 19:53:11 +00:00
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
matt 83ae868133 Add some debug stuff. Disable SCSI on KA49 for now until I can figure out
why it doesn't work.
2000-05-23 23:47:28 +00:00
matt 62469cb55a Allow for boot.vax and netbsd.vax when booting. this allows a multi
architecture CD to be made which includes VAX support.
2000-05-23 23:34:20 +00:00
matt 27a876b17c boot detection moved autoconf.c; remove it from here. 2000-05-23 21:36:43 +00:00
matt 6f98bbbb09 Add some missing ifdef's. 2000-05-23 19:55:55 +00:00
matt 88352edc02 Add prototype for findcpu in _STANDALONE. 2000-05-22 15:55:52 +00:00
matt 8c22116924 cpp can be so annoying. to appease it, can't -> cannot 2000-05-22 15:54:53 +00:00
matt 7a0c7ff6f9 get rid of a double / 2000-05-22 15:42:37 +00:00
matt 09d6519a0f make the declaration of findcpu() ansi. (e.g add void to it). 2000-05-22 15:41:31 +00:00
matt 5ece00b8bc Obviously we don't use the symbol, but we might give it the correct value.
We support up to NVAX platforms.
2000-05-22 15:40:06 +00:00
matt 2d5c3f8447 Move BDEV_LE detection to here. 2000-05-22 15:38:47 +00:00
matt cb089ee017 Remove RPB hook from here and put in autoconf.c 2000-05-22 15:34:05 +00:00
matt ff7c474e11 The double / in the path has been bothering me for awhile. 2000-05-22 15:33:13 +00:00
ragge f506422549 Boot device recognition for DEUNA added; combined with some cleanup. 2000-05-21 20:18:49 +00:00
ragge 314caa6651 Standalone driver for the Digital Equipment Unibus Network Adapter (DEUNA).
This allows 11/750 owners to install from a single TU58 cassette.
(Are there still any 11/750 owners left out there? :-)
2000-05-21 20:17:43 +00:00
ragge da774180b6 Compare the boot address with 1) physical address and 2) correct variable. 2000-05-21 10:03:55 +00:00
ragge d901690b17 Remove forgotten debug printf. 2000-05-21 09:45:54 +00:00
ragge 0b560b2138 Set correct adapter addresses if none is given. 2000-05-21 09:45:34 +00:00
ragge 93753c91c0 11/750 fixes:
- Set the correct adapter address in RPB for Unibus devices.
- Repair the disk read routines for HP disks. ROM routines do not work
  on HP disks, therefore use a small home-written routine.
2000-05-21 09:44:16 +00:00
ragge f7b7cabc0b On the 11/750, the stack will be placed by ROM in the code area.
Start with moving it to a safe place.
2000-05-21 08:13:20 +00:00
ragge 2da29b7e01 Changes to use the RPB for different tasks. Much simpler now to find the
boot device.
2000-05-20 13:38:58 +00:00
ragge b3f6551d41 WARNS=1. Unify the ra and tmscp driver. 2000-05-20 13:36:11 +00:00
ragge 027ee49b0f Adopt to the RPB changes. Complete change of how network devices are
handled. No more hacks to find bus addresses.
2000-05-20 13:35:07 +00:00
ragge c5f56fab00 Change all devices to use the RPB info when autobooting, this allows for
booting from unsupported devices also. As a side effect; it fixes PR#9202.
2000-05-20 13:30:03 +00:00
ragge a8a7bf342f New arguments to the rom routines. Adapt srt0 to new world also. 2000-05-20 13:22:39 +00:00
ragge 9ff9efe46a Rewriting of the VAX boot block. Differences:
- Use the RPB for passing boot device info up to kernel, instead of the
  old BSD "hack" with an encoded longword (see sys/reboot.h for details)
- Instead of separate drivers for all devices, use the HW-provided ROM
  routines as much as possible.
- Add filesystem support for CD9660 also (now when there is space).
- Make everything compile with WARNS=1.

The boot block is now <7K in size and have support for UFS, CD9660 and USTAR.
2000-05-20 13:21:29 +00:00
thorpej 071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
matt 9bf1dc1e62 fix comments. 2000-05-18 04:20:41 +00:00
matt 2d153651e5 Preliminary support for the VS4000/90 SGMAP. Needed for SCSI. Does not
quite work right yet.
2000-05-17 21:22:18 +00:00
matt 6fb4d43f97 Sync closer to GENERIC. 2000-05-17 21:19:49 +00:00
ragge 6a36c27519 Get boot device CSR from RPB instead of trying to guess it. 2000-05-09 20:53:51 +00:00
ragge 94faa6da32 Change copy*str() functions. More paranoid checking of legal address space.
Fixes PR#7838.
2000-05-09 18:59:58 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
ragge 57115228ef Sorry, no KA680. 2000-05-08 19:46:12 +00:00
ragge 5fc118100e Add 4000/200 and 4000/500. 2000-05-08 19:09:49 +00:00
ragge 7f9df86ca6 Get correct MAC address out of rom on VAX 4000/200. From Michael Kukat. 2000-05-08 18:51:17 +00:00
ragge f511619a4f Some more CPUs... From Michael Kukat. 2000-05-08 18:48:30 +00:00
ragge 282320f7df Rudimentary CPU support files for VAX 4000/105, 4000/200 and 4000/500.
From Michael Kukat.
2000-05-08 18:45:26 +00:00
ragge aedfd4de1c VAX 4000/200 support. From Michael Kukat. 2000-05-08 17:53:24 +00:00
ragge 0028464ae3 Add 4000/105 and VXT2000. From Michael Kukat. 2000-05-08 17:49:07 +00:00
ragge c17aed4bdc Console support for VXT 2000, VAX 4000/105 and VAX 4000/500.
From Michael Kukat.
2000-05-08 17:06:48 +00:00
thorpej 855b79db92 Let each platform typedef the new __cpu_simple_lock_t, which should
be the most efficient type used for the atomic operations in the
simplelock structure, and should also be __volatile.
2000-05-02 04:41:04 +00:00
ragge 8ddd256f57 Call uvm_pageidlezero() in idle loop. 2000-05-01 12:11:50 +00:00
ragge a5a1a12d83 #define __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED. 2000-05-01 12:09:32 +00:00
ragge c7204b15d4 Ubareset() changed. 2000-04-30 11:47:21 +00:00
thorpej dc8f3d3b3f Oops, install <machine/lock.h> on these systems, too. 2000-04-29 03:45:42 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
matt 70d4422b8a Dump NRCV to 8 from 5. Note that a 8K NFS reply takes 6 full size
Ethernet packets so the chances are that if the server was fast enough
this driver would continuously lose one of the fragments.  Eventually
causing the kernel load to fail.  Add 2 extra for random ARP or other
packets that might be picked up.
2000-04-28 00:08:51 +00:00
matt 1fe20bbb39 be a bit more defensive in the probe routines. only allow one attachment. 2000-04-24 21:59:22 +00:00
matt d32950cb7e Add cd9660 support to the secondary boot blocks. 2000-04-24 21:46:07 +00:00
matt b7de2c5900 Add lcgreg.h. 2000-04-24 17:09:56 +00:00
matt 7964d80339 Initial definition of registers for VS400 LCG cards. Still needs more. 2000-04-24 17:09:03 +00:00
ragge c6a9a48f2e Add 4000/90 to the countdown hack. 2000-04-24 14:45:30 +00:00
mhitch 62c210a97b Fix bootblock countdown for 4000/VLC. 2000-04-24 07:03:27 +00:00
matt 9148a41e81 fix booted_qe case to compare locators against controllers. 2000-04-23 20:30:37 +00:00
matt c10673838a Extend asc driver to include support for the VS400/9x.
Add VS4000/9x support vsbus_dma.c
2000-04-23 16:38:52 +00:00
matt 25d6f027de Detect controller number on boot_qe check. 2000-04-22 21:40:40 +00:00
ragge 8b94e15772 Fix boot block countdown on 4000/60. Easy to add for other 4000 machines also. 2000-04-22 20:29:58 +00:00
ragge a47bd10baa Use RAISEIPL on all workstations. 2000-04-22 18:11:27 +00:00
ragge 3a90b3236e Forgot a protection #define.
Make use of raise-spl.
2000-04-22 17:05:07 +00:00
ragge 8c7cf8f008 Add device switch entry for RL disks. Only uses rom to boot so far. 2000-04-22 16:52:23 +00:00
ragge cab5a24c60 Recognize RL02 as boot device. 2000-04-22 16:50:44 +00:00
ragge 9b8f75bee1 Add "rl" disk. 2000-04-22 16:48:53 +00:00
ragge cbf7514ca6 Detect "rl" as root device. 2000-04-22 16:43:47 +00:00
ragge dd22df3dc8 Ops, forgot to commit this. 2000-04-22 08:19:49 +00:00
matt f52bc62c39 enable in-kernel NTP (so xntpd doesn't die). 2000-04-21 15:16:39 +00:00
ragge 73e5b4e878 Raise IPL after interrupt, for LANCE chip. 2000-04-20 18:55:50 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
matt 79a5b2164e Remove autconf stuff. not needed and wrong. 2000-04-18 21:25:31 +00:00
matt 414d3f059d Compile -Os instead of -O2 (optimize for space). 2000-04-18 20:47:04 +00:00
ragge d334fb3019 Handle NCR5394 SCSI as NCR5380. (Doesn't matter, it will use the ROM
routines anyway).
2000-04-18 20:25:13 +00:00
ragge 86d5f2d67d Add RPB number for VS4000 SCSI. 2000-04-18 20:23:54 +00:00
mhitch a218b8543c Enable cache on the 4000/VLC. 2000-04-18 16:28:04 +00:00
mhitch a90cf56cda PC_ICR doesn't exist on the 4000/VLC and trying to read it apparently
causes problems when the cache is enabled.  Don't access it if boardtype
is VAX_BTYP_48.
2000-04-18 16:25:59 +00:00
mhitch 6c0d2ca981 Add some defines gleaned from OpenVMS to enable cache on the 4000/VLC. 2000-04-18 16:23:42 +00:00
ragge a1413dca83 Fetch the SCSI ID out of NVRAM instead, if possible. 2000-04-17 20:36:23 +00:00
ragge d37dfad561 DEC have the internal SCSI controller as ID6, and CDROM as ID7. 2000-04-17 16:30:40 +00:00
matt ee754e5548 Autoconf for SCSI stuff on VS4000s. 2000-04-16 16:03:42 +00:00
matt 5fa416e77a This should have never been checked in. it's what this directory is supposed
to make.  opps.
2000-04-16 15:59:02 +00:00
ragge 637d2e3a82 Be a little bit more generous with TBIA. 2000-04-16 09:42:22 +00:00
ragge 7ad2b0ede3 Call doshutdownhooks(). 2000-04-16 09:41:51 +00:00
matt 92b3e1fecd Use objcopy to emit the binary and linked around for debugging. 2000-04-16 01:44:36 +00:00
matt 5e9394eecb move ustarfs to end so that '@" can be avoided. from mhitch. 2000-04-16 01:42:41 +00:00
matt faec4da943 Add missing cases for MARIAH/SOC/NVAX and fix a comment or two. 2000-04-16 01:41:23 +00:00
matt 9434b7b19e Add fix for VS4000 SCSI hangs on disk writes. Add a VAX_BUS_DMA_SPILLPAGE
and use it in the asc_vsbus driver.
2000-04-10 03:49:56 +00:00
ragge 8d2f5fd273 Fix TOY clock reading/writing on KA820. 2000-04-09 21:05:39 +00:00
ragge 9b917327ac Add insqti/remqhi macros. These macros are interlock queue instructions
used in multiprocessor systems as well as in uniprocessor environments
with intelligent I/O devices.
2000-04-09 16:37:09 +00:00
thorpej 2bc5adb20e Instead of checking vm_physmem[<physseg>].pgs to determine if
uvm_page_init() has completed, add a boolean uvm.page_init_done,
and test against that.  Use this same boolean (rather than
pmap_initialized) in pmap_growkernel() to determine if we are
being called via uvm_page_init() to grow the kernel address space.

This fixes a problem on some i386 configurations where pmap_init()
itself was needing to have the kernel page table grown, and since
pmap_initialized was not yet set to TRUE, pmap_growkernel() was
choosing the wrong code path.

Fix tested by Havard Eidnes.
2000-04-02 20:39:14 +00:00
minoura 78b105698a Move dl* function definitions to libc on ELF.
Based on the patch supplied by Takuya Shiozaki <tshiozak@astec.co.jp>.
See http://mail-index.netbsd.org/tech-userlevel/2000/02/23/0000.html.
2000-04-02 15:35:47 +00:00
ragge fe43e9f08f Fix spelling error. 2000-03-31 18:40:58 +00:00
tsutsui 58714261cc Remove register declarations. 2000-03-30 11:37:21 +00:00
simonb 2f1fef39b3 Centralise the declarations of cpu_model, machine, machine_arch,
osrelease, and ostype and remove "extern char foo[];" (for hostname
and domainname too).

Also delete redunctant decl of boottime in kern_info_43.c.
2000-03-28 23:57:24 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
ragge aef1518cd8 Implement bi_intr_establish(). Add some fields about which CPU to interrupt. 2000-03-26 11:41:25 +00:00
ragge dd359f65dd Need some vectors and pointers to be set before IPL is lowered. 2000-03-26 11:40:31 +00:00
ragge b81cd3fa6b Identify ourselves. 2000-03-26 11:39:45 +00:00
tsutsui 9100212ef0 Add a "sc_rev" member to ncr5380_softc and handle CXD1180 quirk
in MI ncr5380sbc.
2000-03-25 15:27:54 +00:00
thorpej 7b918b4088 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:40:33 +00:00
ragge f9f885519d First cut of multiprocessor support for vax. Still much to do before
other CPUs than the master can spin up.
2000-03-19 14:56:52 +00:00
ragge cae5843a06 Fix typo that caused lance chip not to be detected. 2000-03-18 16:20:06 +00:00
mycroft 0af581a1a1 Add a ncr5380_attach() routine which does part of the initialization, attaches
the scsibus, and does the addref/delref dance.
2000-03-18 16:13:22 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
darrenr 162b0b1dab __P(()) -> __P((void)) 2000-03-16 23:21:05 +00:00
mycroft 02905321b2 Foolish consistency. Mainly, always use underscores and sys/endian.h. 2000-03-16 15:09:34 +00:00
drochner aa1de89bdf explicitely #include <sys/systm.h> #if BUS_SPACE_DEBUG to get a printf()
prototype
2000-03-15 16:44:48 +00:00
oster 1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
matt ebe08edbb2 add VS400 scsi attachment + a few other things 2000-03-09 02:05:07 +00:00
matt 57032be837 disable scsi for ka49 until sgmap is adapted to it. 2000-03-09 02:02:12 +00:00
matt 082a04f053 don't enable sgmap on ka49 yet. 2000-03-08 23:50:51 +00:00
matt f21e750db2 only have vmapbuf/vunmapbuf do anything on the ka46/48/49. 2000-03-08 23:49:10 +00:00
kleink ad7dbd825c Define ISO C99 (unsigned) long long (min, max) symbols. 2000-03-07 19:33:00 +00:00
matt ebbd936b2c Chnage chip freq to 25MHZ. panic if dmaaddr is not in the kernel's
address space.  fix some printfs.  (reads now work!)
2000-03-07 00:08:42 +00:00
matt 10f359a6b5 clear the sgmap that was allocated 2000-03-07 00:07:16 +00:00
matt e8c7c2f842 add real vmapbuf/vunmapbuf routines. needed for VS4000 SCSI support. 2000-03-07 00:05:59 +00:00
matt e42cc6e32e remove some unsed variables. make a bit efficeint. 2000-03-07 00:04:13 +00:00
matt 4ab785a0e1 it is pretty close to working. the scsibus probes now. 2000-03-05 23:20:25 +00:00
matt c43bdd0b91 Fix a bug with < 1 pages mappings. 2000-03-05 21:51:47 +00:00
matt 1de30b727b fix bug in bus_space_subregion 2000-03-05 21:22:48 +00:00
matt 2b3b8b5d50 it's closer to working now. 2000-03-04 18:20:53 +00:00
matt ad61c16f86 Oopps. forgot to commit this. 2000-03-04 16:59:18 +00:00
ragge 8e7bc4bd01 Change some install options. From Todd Whitesel. 2000-03-04 16:21:05 +00:00
ragge 3c7a7bf0e0 Install the boot programs in /usr/mdec also. From Todd Whitesel. 2000-03-04 16:17:46 +00:00
matt e0df4ffcae expunge vm_offset_t and vm_size_t.
add bus_dma support for the vs4000 dma translation map (sgmap).
enhance the vsbus for the lance to work with it.
remove the sgmap init code from ka46/48/49.c
2000-03-04 07:27:47 +00:00
matt 7258e6c6b7 First pass at NCR53c9x attachment for VS4000. It doesn't work yet.
But I want to save the work.
2000-03-04 00:24:06 +00:00
matt 1bce76807d it's a bit cleaner now. it also gets rid of the iomap init in
ka4[689].c
2000-03-04 00:22:37 +00:00
matt 2150f75fb0 First pass. need to add hw sgmap allocation via bus_dmamem 2000-03-03 22:57:49 +00:00
matt a1a05c5cf9 include <sys/cdefs.h> since <net/netisr_dispatch.h> needs __CONCAT 2000-03-01 00:17:17 +00:00
matt 352a87f7bd fix a too agressive s/CIA/UBA/ (e.g change SPEUBAL back to SPECIAL) in the
header.
2000-02-29 17:42:32 +00:00
matt 8aaab5c387 add missing cpu dependencies 2000-02-29 17:13:27 +00:00
simonb 4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
oster d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
erh 8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
thorpej fd8c03cf44 Allow arch-specific code to specify in4_cksum() like it can specify
in_cksum().
2000-02-14 21:42:50 +00:00
ragge 8e114c7994 Nuke unused variable. 2000-02-12 16:09:33 +00:00
ragge 918676c04f Remove __BROKEN_CONFIG_UNIT_USAGE. 2000-02-12 16:00:13 +00:00
ragge 539689da9d Remove another unneccessary reference to cf_unit. 2000-02-12 15:58:45 +00:00
ragge c6471e4d9a Remove an unneccessary reference to cf_unit. 2000-02-12 15:48:34 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
thorpej fe551f0e64 Fix a bug in disksort_*() which caused non-optimal ordering when multiple
active partitions were on a single spindle.  Add a b_rawblkno member to
struct buf which contains the non-partition-relative block number to sort
by.
2000-02-07 20:16:47 +00:00
cgd 7d16ac338c add __BROKEN_CONFIG_UNIT_USAGE #define, becuase these ports do very
wrong things with device configuration data "cf_unit" information.
2000-02-05 00:13:22 +00:00
kleink 82464e46d6 Add a C99-style va_copy macro. 2000-02-03 16:16:06 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
danw f77befbc84 #define __HAVE_DEVICE_REGISTER on ports that have it, and check for
that, rather than a list of architecture defines, in config_attach
2000-02-01 04:01:19 +00:00
bouyer 68e6de32b3 Add missing '#include "opt_vax630.h"' for custom kernels. 2000-01-27 17:06:55 +00:00
bouyer e7ea87d850 Adapt for matt's changes. 2000-01-27 16:58:44 +00:00
tsutsui b0fbaa33fb Remove obsoleted macros. 2000-01-26 09:44:10 +00:00
drochner 8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
tron 04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
matt 4e90241d42 More files that were changed. 2000-01-24 02:54:01 +00:00
matt 7b17d59536 Revamp the VAX interrupt handling code. Make it compatible with all the
other ports.  Clean up some things.
2000-01-24 02:40:28 +00:00
hubertf 7e5ff67457 Add commented out "ident"-command 2000-01-23 23:46:04 +00:00
matt 46b238cab4 remove volatile from softc. cleanup interrupt initialization. 2000-01-23 18:53:11 +00:00
thorpej dc59bc1db3 Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:39:55 +00:00
sommerfeld aa195e816f Fix PR9240: comment above cpu_fork() out of synch with reality on most ports.
(comment change only, but was wrong for more than just i386).
2000-01-20 22:18:54 +00:00
wrstuden 87e1b0f9b7 Add overlay to kernel configs. 2000-01-20 19:12:28 +00:00
matt 5d5b2822ec Don't need to include opt_vax8600.h. Always defined the 8600 specific bits. 2000-01-20 00:07:49 +00:00
thorpej a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
tsutsui 644b514c39 Change STRIPFLAGS=-g for cross-toolchains. 2000-01-19 14:44:58 +00:00
msaitoh 0b9af6bdce check whether tv_usec >= 1000000 2000-01-19 02:52:16 +00:00
thorpej c4e802b942 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:52:21 +00:00
thorpej ca44eb8d21 iodone() -> biodone(), iowait() -> biowait() 2000-01-18 19:51:03 +00:00
thorpej d7e6de4a08 iodone() -> biodone() 2000-01-18 19:50:32 +00:00
matt 9546ee5f87 defopt VAX750 side effect. 2000-01-17 04:57:31 +00:00
matt 2665d4b7c6 defopt VAXnnn so the make depend does the right thing. 2000-01-17 04:55:25 +00:00
ragge fa560ec3ee Bogus context pointer sent to sigreturn() may crash the machine.
Bug found by der Mouse.
2000-01-16 12:43:52 +00:00
matt 32bb54d2ff Enable IBCS2 (DEC SVR3) compatibility. 2000-01-13 15:09:52 +00:00
matt b8701a20ac Add ibcs2 signal tramp code. 2000-01-10 23:54:47 +00:00
matt cbe54e5057 Add ibcs2 machine dependent file for VAX. 2000-01-10 03:06:44 +00:00
matt a57402e015 Add VS4000 scsi attachment (does not yet work).
Add COMPAT_IBCS2 hook (for running DEC VAX SVR3 images).
2000-01-10 02:35:35 +00:00
matt 362ae13bea Add some machine dependent stuff for vax. 2000-01-10 02:33:13 +00:00
matt 5dc0a61485 Add ibcs2_machdep.h and reformat so that adding new includes is a bit easier. 2000-01-10 02:30:33 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
ragge ffbd2c2f5e CL* discarding. 1999-12-12 14:39:18 +00:00
ragge 9beccd4e88 Detect "Infoserver 1000" also. 1999-12-11 17:55:13 +00:00
ragge ae6ef93106 CL* discarding. 1999-12-11 17:54:04 +00:00
ragge e921b99ca0 CL* discarding.
Move physmem setting to pmap_bootstrap().
Fix security problem in process_write_regs(), found by Klaus Klein.
1999-12-11 17:51:34 +00:00
drochner 0893832078 update for changed struct wsdisplay_accessops:show_screen signature.
no functional changes
1999-12-06 19:25:56 +00:00
itojun e9a0023b37 bring in content of GENERIC.v6 into GENERIC.
remove GENERIC.v6 file (as it is part of GENERIC now).

"faith" interface is commented out by default as it is not really for
general use.
IPsec items are commented out as well, though we can enable "options IPSEC"
without export-related issue ("options IPSEC" will enable authentication
portion only).  We may need to think about it again.

if you have problem compiling with INET6 on archs I do not have access to,
please contact me.

XXX what to do with arch/arm32/SHARK{,.v6}?
1999-11-21 14:00:37 +00:00
ragge 351a7de621 Get symbol "NETISR_IPV6". This fixes PR#8790, but in a different way. 1999-11-19 22:09:55 +00:00
matt 65e94f7ef4 close the i386 ibcs2 machdep.h; nothing really machine dependent in it yet. 1999-11-16 00:46:25 +00:00
fvdl 8bec119fcc Add commented out option SOFTDEP to all GENERIC kernels. 1999-11-15 19:10:44 +00:00
fvdl d116707af0 Add
prefix ../gnu/sys
cinclude "conf/files.softdep"
prefix

to all std.* files, so that soft dependencies can be activated using
"options SOFTDEP".
1999-11-15 19:00:25 +00:00
matt d4c19a672a adapt to jason new pmap_enter change 1999-11-13 21:32:25 +00:00
matt 3891060822 Nuke TCP_COMPAT_42. Use sysctl to set it as needed instead. 1999-11-13 20:55:12 +00:00
thorpej 1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
ragge 2334c8a315 Allocate memory for printouts directly instead of (trying to) use the
yes uninitialized VM system.
1999-10-27 16:40:47 +00:00
ragge 9318cd75a1 Let smg be probed as all other possible consoles. 1999-10-27 16:38:54 +00:00
ragge 4bec31640a Avoid calling cninit() too early. 1999-10-27 16:37:54 +00:00
kleink 522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
ragge b8706b65a3 Detect SCSI as boot device. 1999-10-23 14:56:05 +00:00
ragge 362ef7b498 Use romread() routines if we are booted from SCSI disks. 1999-10-23 14:42:21 +00:00
ragge 08cf6bea89 Boot block code fixed to 1) understand SCSI disks and 2) read from a
ustar filesystem (used in installation).
1999-10-23 14:40:38 +00:00
ragge 16a09f9b9c Remove the vmapbuf()/vunmapbuf() routines. They are quite unneccessary
on a machine that has MMU for its I/O devices.
1999-10-22 21:14:34 +00:00
ragge db3857cbb6 DMA support for the NCR 5380-equipped vs3100's. 1999-10-22 21:12:20 +00:00
ragge 4021578d6e Add routines to copy to/from a user process from/to the vsbus DMA area. 1999-10-22 21:10:12 +00:00
ragge ae7e9d1571 Protect against multiple includes. 1999-10-21 20:01:36 +00:00
ragge f1d4772434 Clear proc0 uarea, otherwise subsequent processes will inherit the
virtual timers and get unwanted signals. This has been around since
long time back...
1999-10-20 20:42:29 +00:00
ragge 7c80a2ddec Nuke unnused file. 1999-09-21 18:08:37 +00:00
ragge 3455a353f9 Fix minphys() on vax. While here, convert to bus.h. 1999-09-21 18:07:54 +00:00
thorpej 11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00
thorpej 3b01d1b872 Rename the machine-dependent autoconfiguration entry point `cpu_configure()',
and rename config_init() to configure() and call cpu_configure() from there.
1999-09-15 18:10:33 +00:00
chs f3a668ed84 eliminate the PMAP_NEW option by making it required for all ports.
ports which previously had no support for PMAP_NEW now implement
the pmap_k* interfaces as wrappers around the non-k versions.
1999-09-12 01:16:55 +00:00
ragge fe8a330be5 Styr upp deklarationen av clockchippsparametrarna. 1999-09-06 19:52:52 +00:00
ragge 56f0f92bef Add some external variables. 1999-08-30 21:18:17 +00:00
ragge a724cc71f4 Changes for 4000/90. 1999-08-27 20:05:08 +00:00
ragge 02470fb53a Support for 4000/90. 1999-08-27 20:04:32 +00:00
ragge 3c8bd07cd4 CPU support for 4000/90 (KA49). 1999-08-27 20:02:05 +00:00
ragge c1eb799c3a Use interrupt stack for unexpected interrupts. 1999-08-27 20:00:24 +00:00
ragge 1e07ecc873 Aupport these on 4000/90. 1999-08-27 17:50:42 +00:00
ragge 4fa4cc8160 Don't try to search for these devices on 4000/90. badaddr() should
be fixed for this arch also.
1999-08-27 17:49:41 +00:00
ragge 73dc3cea57 Rearrange the interrupt detection code to work on the (slightly
different) VAXstation 4000/90.
1999-08-27 17:45:57 +00:00
ragge 86a3dd1701 Don't reference a unexisting address on 4000/90. 1999-08-23 19:10:43 +00:00
ragge 895fe9eaf6 Add support for 4000/90. Also handle interrupts more intelligent.
XXX - countdown doesn't work on 4000/90.
1999-08-23 19:09:27 +00:00
matt 82d58cbe82 export elf_machdep.h 1999-08-21 23:35:44 +00:00
matt 741f18b695 Initial VAX ELF32 support (mostly untested). It's checked primarily for
testing and archival for now.  I don't expect anyone to work with it
since the binutils and gas changes are still pending.  But you got to
crawl before you walk.
1999-08-21 19:26:18 +00:00
simonb 3c185af5fd Include <sys/endian.h> after defining whether where are little- or
big-endian.  i386, pc532 and vax still include <machine/byte_swap.h>
and define macros for the {n,h}to{h,n}*() functions.  mips also
defines some endian-independent assembly-code aliases for unaligned
memory accesses.
1999-08-21 05:53:50 +00:00
simonb 06a92524c2 Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
ragge 8a0eac0ab5 Detect NVAX also. 1999-08-19 20:50:18 +00:00
ragge 7638e3fbe3 Add boot support for the VAX 3300/3400 LANCE chip. 1999-08-14 19:41:14 +00:00
ragge b906b753ad Support for ibus-attached LANCE. 1999-08-14 18:44:00 +00:00
ragge 33baeca394 Search for LANCE. 1999-08-14 18:42:46 +00:00
ragge 9752aa250e Support interrupt vector auto-detection on level-trigged devices also. 1999-08-14 18:42:17 +00:00
ragge 962bc94a90 Support for on-board LANCE on MicroVAX 3300/3400. Also use MI LANCE
code for VAXstations again; though not functioning correctly on all
types of machines.  (Will fix that later).
1999-08-14 18:40:23 +00:00
ragge 6535fd2313 Erroneous checking of return value from bounds_check_with_label().
Massbus disks should work now.
1999-08-14 11:33:09 +00:00
ragge eab2e881a5 Fix UBA IO space scan addresses; was searching at the wrong place. 1999-08-14 11:31:48 +00:00
ragge 650524ed75 Fix CMI probe bug on VAX 11/750. Prettify CPU printout. 1999-08-14 11:30:48 +00:00
ragge 33bc1af047 PGOFSET should be VAX_PGOFSET.
Remove two unused prototypes.
1999-08-12 20:23:49 +00:00
thorpej 28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
ragge 1008019f62 Detect "ze" as root device. 1999-08-08 16:33:13 +00:00
ragge 80c17df099 Give numeric machine checks, instead of incorrect strings. 1999-08-08 11:47:54 +00:00
ragge 2785184329 Tell if we get stray interrupts, if cold == 0. 1999-08-08 11:46:30 +00:00
ragge f2e960f907 Add support for the SGEC. 1999-08-08 11:45:01 +00:00
ragge 3766555455 Reset the interface when loading is finished, to avoid spurious writing
to memory.
1999-08-07 18:30:36 +00:00
ragge ae5dbfbe84 BI bus files has moved. 1999-08-07 11:19:04 +00:00
ragge bc163ccc30 Clean up all bus handling stuff, it has become a mess the latest years.
Add a new bus; "ibus" that is the internal MicroVAX bus.
1999-08-07 10:36:43 +00:00
ragge a7361f3acf Moved to dz_ibus.c,v 1999-08-06 18:58:28 +00:00
ragge c7d47daa04 Moved from dz_vsbus.c,v 1999-08-06 18:58:27 +00:00
thorpej d936f02b0b Implement priority raising, and use it as appropriate. 1999-08-05 18:48:55 +00:00
thorpej 37554502cf Correct a comment. 1999-08-05 18:31:06 +00:00
thorpej eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
ragge 128cc8e9b2 For now; don't include the devices that are not yet converted. 1999-08-04 19:15:56 +00:00
ragge 2661ddc378 smg/lkc must have "qfont". 1999-08-04 19:15:11 +00:00
ragge bebf926694 Adopt to new BI bus design. 1999-08-04 19:11:01 +00:00
ragge fe04287ec0 Moved to dev/bi. 1999-08-04 19:09:46 +00:00
ragge 0b6c232028 BI bus has become MI now. 1999-08-03 19:56:21 +00:00
ragge 43bbc0f5c7 Protect against multiple includes. 1999-08-03 19:53:23 +00:00
ragge 901fb270ef Add a "generic" struct for dma without anything fancy. 1999-08-03 19:45:47 +00:00
ragge 8f9615d62c A bunch of changes:
- Free pte pages not in use anymore.
- Inline pmap_extract().
- Fix annoying page reference/modify bug. Fixes PR#7858 & PR#7859.
1999-08-01 13:48:06 +00:00
ragge 870769b516 Cpu_swapin() only need to set red zone now. 1999-08-01 12:07:31 +00:00
augustss 3652732791 Add wsmux device.
(Also add lots of missing chrtoblktbl[] entries.)
1999-07-29 19:14:35 +00:00
augustss a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
cgd f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
abs 2ceba51630 Work with obj dirs (It seems that ${.CURDIR}/... is your friend).
If I _had_ to pick an arch on which to learn how this stuff works, it probably
would not have been vax... unless of course I was experimenting with time
compressing drugs.  If we have a 1.4.2, this is definitely a candidate.
1999-07-18 05:55:45 +00:00
ragge 73d339e9e8 Rewrite the page table entry routines. Don't take a pte invalid fault for
missing pte's, instead map in pte entries in pmap_enter(). The user ptes
is no more handled by the VM system. All this made swapping start working
on VAX again.
Still to do:
- Keep refcount per pte page, so that those pages get free'd when the
  process is swapped out. Right now they are only free'd when the pmap
  is destroyed.

Many thanks to Chuck Silvers for all help finding the deadlock problems.
1999-07-10 22:04:59 +00:00
ragge e2a9d46897 After swapin of a process, restore the red zone in kernel stack at the
correct place.
1999-07-10 21:55:17 +00:00
thorpej 0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej b2781586c4 Normalize include paths. 1999-07-09 02:32:28 +00:00