Commit Graph

723 Commits

Author SHA1 Message Date
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
leo 301a4b3f87 Build the library before using it.... (Thomas Gerner). 1998-02-10 10:28:34 +00:00
leo dda805c3d4 Accept an 68060 as cpu-type. (Thomas Gerner). 1998-02-10 10:25:08 +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
leo 8d5fa0c992 Fix a bug in the colormap handling. (Thomas Gerner) 1998-01-21 09:07:46 +00:00
leo 123d97732f Be more accurate with errors on read(2) (as suggested by Ted Lemon). 1998-01-16 09:19:37 +00:00
leo bb4f2f4ebe Add: bus_space_{read,write}_region_N() and bus_space_set_{multi,region}_N()
functions.
1998-01-16 09:17:48 +00:00
leo dc8f785187 Make this compile again after the latest config changes. 1998-01-15 13:06:27 +00:00
thorpej 2d73f5ea18 Update for changes to config. 1998-01-12 18:03:58 +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 015e898c02 RCSID Police. 1998-01-05 07:02:46 +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
mikel 733dae35bc use ${SIZE} instead of "size" (somehow this one got missed) 1998-01-01 08:11:41 +00:00
leo 4702594559 Correct size of brwrite():trbuf[] (Mellon). 1997-12-15 09:21:04 +00:00
leo 18d2ccf637 Add '-H' option for writing High density floppies. 1997-12-10 09:32:35 +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
leo 9d09eab68e Preserve the bootflags in the processor-type test (== make the loader
work again for the TT030).
1997-12-04 07:39:05 +00:00
kleink c87631771e Add COMPAT_13. 1997-12-01 14:52:51 +00:00
fair 315f8de9c2 add pseudo-device rnd, commented out 1997-11-20 08:11:14 +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
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
lukem 3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
is a16fd7d74e Make these compile after m68k/m68k.h 1.4->1.5. 1997-10-26 21:41:34 +00:00
leo e1adcbe609 Do not relocate the kernel to TT-Ram by default. Some TT's choke on this. You
can now opt for relocation by either setting the RELOC_KERNEL config option
or patching 'reloc_kernel' to something other than zero.
1997-10-23 11:26:19 +00:00
leo c289655641 Make this compile again by including <vm/vm.h> and moving sysctl.h below
that include.
1997-10-22 08:04:07 +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
mycroft 20b05a6bc4 Make these closer to working. 1997-10-11 09:10:25 +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
leo 6ecab62b97 VM_MAX_ADDRESS is the user max address -- adjust (From Chris Hopps). 1997-10-10 11:05:53 +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 324ce8d6cb Fix tipo inherited from old version of TNF copyright template. 1997-10-09 07:37:50 +00:00
thorpej e3834cc351 Implement DIOCGDEFLABEL. 1997-10-08 23:37:50 +00:00
is 37fce9c90f Oops, forgot to commit this when doing the recent 060SP Makefile change. 1997-10-07 19:26:11 +00:00
thorpej 92a347c574 Copyright assigned to The NetBSD Foundation. 1997-10-04 09:38:47 +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 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
leo c5ba7a3102 Move the definition of MSGBUFSIZE up to the machine-arch level if
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:06:37 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
leo 571340263d Small readability update. 1997-09-15 11:08:38 +00:00
leo 409812c25c Define isabus by default on the Hades. 1997-09-15 10:51:20 +00:00
mycroft a9155c5057 Set the status word as well, and remove a bogus comment. 1997-09-12 10:29:20 +00:00
mycroft 49f0bbb105 Nuke Locore.c. It's way too out of date to be useful at this point. 1997-09-12 07:59:20 +00:00
mycroft 982f24e698 Always initialize all registers in setregs(). 1997-09-12 07:00:30 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
leo 225274f8b4 Add BUS_SPACE_MAP_* macro's. 1997-09-02 11:19:02 +00:00
leo 42c4123e4d Define 2 md devices. 1997-08-29 19:52:08 +00:00
leo 16bdafc3a5 Pull in Scott Reynolds' version of _splraise(). Also do a bit of typographic
cleanup while visting this file.
1997-08-29 19:47:52 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
leo c9f11609e3 According to Andre Lange, the Hades has the DTR/RTS lines exchanged on
the 68901 UART-port due to a PCB error. Take care of this.
1997-08-27 06:59:19 +00:00
leo a905a75ff7 Number the slots 0&1 instead of 1&2 . 1997-08-27 06:56:14 +00:00
leo c8c7fe38ca Add the isa-bus. 1997-08-27 06:52:46 +00:00
leo 2ca332c7bc Add a char entry for md and add it to the chartoblk table. This fixes
the problem that kernfs was unable to determine the root device while
booting from the install floppy.
1997-08-27 06:21:06 +00:00
leo d0301b58ee Don't enable the dma-interrupt while polling for dma to end. This sometimes
caused a system panic on the Hades while probing the SCSI devices.
1997-08-27 06:16:49 +00:00
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
leo 032fb7a2d9 Remove 030 support, add 060 support instead. 1997-08-02 12:12:25 +00:00
leo 6ad4ee1142 lpt -> lp 1997-08-02 10:04:44 +00:00
leo 83c69491b2 Add second md device. 1997-07-30 15:45:33 +00:00
leo baa16e912c Rename lpt to lp on some places to avoid botches between files.isa and
files.atari.
1997-07-30 15:43:23 +00:00
leo 89ac8e71d2 Use a buserror handler that just tests for 'nofault' being set when the
MMU is not yet initialized. This behaviour is necessary when probing
for the machine type - because we need the type before we can setup the
tables....
1997-07-30 15:37:48 +00:00
leo b61a48cef7 Include 'locators.h' 1997-07-30 15:32:37 +00:00
jtk ca1bba150a use locator defines in "locators.h" to index cf_loc[] 1997-07-17 03:16:39 +00:00
jtk b9370d116d use locator defines in "locators.h" to index cf_loc[]
still to be done and/or decided not to be done: replace all *UNK uses in
vme code with the native names from locators.h
1997-07-17 01:56:29 +00:00
jtk b4777471db use locator defines in "locators.h" to index cf_loc[] 1997-07-17 01:52:54 +00:00
leo 9eb01ced39 Install key-maps only and forget about the program generating them. 1997-07-15 08:42:21 +00:00
leo ec7ce2c9f8 Isabus support. 1997-07-15 08:25:39 +00:00
leo 3adf93ecde isabus support 1997-07-15 08:17:39 +00:00
leo 38071fa916 Use '0' instead of NULL when talking about int's 1997-07-15 06:51:15 +00:00
leo ce96a8a2e4 Implement bus_space_subregion() 1997-07-15 06:49:56 +00:00
leo de78b4c0e9 Garbage collect bell-ioctl's. 1997-07-15 06:48:05 +00:00
leo 198bd713f2 Generate assym.h dependencies when making 'depend'. 1997-07-12 22:07:36 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
veego 1c599835b4 Restore the defines of UPAGES and NPTEPG. 1997-07-10 08:22:36 +00:00
leo 1c21c4994d Make sure the card is probed once. 1997-07-09 14:38:02 +00:00
leo 89325630dd Introduce 'bootversion' in locore.s. Check this to decide if installing
a bootstrap with the running installboot makes sense.
1997-07-09 14:31:12 +00:00
kleink 96914606be From sun3:
Correct handling for Trap #2 in SunOS executables,
 now that we know it is supposed to flush the cache.
 (Was thought to be "some obscure FPU operation".)
