Commit Graph

1575 Commits

Author SHA1 Message Date
christos 7f41ec0345 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:50:53 +00:00
pk da4ac7ec5a GC setpte*() declarations. 1997-09-27 18:04:47 +00:00
pk 450cdbdaab Move the "unimplemented software trap" message within `#ifdef DIAGNOSTIC'
and use uprintf() for the notification.
1997-09-27 18:03:39 +00:00
pk 70ca0fdc80 Move the per-processor counter register into cpuinfo. 1997-09-27 18:01:30 +00:00
pk d0b1ee0833 * Optimize pmap_{zero,copy}_page4m() a bit by pre-computing the PTE addresses
of the reserved KVAs (vpage[]) used by these routines. This avoids the
  context switching in there.

* In pmap_redzone(), remove the first kernel address (at KERNBASE) from
  the kernel maps instead of just turning off the PTE `valid' bits.
  The latter doesn't create a "red zone" at all, but causes the VM to
  allocate a new page if the red zone is touched.
1997-09-27 17:58:03 +00:00
pk 7482ebb584 Insert a hack to allocate IOMMU addresses congruent to the kernel virtual
address that being DVMAed to.
1997-09-27 17:49:33 +00:00
mrg fa6b4a3a7b add (commented) options BLINK, per PR#4075. 1997-09-27 09:56:25 +00:00
pk f338821834 Do not set CPUFLG_CACHEPAGETABLES inappropriately on microsparcs 1997-09-26 22:17:23 +00:00
pk 665c7aa080 * Implement a private page table storage allocator for SRMMUs. It provides
uncached (if needed) chunks of memory of the two sizes (256 and 1024
  bytes) that the SRMMU ever needs.

* Change pmap_changeprot4m() so that is does not rely setpte4m() because
  setpte4m() cannot be used for anything other than VAs that are in the
  pmap associated with the current context.
  In the same vain, make sure that kvm_uncache() switches to context 0.
1997-09-26 22:15:37 +00:00
fair 40f6f7e831 Make the #ifdef expression prior to the declaration and use of
"nptesg" match each other, per PR#4024.
1997-09-25 07:31:28 +00:00
pk 40c87730b3 Move KERNBASE to 0xf0000000. 1997-09-23 19:59:27 +00:00
pk f5bb941f5b MSGBUFSIZE needs no obscure adjustment; initmsgbuf() takes care of that. 1997-09-23 08:23:29 +00:00
pk c209086562 The symbol `_msgbufaddr' is no longer exported. 1997-09-23 08:19:56 +00:00
pk 9632cb41c6 Fix some lossage resulting from changed message buffer initialization:
don't buck the trend and move the call to initmsgbuf() to cpu_startup()
in machdep.c (like most other ports do) where we can setup things right
in one go. (This means that the CSRG copyright will no longer be in
the kernel logs).
1997-09-23 08:16:26 +00:00
christos b562e93fc1 Remove duplicate declaration 1997-09-22 20:35:51 +00:00
christos 676d60fa45 Fix printf formatting; remove extra spaces, add : at the end. 1997-09-22 20:34:45 +00:00
leo fb0bc9eeae Fix (hopefully) the compile errors introduced by the msgbuf changes. 1997-09-22 15:03:58 +00:00
pk fca3465b96 Do not skip over a break trap instruction, now that the DDB code can
do it properly.
1997-09-20 19:00:40 +00:00
pk 9b3d64edb9 Remove the `segmap' array from the header. Insert an offset and count
field to get to it instead.

Add field `kernbase' so libkvm can be independent of the kernel's link address.
1997-09-20 18:23:51 +00:00
pk 59ed02a11b pmap_dumpsize() returns a number of disk blocks. 1997-09-20 18:18:33 +00:00
pk 1cd19dc013 Change crash dump layout a bit so the size of the `cpu_kcore' structure
does not depend on the value of KERNBASE.

