Commit Graph

1421 Commits

Author SHA1 Message Date
gwr 0228ba8d86 Make the messages printed by _nodb_trap() more helpful. 1998-02-26 20:31:13 +00:00
gwr eeb690065b Use trap 14 as PROM abort 1998-02-26 19:30:59 +00:00
gwr 23b16936e8 Fix build with NFB=0 1998-02-26 16:01:18 +00:00
perry 1ed8ea9966 note second parm of sysarch() is now void *, + trivial KNF, etc. 1998-02-25 21:41:55 +00:00
gwr 5f0963e887 Switch to MACHINE_NEW_NONCONTIG 1998-02-20 21:51:29 +00:00
gwr ce396c52e6 can not use star 1998-02-19 22:50:04 +00:00
gwr 43cbb05833 Support MACHINE_NEW_NONCONTIG 1998-02-19 22:21:28 +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 0924c4443d Make sure the reason that NOLINT is set is documented. Additionally
in places where it should be set (or has to be set right now), do so.
1998-02-19 02:17:05 +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
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
gwr 948e07a5ec remove ifdef sun3x 1998-02-11 19:42:29 +00:00
jeremy a1efa84a4d Modified the comments for the recentlty implemented pmap_map() function. 1998-02-09 19:56:37 +00:00
gwr 22c20779d0 Rewrite the match/attch routines to use the P4 register
(when it exists).  Also get the size right; other fixes.
1998-02-08 05:22:08 +00:00
gwr 0378cb2ff6 Define the CG4B_OFF_* values to be relative to the location of
the P4 register so the probe routine finds the P4 at off=0.
1998-02-08 05:20:08 +00:00
gwr 99fd045ec0 Add fb_eeprom_setsize() for setting the FB size based on the EEPROM
value (to be used only if unit=0).  Add P4 helper functions:
fb_pfour_id, fb_pfour_setsize, fb_pfour_{get,set}_video
1998-02-08 05:15:35 +00:00
gwr ab8340e9da cosmetic 1998-02-08 05:13:17 +00:00
gwr 0bc9d95f95 Move the sun3-vs-sun3x stuff into std.sun3 and std.sun3x
Configure P4 frame buffers at the address of their P4 reg.
Move messy Sun3 bw2 and cg4 configs to included files.
1998-02-08 05:10:45 +00:00
gwr e3400ad779 Improve some diagnostics. 1998-02-08 05:07:06 +00:00
gwr 5b69e41858 Default the interrupt priority in match functions. 1998-02-08 05:05:54 +00:00
gwr 5193e1e30e Factor *peek out of bus_subr.c and move it to autoconf.c
(to reduce duplication).  Add bus_tmapin and bus_tmapout
for use in probe functions (gets a temporary mapping).
Add bus_mapout() to undo bus_mapin() if needed.
1998-02-08 05:02:50 +00:00
gwr e387ffba22 Add pmap_map 1998-02-08 04:57:58 +00:00
gwr bb082938e2 Fix pmap_map 1998-02-08 04:56:37 +00:00
gwr eff2e270bd Merge arch/sun3x into arch/sun3 1998-02-05 04:56:24 +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
gwr 6b745182fc No need for NFS_BOOT_RWSIZE here (root is always md0) 1998-01-28 16:41:10 +00:00
gwr d2f145c059 Add NFS_BOOT_BOOTPARAM (fixes PR#4904) 1998-01-28 16:40:19 +00:00
gwr 995291fbac Deal with the fact that PROM driver descriptors are allowed to have
zero-length list of "standard addresses" by ignoring d_devbytes if
there are no addresses provided.  In these cases, the PROM will map
the device without our help.
1998-01-26 22:02:17 +00:00
gwr faf4390c38 Save the "bustype" from our attach args in the controller "softc"
and use that instead of hard-coding BUS_VME32 everywhere.
(The Sun3X needs a more specific bustype value.)
1998-01-26 21:03:43 +00:00
gwr 3ba1e07ef5 Simplify the colormap and blanking stuff a little. 1998-01-26 20:53:17 +00:00
gwr ac930c3c4d Moved back to sun3/sun3 1998-01-25 22:41:07 +00:00
mycroft 15ae963bea When dumping, print out the device number as major,minor. 1998-01-24 16:46:23 +00:00
gwr 119b962a9d Add: extern struct cfdriver cgtwo_cd; 1998-01-23 00:01:28 +00:00
gwr 66be7643e5 Use the same names as the sun3x (DVMA_MAP_*) 1998-01-22 23:59:45 +00:00
gwr 5ba5bda641 Use the same names as the sun3x (DVMA_MAP_*) 1998-01-22 23:45:05 +00:00
gwr b6be0a1994 Use MONEND instead of DVMA_SPACE_START in the "DDB convenience" symbols. 1998-01-22 23:39:03 +00:00
gwr dd049a163c Add config flags for tty[cd] to set TIOCFLAG_SOFTCAR.
Remove the framebuffer devices (not useful here).
1998-01-22 23:21:57 +00:00
gwr 2c9c7a74bd Remove the config flags from "si" lines so the driver default will
be used.  That also makes it possible to patch the kernel in case
the default option causes boot failures or something...
1998-01-22 23:00:24 +00:00
gwr 8c3664b216 Remove the config flags from "si" lines so the driver default will
be used.  That also makes it possible to patch the kernel in case
the default option causes boot failures or something...
1998-01-22 22:27:57 +00:00
gwr c292276dcf Change our DVMA map from the last 16MB to the last 1MB because that is
the only part that is visible to VME masters, and is adequate space.
This allows the "si" driver (on VME) to use DMA transfers.
1998-01-22 22:20:35 +00:00
gwr 56100bea19 When calling iommu_* functions, use IOMMU_VA_MASK. 1998-01-22 22:12:36 +00:00
gwr 0c50bf6487 No need to print the size (it's constant). 1998-01-22 22:09:11 +00:00
gwr 19e7bf4dcd Add: IOMMU_VA_MASK 1998-01-22 22:07:45 +00:00
gwr cc1b4e4724 In pmap_bootstrap_copyprom, copy only the last PTE from the PROM's
DVMA segment (for the page reserved by the PROM).  If we copy all
the mappings, pmap_enter_kernel may complain about finding valid
PTEs that are not recorded in our PV lists.  Make pmap_remove_pte
do something reasonable if it finds a PTE for a managed page that
has not been recorded in the PV lists.  (Plus other minor stuff).
1998-01-22 22:00:25 +00:00
gwr 58126a3b29 Separate pmap_activate() from _pmap_switch(), so the latter can remain
equivalent to what locore.s:cpu_switch does with in-line assembly when
PMAP_DEBUG is not defined.  Also do splimp/splx in pmap_activate.
1998-01-22 21:48:42 +00:00
gwr 43013bccbb Use MONEND instead of DVMA_SPACE_START in the "DDB convenience" symbols. 1998-01-22 21:35:27 +00:00
gwr ccf791aa2e Add: extern struct cfdriver fdc_cd; 1998-01-22 21:26:25 +00:00
gwr 2628e0df8a Add the sif_macaddr member to struct saif, which can be used
in version 3.X PROMs (gets our Ethernet address).
1998-01-18 05:24:38 +00:00
thorpej 2565ff444a Update for config changes. 1998-01-12 20:35:04 +00:00
thorpej 1adb4489a6 Update for changes to config. 1998-01-12 20:23:38 +00:00
perry 6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +00:00
thorpej 4cb36c3346 Update a comment to reflect the vm_bootstrap_steal_memory() change, and
while I'm here, note which two functions will no longer exist when
new non-contig code is done for this pmap.
1998-01-08 23:47:07 +00:00
thorpej 0e5cf40b1f Always include pmap_pinit(), since it is a defined pmap interface
function (thought, we might revisit that later).  Just call pmap_pinit()
in pmap_create(), instead of inlining what pmap_pinit() does.

Also, g/c a TAILQ_FIRST() macro that is now defined in <sys/queue.h>
1998-01-06 08:27:05 +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 f39e44955b Make pmap_activate() take a proc *. 1998-01-02 20:37:28 +00:00
thorpej d14e18faa9 Make pmap_activate() take a proc *. 1998-01-02 20:10:26 +00:00
jeremy 070bd37c1b Pad out table manager structures so that all the members in the contiguous
table manager array allocated in pmap_startup() are properly aligned for
faster bus access.
1997-12-17 16:20:33 +00:00
gwr be7fd676e5 Sync with GENERIC 1997-12-13 00:26:08 +00:00
gwr ebbce0eb18 Need MEMORY_DISK_IS_ROOT now also.
Sync with GENERIC
1997-12-13 00:25:15 +00:00
gwr 4f0a44847d Move Sun3/E stuff 1997-12-13 00:23:45 +00:00
gwr 6be94f263f obsolete 1997-12-13 00:21:01 +00:00
gwr e0170ea83c Remove local definition of DEBUG (left there by accident). 1997-12-09 22:29:01 +00:00
gwr 1e1b53cba9 The ie_reset function needs to turn off loopback mode.
(Remember the TDR complaint: short X clocks away?
that was because the chip was in looback mode! 8)
1997-12-09 22:25:42 +00:00
gwr 2e40be26b8 The ie_reset function needs to turn off loopback mode.
(Remember the TDR complaint: short X clocks away?
that was because the chip was in looback mode! 8)
1997-12-08 21:49:50 +00:00
gwr ec9abe23be Several fixes. This version actually works! 1997-12-08 19:22:52 +00:00
gwr 1a340a5921 Fix missing newline in attach 1997-12-08 19:19:25 +00:00
gwr c497f2ca2b Define the interrupt vector registers as 16-bit fields as
shown in the documentation.  (Thanks to Michael Thompson)
1997-12-08 19:17:12 +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
gwr d4ff9e0143 Remove the broken trap recursion check (#if DEBUG) 1997-12-02 23:41:30 +00:00
gwr b3701f21ea Kill some noise from -DDEBUG 1997-12-02 20:42:13 +00:00
gwr 7c95ede823 Kill some noise from -DDEBUG 1997-12-02 19:48:45 +00:00
kleink 28e0cf0693 Add COMPAT_13. 1997-12-01 16:02:09 +00:00
gwr 6c7f015fc8 The calculation of dumpsize was incorrect. It is the size of
the raw memory part of the dump (not including the headers).
1997-11-25 22:38:41 +00:00
gwr 2e64ccdb0b Remove some outdated comments, fix others. 1997-11-24 22:09:58 +00:00
gwr a8291dea54 Kill unnecessary arguments to pmap_enter_*
Do pa=PG_PA(pte) in pv_link/pv_unlink so it
does not need to happen in as many places.
1997-11-24 21:38:31 +00:00
gwr 42526b0e75 On the 3/50 it is avail_start that must be less than hole_start,
not avail_end.  Identified by Greg Oster <oster@cs.usask.ca>
1997-11-24 17:58:20 +00:00
gwr ae473044c7 Strengthen DIAGNOSTIC checks in pmap_enter_*
Further simplify protection converter (gone).
1997-11-21 22:13:20 +00:00
gwr b0e8edf692 Minor simplifications. 1997-11-21 17:14:07 +00:00
fair 315f8de9c2 add pseudo-device rnd, commented out 1997-11-20 08:11:14 +00:00
gwr f0047e072f Better definition of PA_IS_DEV, and use it two more places. 1997-11-19 19:28:10 +00:00
gwr 5ea276f19a Correct handling of "physical address" values given to us by the
VM code, which may have low bits specifying device space!
1997-11-19 00:19:10 +00:00
hannken 50be28153c Change order of include files. See PR #4532. 1997-11-18 12:40:31 +00:00
lukem e8cb388f65 * add commented out DDB_HISTORY_SIZE=100 if DDB exists in config file
* fix up use of 'options<SPACE><TAB>'
1997-11-17 01:58:31 +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
veego 8b485c5962 Add a missing #if NARP > 0 around arpintr(); and add a #include "arp.h"
for NARP. This is for the 'new' arp system.
1997-11-13 10:43:06 +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
gwr 5eda2e37e8 Oops...(pasto) 1997-11-08 05:42:07 +00:00
gwr 924c57cce0 Disable DMA and interrupts for now (via se_options). 1997-11-07 22:11:19 +00:00
gwr 7a33a8aaef Silence collisions 1997-11-05 00:02:51 +00:00
gwr ea35849dac More efficient implementations of:
pmap_protect_noctx()
pmap_remove_noctx()
1997-11-03 22:47:10 +00:00
gwr 81ed96b224 More reordering 1997-11-03 21:55:39 +00:00
gwr 62a4f5b044 Use a private pool of PV elements. This improves performance,
and avoids reentrance into pmap code via malloc().
1997-11-03 16:58:05 +00:00
gwr f106a637c6 Implement a "kernel-only" context for processes that have not
touched any user-space address recently.  This is efficient
for things that stay in the kernel for a while, waking up
to handle some I/O then going back to sleep (i.e. nfsd).
If and when such a process returns to user-mode, it will
fault and be given a real context at that time.

This also makes context switch faster, because all we need
to do there for the MMU is slam the context register.
1997-11-03 16:08:23 +00:00
mycroft ec5fd4954e Set rr0_dcd.
Don't set DCD_IE and CTS_IE here; let the MI code do it.
Handle MDMBUF.
1997-11-02 08:05:06 +00:00
gwr 395f27b052 Give the kernel pmap a soft copy of its segmap (like user pmaps)
so we can optimize away calls where pm_segmap[x] == SEGINV.
1997-11-02 05:16:25 +00:00
gwr 0270c30b3d Change some debug prints to db_printf(), other minor stuff. 1997-11-02 03:19:18 +00:00
gwr 56008e767b Clean up spl* handling a bit (move some spl* calls up a level,
and have the callee do a CHECK_SPL for debugging).
Get rid of some private TAILQ_* macros.
some cosmetic stuff.
1997-11-01 23:56:25 +00:00
lukem 3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
gwr 4dcb8c7d34 More movement. 1997-10-31 19:52:09 +00:00
gwr f503ff3765 Move things aroun a little (group by purpose, etc.) 1997-10-31 03:04:42 +00:00
gwr eca45d868a Replace PMAP_LOCK/PMAP_UNLOCK with splimp/splx 1997-10-30 20:14:45 +00:00
gwr 328968b54e Print out the real/avail memory like this:
real  mem = 8192K (0x800000)
avail mem = 6392K (0x63e000)
1997-10-30 01:02:53 +00:00
gwr ad4db27bc3 Move some variables from _startup.c into pmap.c (used only there).
Re-organize pmap_bootstrap, and shorten some function names.
1997-10-30 00:59:40 +00:00
gwr 38d61d7805 Left DEBUG there by accident. Remove it 1997-10-28 21:12:58 +00:00
gwr 923a3fcbff Quiet down those "interrupt stuck?" messages. 1997-10-28 21:10:07 +00:00
gwr 5770fa53f1 I had the memory map wrong for the SCSI/Ethernet board.
Fixes from Michael Thompson.
1997-10-25 18:20:09 +00:00
gwr 1182affa8f I had the memory map wrong for the SCSI/Ethernet board.
Fixes from Michael Thompson.
1997-10-25 18:04:20 +00:00
gwr 9420004b46 Remove the for-loop that wants to map multiple msgbuf pages.
Multiple msgbuf pages will not work without a redesign of
the kernel VM layout, so let's not pretend we can do it.
1997-10-23 02:24:41 +00:00
gwr 1060564fdc Make this generate the same output as kern/genassym.awk 1997-10-23 02:06:28 +00:00
gwr 737748a765 Generate assym.h into assym.h.tmp first, then move it. (safety)
Add a dependency for stub.o:Makefile
1997-10-23 01:39:20 +00:00
gwr 2476c3a858 Fix a warning 1997-10-21 22:14:08 +00:00
gwr f246430dba Nuke same-unit hack in match. 1997-10-17 21:49:07 +00:00
gwr cfe268b782 Sync with GENERIC 1997-10-17 04:29:59 +00:00
gwr 3d76b19e4b Add idprom.c 1997-10-17 04:26:10 +00:00
gwr 297a7bfa90 Move IDPROM stuff from netif_sun.c to idprom.c where it belongs. 1997-10-17 04:06:23 +00:00
gwr 1ea958fad8 Move initialization code from xxattach to xx_init and call that
from both xxattach and xxopen instead of calling xxattach from
xxopen with faked up autoconfig args.  Fix warnings.
1997-10-17 03:47:52 +00:00
gwr f14029fcd6 Clean up the match function. 1997-10-17 03:44:49 +00:00
gwr 703ed32e6c Clean up cg2match() 1997-10-17 03:43:56 +00:00
gwr 98eb63d8f8 Add support for the Sun3/E "se" (Ethernet/SCSI) board.
Compiles, but NOT YET TESTED.
1997-10-17 03:39:44 +00:00
gwr 81f2d0b179 Move si_reset_adapter() from si.c into the bus-specific modules.
Support the Sun3/470 (sun3x).  Adapt to the new DVMA interface.
Set the si_xxx_options in the config file (easier for users).
1997-10-17 03:33:34 +00:00
gwr 5a1f692161 Sync. with the sun3x (mostly cosmetic changes). 1997-10-17 03:25:05 +00:00
gwr fc2200d8a4 Make DVMA space pointers (void *) like the sun3x. 1997-10-17 03:23:06 +00:00
gwr e1e41e2529 Make the "LED slow-down on load" thing an option. 1997-10-17 03:22:18 +00:00
gwr 6b8137f8f0 Make DVMA space pointers (void *) like the sun3x. 1997-10-17 03:20:13 +00:00
gwr 991d9e236b Declare functions for _STANDALONE too. 1997-10-17 03:19:20 +00:00
gwr 1b1b628e81 Sync with GENERIC 1997-10-17 03:17:50 +00:00
gwr 1f0cc730a8 typo 1997-10-17 03:17:01 +00:00
gwr ab5828ead6 Add Sun3/E stuff, and re-organize. 1997-10-17 02:59:05 +00:00
gwr 787dc36d1a Add COMPAT_1? 1997-10-17 02:55:40 +00:00
christos e024917407 fix chrtoblk prototype 1997-10-17 02:00:39 +00:00
fair 935f020e6d move sysctl.h include after vm.h to get at vmspace definition and correct compile error 1997-10-17 01:43:33 +00:00
gwr 4aaf52ce2a Add VME support 1997-10-16 17:20:35 +00:00
gwr e9393ba0e4 MONSTART/monstart symbol 1997-10-16 16:14:44 +00:00
gwr a5b839419b Add VME support 1997-10-16 16:13:21 +00:00
gwr 5942f9b29a Check bustype in dvma_kvtopa() 1997-10-16 16:11:17 +00:00
gwr b4f7e0ec3d Remove the autoconfig glue. This driver is mandatory,
and the match/attach functions did nothing anyway.
1997-10-16 15:56:02 +00:00
gwr f78c7f1fd8 Add VME support 1997-10-16 15:50:05 +00:00
gwr c427423ad4 cosmetic 1997-10-16 15:45:46 +00:00
gwr 38af6e81df VME support 1997-10-16 15:39:36 +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
jeremy d2d5e50d91 Rewrote the comments about the operation of the I/O mapper to make them more
accurate and (hopefully) easier to understand.
1997-10-10 09:50:03 +00:00
jeremy 88a82f5e7a Corrected typo in comments. 1997-10-10 01:36:32 +00:00
jtc da7890c526 Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:31:58 +00:00
gwr 38b2ba3e3f typo 1997-10-07 20:05:00 +00:00
gwr d0febbb62c Be sure to kmem_free_wakeup() the same range of address space we
got from kmem_alloc_wait() earlier.  Thanks to Michael L. Hitch
and Scott Reynolds.  (Fixes the sun3/sun3x part of PR#4120.)
1997-10-07 18:28:55 +00:00
gwr c9d8d6ae1d Use sizeof(struct ieob) instead of a sun3-specific macro,
so this driver will work on the sun3x as well.  (Works!)
1997-10-07 18:17:19 +00:00
gwr b298a0b98c fix warnings 1997-10-07 17:56:30 +00:00
gwr 35cfb77c2f Sync with GENERIC 1997-10-07 17:50:50 +00:00