1997-07-08 16:56:31 +00:00
leo cd3ee4b310 If booted with RB_ASKNAME, don't go looking for a root device. 1997-07-05 20:57:40 +00:00
leo a323500b0f Pull in latest Amiga bus/address error handling. 1997-07-05 20:50:41 +00:00
is e03fce55ed addql does set condition codes, so we are not allowed to put it in between
the andl and the jeq.
Mea maxima culpa.
1997-07-04 20:52:50 +00:00
leo d4c5e4e6fe Add code to set pitch and duration of the keyboard bell. (Thomas Gerner). 1997-06-29 20:30:49 +00:00
leo 1f92b460a0 Add 'libsa/atari_stand.h' that defines atari specific things. This allows
for a removal of our own copy of stand.h which was out-of-date by definition.
1997-06-28 21:36:28 +00:00
is f3efbb406a The recent buserr handler cleanup in the Amiga locore.s made the label
_buserr point to the 68020/030 buserr code _only_. This has broken access
error handling in the 060 support code.
This is repaired by jumping to _buserr60 from the 060SP, and by providing
a _buserr60 label identical to the _buserr in the unchanged m68k ports
using the 68060.
1997-06-26 22:28:42 +00:00
leo b61541d6c2 Be consistent with more pedantic bus.h. 1997-06-25 12:15:54 +00:00
leo 61d060feec Add the types for 'bus_dma_tag_t' and 'bus_dmamap_t'. While here, be a bit
more precise in using types of the bus_space* address arguments.
1997-06-25 12:06:10 +00:00
thorpej afe2bc9b9e In wdsize():
- If the partition is already open, skip the open/close step.  (Sync with
  other disk drivers).
- foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
  from the disklabel accordingly.
1997-06-24 00:41:29 +00:00
mrg c86a511276 move man pages into share/man. 1997-06-22 05:48:14 +00:00
mrg 552af779d2 bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:46:19 +00:00
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00