Change pmap_dumpsize() to return disk block units, in stead of pages.
1997-09-20 18:14:01 +00:00
leo 2b138578d7 Correct for the extra member in 'struct kern_msgbuf' when calculating
the number of bytes we want to allocate.
1997-09-20 12:10:09 +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
pk bb3e7cdb98 Fix viking/MXCC botch similar to pmap.c. 1997-09-18 20:44:43 +00:00
pk ef73834bdc Check for the `VIKING_PCR_TC' being set, just in case. If it isn't set,
delay the use of the `CPUFLG_CACHEPAGETABLES' flag.
1997-09-18 20:29:15 +00:00
pk eac8e745a7 Add a function to stop sun4m counters and call it early during
auto-configuration.
1997-09-18 20:25:34 +00:00
pk 9d1afc6f01 Fix a botch in reservemon4m() causing the `Alternate cacheability' not being
set on viking MXCC machines while using transparent memory access mode. This
becomes apparent when booting on multi-processor viking machines.

While I'm here, arrange to tempt fate a little less by using `AC' mode
for the shortest possible periods of time.

Special thanks to Matt Ragan for running my test kernels.
1997-09-18 20:16:45 +00:00
pk aa998af35c Hard-code a couple of sun4 cpu-clock speeds.
Fix a printf formatting glitch.
1997-09-15 20:52:36 +00:00
pk b5004e4ce1 Call the device close routine when we're done reading. 1997-09-14 19:28:17 +00:00
pk 5ba6b94ba6 Do not use KERNBASE to calculate the `end of symbols' location. Instead
use the `a_entry' field from the kernel's header as a base.

Pass on a new DDB magic number to the kernel, so kernels linked for a
different KERNBASE value can apply a correction when booted from old
bootblocks.
1997-09-14 19:27:21 +00:00
pk 4969489cb6 Define a new DDB magic number to pass to the kernel. 1997-09-14 19:22:55 +00:00
pk 383448522d Refer to KERNBASE instead of its current numerical value in comments
and some early debugging code.
1997-09-14 19:20:48 +00:00
pk dc4f93c2a1 Collect sbus status and configuration registers in `struct sbusreg'. 1997-09-14 19:17:25 +00:00
pk e4a198d193 Move sbus fields to sbusreg.h where they belong. 1997-09-14 19:16:04 +00:00
pk a3140bf9f2 NetBSD 1.2 and earlier sparc bootblocks have KERNBASE compiled in. This
prevents booting DDB kernels that are built with a different value of KERNBASE.

Apply a correction based on the magic number passed in by the bootblocks.

New bootblocks without the hard-coded KERNBASE reference will be assigned
a new magic number.
1997-09-13 20:36:48 +00:00
pk c635b25325 In kbdattach() (the pseudo-device attach routine) wait for the keyboard
reset sequence to complete.  Just sending the reset command and rushing
off -- like it used to do -- might cause the keyboard's response to get
lost in case the remaining kernel initialization decides to interact
with the console (RB_ASK!) by calling cngetc(), which goes off polling
within the PROM.
1997-09-13 19:12:18 +00:00
pk 27f2065c2c Update syscall() and setregs() in the wake of the recent execve() changes. 1997-09-12 08:55:01 +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
pk aeec7a4ecc Turn off "branch folding" in microsparc II processors. This seems to
avoid strange panics happening. Patch suggested by Chris Torek.
1997-09-10 19:11:23 +00:00
pk 0bd088474a Turn on D_DSBL_WRINVAL on `ledma'. 1997-09-09 20:54:48 +00:00
pk 240f9f0804 Bring db_{read,write}_bytes() prototypes in scope.
Move Debugger() within `#ifdef DDB'
1997-09-01 00:16:31 +00:00
pk 7d7a8e5773 Switch to MI kgdb code. 1997-08-31 21:29:16 +00:00
pk 84877e89f6 Allow a BREAK to cause a kgdb_connect(). 1997-08-31 21:26:37 +00:00
pk 7950e785f9 Switch to MI kgdb code. 1997-08-31 21:22:44 +00:00
pk 2b1e7bab51 pmap_writetext(): use context 0. 1997-08-31 21:08:03 +00:00
augustss a79408b6c7 Change match routine to use "audio" as the ROM name. 1997-08-27 22:42:23 +00:00
augustss c58d387b0f Fix prototype for amd7930_set_params. 1997-08-27 22:33:59 +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
augustss 6616d47838 - Change audio_hw_if a little: set_param now sets the play and record modes
at the same time instead by using two different calls.  This enables
  it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
  play and record settings are independent.
- Fix some buglets in audio.c.
1997-08-24 22:31:23 +00:00
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
augustss 556cf1abc0 Make it possible for audio to attach to audioamd. 1997-08-22 11:45:06 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
augustss 332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
mjacob 419960bd0e Changes for PCI Qlogic ISP2100 meant a few minor changes. 1997-08-16 00:33:04 +00:00
pk dd07701791 Do not use `rasterconsole' by default on this framebuffer. 1997-08-07 19:12:30 +00:00
pk 46ca64dc14 Comment out body of pmap_copy() which got committed accidentally (btw. it
works, but its performance benefits are not immediately obvious).
1997-08-05 11:06:58 +00:00
pk b449c91f9b Correct typo that has been lurking undetected for some time. 1997-08-05 11:00:10 +00:00
pk a7f1e52ffd Some cosmetic changes suggested by Brian Baird: cache config msgs & RT625 fpu. 1997-08-05 10:40:21 +00:00
pk 7841423191 Hypersparc detection. 1997-08-04 22:41:25 +00:00
pk 8f937196fb Don't flush the cache in setpte4m(). Most callers have flushed the page
already and some MMUs might require a valid mapping to exist for the
virtual address to be flushed.
1997-08-04 20:09:54 +00:00
pk 3ffd287cc0 Move MMU dependent DDB goo into a pmap helper function. 1997-08-04 20:02:59 +00:00
pk 24ad0e8316 Prototype pmap_writetext(). 1997-08-04 20:00:47 +00:00
augustss 658656bb99 Audio changes:
- Change the way attach and open works to allow multiple audio
	  devices.
	- Split the mulaw.c file into two to avoid dragging in mulaw
	  convertsion when they are not needed.  Add 16 bit alaw/mulaw tables.
	- Change the way audio properties are gotten.
	- Recognize more versions os SoundBlaster.
1997-07-31 22:33:08 +00:00
fair fc96112975 fix editing boo-boo 1997-07-29 17:55:38 +00:00
fair d074ca9f6e %x -> 0x%x 1997-07-29 10:09:51 +00:00
fair b4750d5084 missed %lx -> 0x%lx 1997-07-29 10:04:44 +00:00
fair 4c351f243e %x -> 0x%x 1997-07-29 09:58:04 +00:00
fair 53adf300b3 %x -> 0x%x 1997-07-29 09:41:53 +00:00
augustss a63034762b Audio: Remove the machine dependant code I put in audio.c by mistake.
This adds another method to audio_hw_if.  Also remove a field from
audio_hw_if that was not read-only.
1997-07-28 20:56:05 +00:00
augustss d58bc6796f audio: Simplify handling of AUDIO_SETFD and committing of encoding mode. 1997-07-27 23:51:48 +00:00
augustss 9745684ebe Changes to the sudio system:
- It is now possible to handle devices that want "looping" DMA,
    e.g. the SoundBlaster correctly.  The WSS and SB drivers use this.
    To do this several new methods were introduced in audio_hw_if.
  - Different silence handling (forced by previous change).
  - The audio driver can now be mmap()-ed, but due to problems in
    the VM system only for writing for now.
  - The OSS (Linux) audio emulation takes advantage of some of the
    new features.
1997-07-27 01:16:32 +00:00
pk 5a47438604 Add some missing entries. Make SINTR_VME()/SINTR_SBUS() more useful. 1997-07-22 20:19:10 +00:00
drochner bdb232d2b6 Don't use <lib/libsa/if_ether.h> anymore. This was a copy of the
old (before ARP changes) <netinet/if_ether.h>, intended for
temporary use.
1997-07-22 17:41:01 +00:00
pk a92a5224ee Remove a couple of "ms2 only" from cache-flush ASIs. 1997-07-20 18:55:03 +00:00
pk bd4c20b09e Invalidate cache tags before enabling the cache, if appropriate. 1997-07-20 18:48:35 +00:00
pk 0e6ca8da9f Use `target selection with DMA' by default. 1997-07-19 21:57:01 +00:00
pk 63fa13065c #include "locators.h" 1997-07-19 21:43:54 +00:00
thorpej 8b278df35a Change the extern declaration of __flt_rounds() into a proper prototype. 1997-07-18 05:11:52 +00:00
jtk ca1bba150a use locator defines in "locators.h" to index cf_loc[] 1997-07-17 03:16:39 +00:00
jtk 9388f271a9 use locator defines in "locators.h" to index cf_loc[] 1997-07-17 02:12:50 +00:00
pk 6b12855c49 pmap_extract(): move printf()'s inside debugging brackets. The caller
decides what to do upon finding an absent mapping.
1997-07-16 15:35:23 +00:00
christos 533bf031cd Add RCSID() macro. 1997-07-16 15:16:43 +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
pk f3dc7ce0f4 Use setpgt4m(), not bzero(), to initialize a pmap's first-level page table.
Fix a slightly misleading comment.
1997-07-09 21:51:26 +00:00
pk 94289e9990 In the turbosparc's "match" function, test for the `master' CPU, in case
someone ever builds a multi-processor turbosparc module.
1997-07-08 22:14:42 +00:00
pk 8eae6eb3b7 Fix a pasto in kvm_uncache() (sun4m)
Add TLB flushes when removing segments/regions.
Flush cache appropriately when cache-tag protection bits need invalidation.
1997-07-08 20:02:47 +00:00
pk 27d22f8faf Add FPU version 5 (turbosparc on-chip).
Re-arrange cpuattach() a bit so that more initialization is done before
dealing with the FPU.  Some more work is still required to de-couple
FPU detection from the autoconfiguration attach code in SMP systems.
1997-07-08 19:58:14 +00:00
pk 99edebd566 fbrcons_{rows,cols} helper functions. 1997-07-07 23:31:30 +00:00
pk af86c62d61 Get console tty size from raster console if applicable. 1997-07-07 23:30:22 +00:00
pk 7a959f1752 Add `maxusers' line and set it to 32. 1997-07-07 21:54:51 +00:00
pk 42f6c894f8 Raise max maxusers to 1024 1997-07-07 21:53:43 +00:00
pk 0360275f33 Clear relevant `cpuinfo' fields upon detection of a cloaked TurboSparc. 1997-07-07 20:43:25 +00:00
pk 2d50be8cb3 Add `turbosparc_getfaultstatus()' to be used instead of the generic srmmu item. 1997-07-07 20:06:42 +00:00
pk 3c1b9ba29b Install media functions only if something useful can be returned. 1997-07-07 16:28:44 +00:00
hannken bcb9e18784 Fix bad parentheses in `getcpuinfo()'. 1997-07-07 08:44:01 +00:00
pk 27434aef27 Follow lock changes (DEBUG => LOCKDEBUG). 1997-07-06 23:57:16 +00:00
pk 4846e5ba47 Adjust for generic lock changes. 1997-07-06 23:52:52 +00:00
pk f02db5d4f6 Turn off microsparc II compatibility bit in Fujitsu turbosparc processors. 1997-07-06 22:23:37 +00:00
pk 0ab67aca5d Define the turbosparc's processor configuration register. 1997-07-06 22:21:11 +00:00