Commit Graph

4004 Commits

Author SHA1 Message Date
phil 2fc0cde6e2 get "make depend" working. 1994-12-16 18:00:36 +00:00
mycroft ab77439747 Clean up constab stuff a little. 1994-12-16 04:19:13 +00:00
mycroft 9614f9bb82 Add mt and pollc stuff. 1994-12-16 04:14:13 +00:00
mycroft 2012971fa4 Fix typo in previous. 1994-12-16 04:00:21 +00:00
gwr 0402f426b8 Fixes to make "ie" work (from Chuck Silvers -- Thanks!) 1994-12-15 21:08:06 +00:00
mycroft a42208fd05 More underscores... 1994-12-15 17:48:39 +00:00
mycroft c32023e792 More underscores... 1994-12-15 17:02:08 +00:00
mycroft 52d8d259fd Add a bt. 1994-12-15 16:14:50 +00:00
mycroft 487dab2ff9 Make a new macro _C_LABEL(), which prepends an underscore to the argument unless
NO_UNDERSCORES is defined.  Use it in the *LEAF() and END() macros.
1994-12-15 15:26:26 +00:00
mycroft db904fa0d4 Remove underscores from uses of *LEAF() and END(). Use _C_LABEL() in explicit
symbol references.
1994-12-15 15:18:29 +00:00
gwr 9b62fc5394 Set params in attach so BREAK works before first real open. 1994-12-15 04:34:06 +00:00
deraadt e22f3bf9f3 typo 1994-12-15 02:53:00 +00:00
deraadt e88bd9f695 obio fixes from the two chucks! 1994-12-14 22:17:18 +00:00
mycroft d42a8b725e Remove extra arg to d_open. 1994-12-14 19:10:08 +00:00
mycroft a7393f95f3 Remove fp arg to d_open. 1994-12-14 18:52:32 +00:00
mycroft ca65f2ce5d Remove dkbad.h. 1994-12-14 15:17:22 +00:00
deraadt 0be2ffa45a make BADALIAS() and CACHE_ALIAS_DIST sun4-safe 1994-12-14 06:59:18 +00:00
mycroft 2f8ea29cdb fdclose -> Fdclose 1994-12-13 21:17:23 +00:00
gwr 887a012c5b Nuke the "vmempage" used by /dev/mem (our pmap doesn't like it).
Instead, allocate a DVMA page as needed (like vmapbuf/vunmapbuf).
1994-12-13 18:42:59 +00:00
gwr ee61fc716b Have working bus_peek(), and drivers use it. 1994-12-13 18:37:22 +00:00
gwr 10e46730cf Support TIOCGFLAGS, TIOCSFLAGS (from Matthew Green via Theo). 1994-12-13 18:35:56 +00:00
gwr bfae9f3105 Have working bus_peek(), and drivers use it. 1994-12-13 18:26:39 +00:00
mycroft aeda11fc40 Remove the d_subtype frobnication. It was clearly broken, and not very
useful.
1994-12-13 15:31:54 +00:00
mycroft b0e55a5994 Add dummy itestart(), and use ttrstrt() rather than a local version of the same. 1994-12-13 14:20:33 +00:00
mycroft 05e78f1424 Add empty pcstop(). 1994-12-13 13:42:53 +00:00
dean c0b7039208 removed ifdef XXX 1994-12-12 19:34:59 +00:00
gwr fe52f9ae4f New autoconfig interface to support VME, etc. 1994-12-12 18:58:45 +00:00
mycroft e694663b46 Make the diagnostics less cryptic. 1994-12-12 04:43:51 +00:00
mycroft 3e4a358e28 Patch from Thomas Eberhardt to make PCnet-32 chips work. 1994-12-12 04:39:52 +00:00
mycroft 995e676d90 Add `flags 1' to ast subdevices, as pointed out by John Kohl. 1994-12-11 16:20:48 +00:00
pk e8880dceb9 Follow prototype changes in libsa. 1994-12-11 15:18:34 +00:00
christos 303841c92e 3c509 fixes to avoid adapter getting stuck in high traffic conditions.
I don't particularly like the fixes, but at least now the 3c509 never
gets stuck. On the other hand, performance still sucks in some cases.
1994-12-10 14:52:02 +00:00
pk c09156bf8b Introduce pmap_prefer() which is used to obtain a cache-friendly virtual
address.
1994-12-10 11:43:56 +00:00
mycroft 793e542f89 Fix format of attach message. 1994-12-10 05:55:26 +00:00
mycroft 1acd9ddb90 Speed up FPU task switching some more. 1994-12-10 00:28:18 +00:00
phil cef7e3d0dc Changes from Matthias P. 1994-12-09 21:04:40 +00:00
mycroft 957694159f Correct a couple of things... 1994-12-08 20:55:05 +00:00
dean ec60b72f58 Put Ultrix disklabel compatability back in. 1994-12-08 18:33:19 +00:00
deraadt ca6f5cbe06 Use symbolic constants to access the prom vector.
Deal with v0 openrom (on sun4c machines only).
1994-12-07 14:47:04 +00:00
mycroft e5379bfffb Clean up deleted files. 1994-12-07 14:46:06 +00:00
deraadt 4144af8de8 bigtime cleanup 1994-12-07 14:45:54 +00:00
deraadt 1ef32e64bc clean better 1994-12-06 20:54:46 +00:00
deraadt 64eedae2df changer fix 1994-12-06 14:39:47 +00:00
pk fc1b40eef4 cosmetic change. 1994-12-06 10:39:40 +00:00
pk 2397f57e36 Move DDB argument processing up before our input registers get trashed. 1994-12-06 09:58:09 +00:00
deraadt 03cba26fa6 place message buffer in low physical memory, so that it can survive a
warm boot. the sun4 boot program corrupts some memory there so adjust
upwards on the sun4. (from chuck)
1994-12-06 08:34:00 +00:00
glass 2227b302cf update 1994-12-06 06:59:01 +00:00
mycroft 8d87220928 Don't ignore the exit status of ld(1). 1994-12-06 06:07:39 +00:00
mycroft 6d6a24357a Compile with -g. 1994-12-06 05:02:26 +00:00
deraadt 31e5af3828 vm access permissions give SIGSEGV
alignment errors give SIGBUS
1994-12-06 00:27:46 +00:00
deraadt 421ec01e3f bdev for st 1994-12-06 00:18:10 +00:00
deraadt 2717a8de7e TIOC[SG]FLAGS from matthew green 1994-12-06 00:01:39 +00:00
phil 008d895ed1 config.new changes and sendsig change. 1994-12-05 19:27:38 +00:00
phil 51aa2cad2b USPACE change. 1994-12-05 19:27:20 +00:00
phil dedd59e3c2 Twiddles to ge config.new working. 1994-12-05 19:26:56 +00:00
phil 0503a7c8a8 Fixed a bug in resettodr that set the month to 13 in the hardware clock! 1994-12-05 19:14:27 +00:00
dean a056ea67c9 get disk and block size when opening device rather than probe time
(From Ralph Campbell)
1994-12-05 19:11:59 +00:00
dean 50c5dd6f0d fix problem with disconnects (Ralph Campbell) 1994-12-05 19:11:12 +00:00
deraadt 7cd44df2e3 scsi changer 1994-12-05 13:54:11 +00:00
deraadt fcb4fd9cb0 COMPAT_10 all around 1994-12-05 09:17:30 +00:00
mycroft 1e0e6d72c9 Conditionalize the audio driver on NAUDIO, not NSB, now that the former
exists.
1994-12-05 05:45:38 +00:00
briggs 749ca327c9 Nuke Log in if_aereg.h and remove duplicate (and benign) sc->smem_size
assignment from Brad Parker (brad@fcr.com).
1994-12-04 19:40:14 +00:00
mycroft e92233c07c Deal correctly with esym being 0. 1994-12-04 07:37:27 +00:00
mycroft c3b944cb15 Use correct select routine for audio. 1994-12-04 06:32:39 +00:00
briggs 1c47e24828 Mac ROM Glue changes from grantham@tenon.com. 1994-12-03 23:33:55 +00:00
briggs f2301680d3 Same as GENERIC but w/o FPCOPROC option. 1994-12-03 23:31:58 +00:00
briggs d703fa05aa At least somewhat functional ethernet driver from Brad Parker
(brad@fcr.com).  Requires changes to via.c which are coming with
other changes in a moment...
1994-12-03 23:30:45 +00:00
briggs bce9e69ed0 Handle supervisor/user data differently. Status of functionality
still nil.
1994-12-03 23:28:37 +00:00
briggs fae5b57ec7 int -> u_long in ioctl() prototype. 1994-12-03 23:27:40 +00:00
briggs 4e06addf8a Nuke DEBUG. 1994-12-03 23:26:25 +00:00
mycroft 8e6f464987 fdclose -> Fdclose 1994-12-03 15:17:06 +00:00
mycroft 5c3d80060d Reset the entire PSL, not just part of it. 1994-12-03 14:55:51 +00:00
mycroft dadc0f95cf Clean up deleted files. 1994-12-03 14:45:42 +00:00
briggs 2bef12a661 Get rid of private delay(). 1994-12-03 14:17:20 +00:00
briggs 037951ec4f Remove private delay() and clean up some odd delay times that we were
using...
1994-12-03 14:16:58 +00:00
briggs f04205a867 Implement a real delay() that at least approximates a usec delay. 1994-12-03 14:03:23 +00:00
chopps c169980753 add typedefs for pte's and ste's. 1994-12-03 12:26:50 +00:00
gwr e6fda77e6d Remove some complication that is no longer needed now that
traps in ddb are handled correctly.
1994-12-02 18:18:44 +00:00
gwr b777d2ab17 Make traps that will panic stop ONCE in the debugger. 1994-12-02 06:20:54 +00:00
mycroft 73afee1973 We don't need the extra space to preserve the BIOS variables any more. 1994-12-02 03:02:49 +00:00
gwr 2529298878 Export some headers that X will want, and minor clean-up. 1994-12-01 22:46:23 +00:00
mycroft 5e26e46bb4 Clean up deleted files. 1994-12-01 17:34:30 +00:00
chopps 548708dd80 bring up to current. change sun to sunos. handle changes in device
open params and autoconf match function params.
1994-12-01 17:24:23 +00:00
dean ba0ac0e803 added missing #ifdef DEBUG 1994-12-01 16:41:05 +00:00
mycroft 8fd1f92ae7 Don't futz with the cursor shape unless we really, really need to. 1994-12-01 11:12:04 +00:00
mycroft 211b002017 Ignore ERR during diagnostics. 1994-12-01 10:45:26 +00:00
mycroft 434d451672 Adjust dump calculation to avoid sign problems. 1994-12-01 09:53:38 +00:00
gwr ed68e042f3 Improve diagnostic in pmap_page_index(). 1994-11-30 22:02:47 +00:00
deraadt cae9130ef6 enable SYSVMSG,SYSVSEM,SYSVSHM 1994-11-30 19:44:53 +00:00
gwr 8c09a8895b Optimize pmap_page_index() and fix some comments. 1994-11-30 15:45:19 +00:00
mycroft 6686f7f263 Rework detection a bit, and check for the Pentium fdiv bug. 1994-11-30 04:42:07 +00:00
mycroft c72f58d401 Don't need to turn on emulation when npx not present; we leave it off always. 1994-11-30 04:26:06 +00:00
briggs c8d7d0f2f5 Re-arrange order of a comparison and compensate for change in device
structure locations.
1994-11-30 02:42:47 +00:00
mycroft 867ebf1d84 Clear the controller active flag after a timeout. 1994-11-30 02:32:03 +00:00
mycroft 5584ff927f Don't stall the queue on CHECK SENSE if we get a reselect while selecting. 1994-11-30 02:08:01 +00:00
deraadt 12af703502 wait for ack from chip 1994-11-29 22:35:20 +00:00
mycroft 639a64de08 Fix a null pointer reference. 1994-11-29 21:35:13 +00:00
mycroft 51bed8d804 Add an assertion mechanism to check for more abnormal conditions. 1994-11-29 21:29:56 +00:00
mycroft 58cb5339d6 For consistency... 1994-11-29 20:57:28 +00:00
mycroft 41b26a6dfd Handle BUS FREE phase a little differently, to get better error detection. Other
cleanup.
1994-11-29 20:08:27 +00:00
mycroft bb90feebac Disable debugging breakpoints by default. 1994-11-29 17:56:49 +00:00
mycroft 5ac2484d95 * Redo most of the message and phase state machines. Multiple pending
message outs should now work correctly (including retransmissions).
Multiple messages ins should be more efficient.  Missing REQ after
reselection phase should now (correctly) cause a wait with ENREQINIT
set.

* Abstract out the reselection out sequence, and use it directly to
get sense info.  (This is somewhat faster than the generic done/sched
sequence.)

* If there are no ACBs available, wait interruptibly for one.

* Leave the interrupt registers alone during message in/out; just
watch for phase change.  Don't (incorrectly) reenable interrupts
during data in/out; defer that to aicintr().

* Handle command pointer per SCSI 2 spec.

* Other minor coding improvements.
1994-11-29 17:50:39 +00:00
briggs e054795fb3 "../scsi/*.h" -> <scsi/*.h> 1994-11-29 03:43:52 +00:00
briggs 81828a6a38 Boolean goof. (True) 1994-11-29 03:38:48 +00:00
briggs a9262a3090 SUN_SYS_sigreturn -> SUNOS_SYS_sigreturn 1994-11-29 03:37:37 +00:00
gwr 4bf773963e Update a comment to match code... 1994-11-28 19:33:08 +00:00
gwr c2466a5ffa The sun3 port now has its own db_read_bytes() too. 1994-11-28 19:29:14 +00:00
gwr b57d4010ce Fix syscall arg copyin, etc. 1994-11-28 19:17:07 +00:00
gwr 0caf3c47cb cosmetic 1994-11-28 19:13:18 +00:00
dean fcf0991366 new asc.c from Ralph Campbell 1994-11-28 19:05:54 +00:00
dean 2a5cfe5b41 fix from Jonathan Stone 1994-11-28 18:45:39 +00:00
dean 1e9a7e3573 some fixes and Ultrix compat stuff from Jonathan Stone. 1994-11-28 18:42:21 +00:00
dean 363152617f Ultrix compat stuff from Jonathan Stone. 1994-11-28 18:41:31 +00:00
dean 5b1da4bc9b Removed fp.S 1994-11-28 16:28:20 +00:00
briggs c02010b599 Add a dk_establish null routine. Clean up some whitespace. Needs a
real overhaul.
1994-11-28 04:43:51 +00:00
briggs 9f994613ae compat/sunos/sun_* -> compat/sunos/sunos_* 1994-11-27 22:10:28 +00:00
briggs 82a9bf633f sun_syscall.h -> sunos_syscall.h 1994-11-27 21:47:36 +00:00
briggs 3938bad3ff Attempt to use sys/scsi. 1994-11-27 20:07:38 +00:00
briggs 0656455667 Experimental method of getting a scsi unit # from scsi target. 1994-11-27 19:59:09 +00:00
briggs 38952df227 Re-enable NFSCLIENT 1994-11-27 19:53:10 +00:00
deraadt 1eb4763766 debug code for dma hang 1994-11-27 00:08:34 +00:00
deraadt 41260b47ce i hate ttyX-ignore-cd, but leave it here for a while longer 1994-11-26 07:36:52 +00:00
deraadt c548f8887c repair some stuff 1994-11-25 23:56:21 +00:00
deraadt 7289c28055 cnpollc function for DDB 1994-11-25 23:55:53 +00:00
christos 6a2c060851 fix unary plus typo :-) 1994-11-25 23:19:03 +00:00
deraadt 3a4ca432b2 no need to turn DMA off twice 1994-11-25 23:12:44 +00:00
deraadt 6abee40cb1 prototype wcopy/wzero 1994-11-25 23:11:42 +00:00
deraadt e62b8b3fa2 choose {w,b}{copy,zero} automatically 1994-11-25 23:11:23 +00:00
deraadt 2a90e82894 wzero/wcopy moved to machdep.c 1994-11-25 23:10:47 +00:00
deraadt fc5e9a48e2 wcopy/wzero belong here 1994-11-25 23:10:26 +00:00
deraadt e7728e3080 support obj directory 1994-11-25 23:09:34 +00:00
deraadt f08d8394d7 putchar is void 1994-11-25 23:09:20 +00:00
deraadt 2bfe2ea770 round text segment to __LDPGSZ 1994-11-25 23:09:09 +00:00
ragge 265019bb40 Lots of fixes and updates. 1994-11-25 19:09:49 +00:00
ragge 299c14af0c New handling of pte:s for physio. 1994-11-25 19:09:31 +00:00
ragge ca49094181 Lots of updates & fixes. 1994-11-25 19:08:50 +00:00
ragge eaed555111 Locore.c added. 1994-11-25 19:08:26 +00:00
ragge be8ac345d1 *** empty log message *** 1994-11-25 19:08:04 +00:00
ragge edac8e459c *** empty log message *** 1994-11-25 15:28:26 +00:00
ragge 3257d0f399 Definitions for console & console media. 1994-11-25 15:25:49 +00:00
mycroft cba32aa25f Minor update for new autoconfig. 1994-11-25 08:17:21 +00:00
dean 15cf365b55 more patches from Jonathan Stone 1994-11-24 17:50:49 +00:00
dean b123b45ce0 changed fp.s to fp.S 1994-11-23 23:06:43 +00:00
dean fc16452217 Ultrix compatable device numbers (from Jonathan Stone) 1994-11-23 22:33:46 +00:00
deraadt 58117a4011 ie cards coldstart with a parity error, reset it 1994-11-23 22:28:12 +00:00
mycroft 0649f37219 Officially credit Onno. 1994-11-23 22:00:08 +00:00
dean e5d5a6cf17 thread_wakeup wants (void *) not (int) 1994-11-23 20:46:20 +00:00
deraadt 3835c5ae6a CP exceptions in wrong slots in trap table (noticed by matt@rme.com) 1994-11-23 20:33:22 +00:00
dean 91ed53db13 more changes from Jonathan Stone 1994-11-23 18:13:58 +00:00
dean 342f9cd185 more underscore changes (from J. Stone) 1994-11-23 17:47:53 +00:00
mycroft 8bacafc13c Clean up deleted files. 1994-11-23 09:10:13 +00:00
gwr 433fc1d2f8 Revert trap/dopanic case (avoid recursive traps). 1994-11-23 08:18:17 +00:00
gwr 70b0a8404f Fix a warning. 1994-11-23 08:16:26 +00:00
gwr c4a2c15f0e Add nullcnpollc() so DDB works again. 1994-11-23 08:15:58 +00:00
gwr 49e502d8f9 New cd_match prototype. 1994-11-23 08:13:53 +00:00
mycroft 2058abab15 Forgot to commit this as part of the LBA changes. 1994-11-23 07:56:52 +00:00
mycroft cc44b4600c There's no point in bothering to unlock what we didn't lock. 1994-11-23 07:54:15 +00:00
deraadt 941871d6ab XXmatch change (and a few __P() as well) 1994-11-23 07:02:02 +00:00
gwr dcca0eee6a New cd_match prototype. 1994-11-23 07:01:01 +00:00
deraadt ef31ebbf26 stack trace on crash 1994-11-23 07:00:00 +00:00
gwr e99ed4c957 New cd_match prototype. 1994-11-23 06:58:36 +00:00
gwr 5b330c7b77 sun_* -> sunos_* 1994-11-23 06:46:25 +00:00
gwr 2f20ff9585 Update to match new d_ioctl prototype. 1994-11-23 06:45:48 +00:00
gwr 6ab4f0b024 sun_* -> sunos_* 1994-11-23 06:40:22 +00:00
gwr 00605f6af8 Update sendsig() to match new prototype. 1994-11-23 05:43:00 +00:00
gwr 4e1ccf9989 Add USPACE 1994-11-23 05:18:16 +00:00
mycroft 6dda55519e Fix an outdated comment. 1994-11-23 03:11:01 +00:00
mycroft a3fc466734 Use logical block addressing if available. Be a little more careful about
maintaining timeouts.  Clean up wddump() a bit.
1994-11-23 01:35:43 +00:00
dean 5eef1840c0 catching up with other changes 1994-11-22 18:59:57 +00:00
dean 907abf89c7 put #ifdef DEBUG around call to debug routines 1994-11-22 18:58:43 +00:00
dean 4deb1cf175 run locore.S and fp.S through cpp 1994-11-22 18:57:25 +00:00
mycroft 525fc36e19 Implement 32-bit reads and writes, but for now assume 16-bit mode. 1994-11-22 10:20:16 +00:00
mycroft 3a99ddf172 Add a missing newline in some error messages. 1994-11-22 09:36:56 +00:00
mycroft db3bde9525 Implement EIDE multi-sector PIO and DMA modes, based on code from Onno van
der Linden.  Also, various structural cleanup, and fix two bogons that crept
in, and remove all of the old clustering nonsense.
1994-11-22 09:33:59 +00:00
mycroft 1e01855683 Minor fix to debugging code. 1994-11-22 05:50:48 +00:00
mycroft 85826f0fbe Fudge a couple more fields for ancient disks. 1994-11-22 05:39:16 +00:00
mycroft e1a7bac628 Change some constant names, etc., to better match the ATA spec. 1994-11-22 05:34:49 +00:00
mycroft 95edd299b0 Add still more locking. 1994-11-22 03:23:49 +00:00
mycroft dcb90851c2 Minor change. 1994-11-22 01:21:11 +00:00
mycroft 2c274e6ac8 Clean up deleted files. 1994-11-21 23:32:58 +00:00
gwr 80420e1f71 Lots of changes. Fairly stable now. 1994-11-21 21:38:16 +00:00
gwr 59bf96aa56 Lots of changes. Fairly stable now. 1994-11-21 21:26:40 +00:00
deraadt d3408abf29 C error 1994-11-21 01:56:38 +00:00
mycroft 5bd4115690 Add some missing locking, and some general cleanup. 1994-11-20 22:36:43 +00:00
mycroft d2d4dc4654 Use immediate constants for port numbers < 0x100. 1994-11-20 21:36:44 +00:00
deraadt 274a90762d copyright/Id cleanup 1994-11-20 20:51:32 +00:00
christos f63115591a Included <sys/cdefs.h> since this file is now using __signed.
It broke non gnu compilers.
1994-11-20 18:50:18 +00:00
mycroft 9a3840f2f0 Stylistic changes. 1994-11-18 22:25:12 +00:00
mycroft 79a1309e3c Remove Xwild; it's no longer used. 1994-11-18 22:22:40 +00:00
mycroft e075f8c13d Convert port, IRQ, and DRQ numbers to ints. 1994-11-18 22:18:35 +00:00
mycroft 61800cfa25 Convert port, IRQ, and DRQ numbers to ints. 1994-11-18 22:07:32 +00:00
mycroft 35cdd801e6 Convert port, IRQ, and DRQ numbers to ints. 1994-11-18 21:57:40 +00:00
gwr 2bad33d88e Implements db_write_bytes() for the sun3.
(Needed now that kernel text is read-only 8-)
1994-11-17 05:08:55 +00:00
gwr 81839ca1f7 The sun3 needs its own version of db_write_bytes() so just
added #ifndef sun3 around it for now.  This function should
probably be provided by each port (like sun3/db_write.c).
1994-11-17 05:04:35 +00:00
christos fc8e694056 Fixed error svr4 error code mapping; my old attempt was a noop. 1994-11-16 20:14:42 +00:00
dean e7558eafd1 put #ifdef KERNEL around CLK_TCK define 1994-11-15 19:00:49 +00:00
dean 393ee3693c Surrounded call to debug routine with #ifdef DEBUG 1994-11-15 18:59:40 +00:00
mycroft a2727ec558 Check IRQ 9, not IRQ 2. 1994-11-15 00:00:24 +00:00
mycroft b341f7a8c0 Map IRQ 2 to IRQ 9. 1994-11-14 23:58:56 +00:00
dean 705ee976cf Prepended underscores 1994-11-14 23:48:58 +00:00
mycroft e91e570cfd Shorten the Cyrix handling code a little. 1994-11-14 23:35:48 +00:00
dean add2031dcf Prepended underscores 1994-11-14 23:33:46 +00:00
gwr 2e0e96ea27 Fix disassembly of 8-bit branch displacements (sign extend).
Fix invalid array references disassembling float instructions.
Make the system stack pointer visible in show regs.
Make "sr" a proper short, remove some junk...
1994-11-14 20:53:52 +00:00
mycroft 423bfa0764 Garbage collect unused variable. 1994-11-14 08:53:06 +00:00
deraadt 3dd85af7b5 fixed rss code by charles 1994-11-14 06:09:19 +00:00
christos 40abc70ce2 changed open prototype 1994-11-14 05:55:23 +00:00
christos a96cb110a3 Added new svr4 files 1994-11-14 05:54:30 +00:00
christos 55845b1901 changed open prototype in conf.c; added bsd->svr4 errno mapping in trap.c 1994-11-14 05:53:48 +00:00
deraadt e19990c090 make ldcontrolb() use p->p_addr instead of cpcb for the onfault, also
save current onfault value and act at splhigh.
1994-11-14 04:16:12 +00:00
deraadt 3eb863ca4e cache: write-throough/back, and 4/100 has no cache 1994-11-13 22:12:44 +00:00
mycroft 1c5ac2e88c pcb.h requires segments.h now. 1994-11-08 23:09:21 +00:00
mycroft 38d3366f0f Fix type of `code' arg to sendsig(). 1994-11-08 04:22:39 +00:00
mycroft f875a9efe6 Allocate pv_pages differently. 1994-11-08 01:17:19 +00:00
mycroft d254e95680 Garbage collect some variables which are no longer used. 1994-11-07 10:19:28 +00:00
mycroft 21e911d911 Update for new autoconfig. 1994-11-07 09:03:48 +00:00
mycroft cfae52f542 It's legitimate, if foolish, to mask SIGCONT. 1994-11-07 05:57:28 +00:00
mycroft 297c06de67 Comment previous change. 1994-11-07 05:32:50 +00:00
mycroft 86a2079aef When restarting syscalls, make sure we adjust the PC by the correct amount
depending on what instruction we used to enter the kernel.  Push the
instruction length into tf_err on entry.
1994-11-07 05:26:08 +00:00
mycroft ed993b3930 Two trivial optimizations. 1994-11-07 05:09:04 +00:00
mycroft d5f99262a9 Since npxdna() and npxsave() are only ever called at spl0 now, we can get rid
of all the overhead of frobbing the IDT, and just use a simple flag to tell
npxintr() to ignore interrupts.  This allows lots of code reduction.
Also, update some comments and add some DIAGNOSTIC code to detect is these
assumptions ever become wrong.
1994-11-07 03:39:37 +00:00
mycroft 5133a6cfd7 Only save the FPU state if somebody else needs the FPU, or when forking. 1994-11-06 23:43:17 +00:00
mycroft f3ef31e4aa Oops; forgot to adjust stack offset. 1994-11-06 22:05:08 +00:00
mycroft 37863af7bb Forgot two underscores. 1994-11-06 21:51:47 +00:00
cgd d4510670f1 fix for bug 559, as reported by Jason Thorpe. (fix by me) 1994-11-06 21:49:08 +00:00
mycroft 58b3010e87 Use %eax slightly more effectively in cpu_switch(). 1994-11-06 20:51:46 +00:00
mycroft 915336b97c Approximate the divide by multiplying by 3433/4096. This is faster than
the previous code, and more accurate.  Also avoid saving and restoring
registers.
(The multiplication algorithm was generated by GCC.)
1994-11-06 20:33:35 +00:00
mycroft ddb6e42460 Actually, don't bother checking p == 0 at all. 1994-11-06 20:30:09 +00:00
mycroft 5cf38ebdb4 The case of curproc == 0 `can't happen' unless we're in the idle loop, so
allow it to panic by way of a reference to 0 in other cases.  Explicitly test
for p == 0 in the specific cases where it's needed, and only calculate pcb if
needed.
1994-11-06 20:28:57 +00:00
mycroft 9a84611b06 Move the spl0() from the idle loop to the top of cpu_switch(). (This also
avoids needing to call spllower() below.)  Set curproc immediately after
removing the new process for the run queue, before allowing interrupts again,
for the benefit of schedcpu().
1994-11-06 20:21:29 +00:00
mycroft 205d425f2f As pointed out by Bruce, splsoftclock() needs to process pending interrupts
when lowering the priority.  Do this by simply calling splx().  For the
benefit of NFS (for now), modify splx() to return a value so that
splsoftclock() does.  This work is optimized out for every use of splx()
that ignores the value, so it only affects relevant code.
Also, clean up this file a little.
1994-11-06 01:37:47 +00:00
deraadt 4cd7c0f34e reset scsi bus at attach time 1994-11-05 09:35:54 +00:00
deraadt 880176b15b proc0.p_addr must be initialized before we can take a probe trap, so
that the pcb_onfault will be work
1994-11-05 09:31:05 +00:00
deraadt 0d4b376377 only print the vec if needed 1994-11-05 09:28:06 +00:00
mycroft c2191a2ad0 Fully prototype ssdtosd() and sdtossd(). 1994-11-05 03:20:36 +00:00
mycroft 34c4570d61 Only use ssdtosd() when creating, expanding, or copying the LDT. Keep a copy
of the result in the PCB so it can be loaded quickly on context switches.
1994-11-05 03:17:33 +00:00
mycroft 867ac5e15f Add sdtossd() by HOSOKAWA Tatsumi, and a C version of ssdtosd() by me. 1994-11-05 02:47:02 +00:00
mycroft 600aa2c5f8 Trivial optimizations. Also, make sure we get the overflow correct if
called at spl >= clock.
1994-11-05 02:16:26 +00:00
mycroft 2a9b6f7959 Fix stupid bug in last change. 1994-11-04 23:30:15 +00:00
mycroft 4ec6774e12 Add a simplified version of wdcommand() that can be used in some cases.
Avoid needing a wd_softc inside wdprobe().
1994-11-04 23:18:06 +00:00
mycroft 38420d7db1 Don't need cd_indirect. 1994-11-04 22:51:59 +00:00
mycroft 3df6bf0c0e Trivial stylistic changes. 1994-11-04 21:32:23 +00:00
mycroft 098c6e36e6 Various cleanup. In particular, be much more careful with buffer flags. 1994-11-04 21:19:48 +00:00
mycroft e11ffbc64b Fix a call to math_abort(). 1994-11-04 20:47:07 +00:00
mycroft 854d8d96dc Rearrange slightly. 1994-11-04 19:25:34 +00:00
mycroft cfc4633919 Remove outdated comment. 1994-11-04 19:17:47 +00:00
mycroft 1ec8f8d19c Make IRQ_SLAVE a plain number, too, and remove IRQ{0-15}. 1994-11-04 19:13:49 +00:00
mycroft 95f0ee6cd5 Remove icu.h. 1994-11-04 19:11:13 +00:00
mycroft 2252d31c99 Remove use of IRQ0. 1994-11-04 19:10:46 +00:00
mycroft 8d01374523 Don't need icu.h any more. 1994-11-04 19:08:19 +00:00
mycroft b7acf321cd No longer needs icu.h. 1994-11-04 18:59:34 +00:00
mycroft 195574a7de Change all of the uses of IRQ{0-15} and bit masks to use plain numbers
rather than bit shifting.
1994-11-04 18:57:15 +00:00
mycroft d66f8d7cdb Clean up deleted files. 1994-11-04 18:54:43 +00:00
mycroft 29414c5a0a Change all of the uses of IRQ{0-15} and bit masks to use plain numbers
rather than bit shifting.
1994-11-04 18:34:50 +00:00
mycroft 0ba30791b5 Remove references to isa_devtab. 1994-11-04 09:57:52 +00:00
mycroft f8183b2d0e Make a wrapper match function to check the bus and device numbers, rather
than insisting that every driver do it.
1994-11-04 09:42:18 +00:00
mycroft 9af4fee97d Use kvtop() rather than address arithmetic in a couple of places. 1994-11-04 08:55:53 +00:00
mycroft a980084e46 EISA devices have no DRQ. 1994-11-04 08:24:25 +00:00
mycroft b12de59a0a Make this work with new config code. 1994-11-04 07:39:19 +00:00
mycroft 494ac4a412 Comment out one option that doesn't quite work at the moment. 1994-11-04 07:36:44 +00:00
mycroft d9b8813f0e Correct pcprobe() argument list. 1994-11-04 07:30:51 +00:00
mycroft 372fb664e9 Add needs-flag to audio device. 1994-11-04 07:26:49 +00:00
mycroft 1948fcb3fa Add a new function config_scan(), which just calls a particular function
with each plausibly cfdata, ignoring the priority mechanism completely.
1994-11-04 06:40:11 +00:00
mycroft 2e8ae560f6 Commit incest with the config system for this one specific case. 1994-11-04 03:57:32 +00:00
mycroft fa769b0e97 Set ia_irq correctly. 1994-11-04 02:55:32 +00:00
mycroft e43f08ff4c Add `newvers' target. 1994-11-04 01:22:26 +00:00
mycroft df97a5a224 Oops; don't always include EISA and PCI autoconfig. 1994-11-04 01:08:12 +00:00
mycroft b65100aa43 Remove ep0. 1994-11-04 01:03:35 +00:00
mycroft 10c353cf10 Update to match autoconfig code. 1994-11-04 01:02:40 +00:00
mycroft 8f064215a2 isa.h -> isareg.h, and update prototype of pcprobe(). 1994-11-04 01:00:38 +00:00
mycroft 7773b21b74 Correct an oversight. 1994-11-04 00:53:06 +00:00
mycroft 8ce4eae125 Need some constants from isareg.h. 1994-11-04 00:44:32 +00:00
mycroft 162eab3e92 Use NFDC and NWDC, not NFD and NWD. 1994-11-04 00:41:20 +00:00
mycroft 9e4b0e45fe Use NFDC and NWDC, not NFD and NWD. 1994-11-04 00:40:17 +00:00
mycroft 0fe0a0575c #include device.h, for prototypes. 1994-11-04 00:36:47 +00:00
mycroft d4dd538296 Oops; forgot isacd. 1994-11-04 00:07:39 +00:00
mycroft d58828dd61 vector.h should have been nuked ages ago. 1994-11-04 00:02:39 +00:00
mycroft d35f08ffa6 isa.h -> isareg.h 1994-11-04 00:00:36 +00:00
mycroft 3fca7e771a New version using standard config_*() functions. 1994-11-03 23:53:19 +00:00
mycroft 05ff8766ef Call config_rootfound() once for each bus type. 1994-11-03 23:46:15 +00:00
mycroft ebbdd6473b Update to match autoconfig code. 1994-11-03 23:26:03 +00:00
mycroft 19fc9d55c8 *intr() arg does not need to be void*. 1994-11-03 23:23:38 +00:00
mycroft d0163400d1 Update to match autoconfig code. 1994-11-03 23:21:24 +00:00
mycroft 54cc63645d Update to match autoconfig code. 1994-11-03 23:08:27 +00:00
mycroft d23d1e83dc Use indirect config for subdevices, and add dkdrivers where missing. 1994-11-03 22:55:58 +00:00
mycroft 94cde915db Rename pciprobe() to pcimatch(), and move it to pci_machdep.c. 1994-11-03 22:27:16 +00:00
mycroft 194e83af73 Don't allow configuration of specific PCI function numbers. 1994-11-03 22:18:36 +00:00
mycroft e06bd72a85 Always use direct configuration. 1994-11-03 22:15:19 +00:00
mycroft c5d78ba883 Stylistic changes. 1994-11-03 20:12:05 +00:00
mycroft c6038ad75c Clone from GENERIC. 1994-11-03 19:36:05 +00:00
mycroft eb0b9ef0c2 Clone from GENERIC. 1994-11-03 19:21:01 +00:00
mycroft 6d40ac4041 pms0 would be at irq 12 if it existed. 1994-11-03 19:09:17 +00:00
mycroft 429f49d58f Clone from GENERIC. 1994-11-03 19:00:12 +00:00
pk edb1bc6eae Don't mess with device if it was opened while we napped. 1994-11-03 18:57:33 +00:00
mycroft b3d26ef983 Same as GENERIC, but assumes no local disks or tapes. 1994-11-03 18:45:45 +00:00
mycroft 8b77809605 Clone from GENERIC. 1994-11-03 18:37:51 +00:00
mycroft a955dc06dc Rearrange slightly. 1994-11-03 18:27:13 +00:00
mycroft 8685fcd96b commulti needs slave #. 1994-11-03 18:26:48 +00:00
mycroft eada385a68 Clean up deleted files. 1994-11-03 18:14:54 +00:00
mycroft 39ee7e572c Make a real GENERIC config. 1994-11-03 18:14:50 +00:00
mycroft 283745574f Commit this, though it really does need work. 1994-11-03 16:55:57 +00:00
mycroft c47f94b951 Remove some needs-count specs. 1994-11-03 16:50:50 +00:00
mycroft 0f73b4b80a ep can be on EISA bus. 1994-11-03 16:46:42 +00:00
mycroft 557c715327 Make this actually work. 1994-11-03 16:43:26 +00:00
mycroft 06687c1c8d Make this a little closer to current reality. 1994-11-03 16:25:25 +00:00
briggs 492011ffd7 Modify the serial port initialization slightly so it works on the IIsi. 1994-11-03 16:15:27 +00:00
mycroft ea307925ae Clean up deleted files. 1994-11-03 15:55:47 +00:00
mycroft a5917e2a63 Relocate aha1742.c, in preparation for other changes. 1994-11-03 15:55:40 +00:00
deraadt 8b82ad359d bzzzttt wrong wrong wrong 1994-11-03 04:29:53 +00:00
deraadt 4650de140a kill perftest code 1994-11-02 23:18:25 +00:00
deraadt 88af1ef233 VA_VSEG() should use NBPG 1994-11-02 23:16:59 +00:00
deraadt 138a1d9e01 let busmatch print the level/vec 1994-11-02 23:16:28 +00:00
deraadt 48347d17d4 cleanup 1994-11-02 23:16:02 +00:00
deraadt 9b4d6d44f8 ioctl u_long cmd 1994-11-02 05:00:40 +00:00
deraadt 95e71f1dbd first vme ie card 1994-11-02 05:00:13 +00:00
deraadt 274ac617ef clean vnode_if.[ch] 1994-11-02 04:59:59 +00:00
deraadt 8e89099cf4 ioctl u_long cmd 1994-11-02 04:59:23 +00:00
deraadt b71f248be4 do not have UPAGES definition 1994-11-02 04:59:04 +00:00
deraadt 9f96a3313e various 1994-11-02 04:58:25 +00:00
deraadt 4c10604c2b ioctl u_long cmd 1994-11-02 04:57:53 +00:00
deraadt ae3d0a09f9 sendsig u_long code 1994-11-02 04:57:25 +00:00
deraadt 0fec9f9455 add ldcontrolb 1994-11-02 04:57:02 +00:00
deraadt 46f66f22e0 ioctl u_long cmd 1994-11-02 04:55:47 +00:00
deraadt e3b33c7c21 add wcopy/wzero, and ack VME using ldcontrob 1994-11-02 04:55:20 +00:00
deraadt bdcab43fb8 ioctl u_long cmd; and KNF 1994-11-02 04:54:19 +00:00
mycroft 0f8e6cf968 Make a copy of the LDT when forking. 1994-11-01 06:49:19 +00:00
briggs fc3961284c Raise MCLBYTES to 2048. 1994-11-01 03:53:28 +00:00
briggs 6db067c176 sendsig() and sun_sendsig() code to u_long. 1994-10-31 23:47:23 +00:00
mycroft d296006dca Add USER_LDT. 1994-10-31 21:07:50 +00:00
andrew 20cc8b6c5c Increase NKPDE to cope with 64MB RAM. 1994-10-31 06:30:52 +00:00
briggs 65c76f071d Fixup a couple of missed fixes when updating to hp300/amiga
interpretation of mmutype.  Thanks to Lawrence Kesteloot for
catching the first of these.
1994-10-31 01:15:53 +00:00
cgd 6ac2bbfc35 be more careful with types, also pull in headers where necessary. 1994-10-30 21:43:03 +00:00
cgd f02d90ac83 code is u_long for sendsig() 1994-10-30 19:18:44 +00:00
mycroft 1e951824c4 Clean up deleted files. 1994-10-30 18:43:27 +00:00
deraadt 89a7412206 KNF 1994-10-30 18:43:21 +00:00
briggs 815a0b9aca Fix a buglet in computation of fbsize. Pointed out by monroe@cs.pdx.edu. 1994-10-30 13:34:31 +00:00
cgd a91a509292 add NFS server functionality 1994-10-29 08:34:06 +00:00
mycroft 9769a6a6f7 Various:
* Forget all cached info when opening a new disc.
* If the disc is removed, flush the buffer queue rather than stalling it.
* Set the default label after getting the disc size, and fill in the info
for RAW_PART also.
* Change another use of the unit number to a softc pointer.
* Use a dkdevice to hold the label and open partition masks.
* Force the partition offset to 0 for RAW_PART, regardless of the label.
* Nuke MCDPHYS() and MCDREADRAW; they had a silly bug that caused the code
to not work, and they aren't useful anyway.
Some other minor cleanup.
1994-10-28 23:39:59 +00:00
briggs c184327c57 Make this work. Kludge from grantham. 1994-10-28 19:55:37 +00:00
mycroft 46ba25f017 Add vnode_if.[ch] to the clean target. 1994-10-28 17:05:29 +00:00
deraadt 58f5cef745 repair a type 1994-10-28 16:50:59 +00:00
cgd 022ee8f7fe new RCS ID format. 1994-10-27 04:14:23 +00:00
andrew 5a13863a4b Default to decent performance. 1994-10-27 02:04:18 +00:00
andrew fc67924047 Merge changes from Wolfgang Stanglmeier's 941012 release. 1994-10-27 02:02:00 +00:00
cgd a63beafc2b new RCS ID format. 1994-10-26 21:08:38 +00:00
gwr 87ce99227c Move sun3_round_up_seg() here from param.h as a temporary measure.
Eventually, it should be eliminated from these two files as well.
1994-10-26 19:04:36 +00:00
gwr 6bc6879e46 Remove some unnecessary junk. 1994-10-26 18:56:02 +00:00
mycroft 7269ce27cc We don't need to clear the nested trap bit. 1994-10-26 18:45:40 +00:00
mycroft e75cb9b517 Oops; need spltty() around call to print(). 1994-10-26 18:13:24 +00:00
mycroft 556a119342 Implement *cnpollc(). 1994-10-26 18:06:30 +00:00
briggs a43a6e9bdf Use u_int32_t and friends. Comment a tiny bit... 1994-10-26 18:05:48 +00:00
mycroft 6371cf2364 Add pccnpollc() and comcnpollc(). 1994-10-26 18:00:13 +00:00
mycroft fa0bf2b51a Add a comment. 1994-10-26 17:52:22 +00:00
mycroft e65f99d726 Use pcb_onfault only in the specific cases of protection, alignment, and
page faults.  For all other kernel-mode faults and traps, ignore it.  For
user-mode faults and traps, always ignore it.
Some other minor cleanup.
1994-10-26 17:38:44 +00:00
cgd 20af809ca2 new RCS ID format. 1994-10-26 09:07:55 +00:00
cgd 4fdae7a0ae new RCS ID format. 1994-10-26 08:45:48 +00:00
cgd dafacba9d5 new RCS ID format. 1994-10-26 08:23:50 +00:00
cgd b20f78e63f new RCS ID format. 1994-10-26 08:06:10 +00:00
cgd d62187c043 new RCS ID format. 1994-10-26 08:01:33 +00:00
cgd 57fb77a14e new RCS ID format. 1994-10-26 07:48:18 +00:00
cgd 132b41434c new RCS ID format. 1994-10-26 07:22:45 +00:00
deraadt 6d9927894a vme interrupt support 1994-10-26 07:16:34 +00:00
deraadt 62b9ec5645 rearrangement 1994-10-26 07:16:22 +00:00
deraadt 62b99b6414 vme, and cleanup some messy #ifdef stuff 1994-10-26 07:15:09 +00:00
deraadt ef07868ebe sunos compat changes 1994-10-26 07:13:56 +00:00
deraadt 2036bd665c updates 1994-10-26 07:12:38 +00:00
deraadt a4323e6911 changed sunos_compat, if_ie 1994-10-26 07:12:18 +00:00
deraadt f3299b1470 obio/vme16 Intel Ethernet driver by Chuck Cranor. works on vme16. 1994-10-26 07:11:16 +00:00
deraadt 9773a7aa40 working vme16/32 support 1994-10-26 07:09:41 +00:00
cgd 582d43b33b new RCS ID format. 1994-10-26 02:31:56 +00:00
cgd ec77f0b327 new RCS ID format. 1994-10-26 02:01:24 +00:00
mycroft 4178f44192 Add a missing item to trap_types[]. 1994-10-26 01:32:51 +00:00
mycroft 7be5732f87 Implement new system call entry method. Clean up all of the IDT frobnication
code.
1994-10-26 01:30:59 +00:00
cgd 3f7c5d3d59 add COMPAT_10 1994-10-25 21:31:32 +00:00
mycroft 0ec2e0b85c Attempt to deal with trace exceptions from single-stepping a trap instruction. 1994-10-25 15:33:40 +00:00
mycroft 7594210178 Slight optimization to remrq(); no need to use/save %esi. 1994-10-25 15:13:44 +00:00
mycroft 0b827ee8ee Add some #defines for the offsets into the bootstrap tables. 1994-10-25 14:46:50 +00:00
mycroft 9f00060fdf Map the kernel text read-only if !DDB. Also, shorten many parts of the page
table startup by judicious application of lea.
1994-10-25 14:31:24 +00:00
deraadt b415eb1d1d new from christos 1994-10-24 17:37:34 +00:00
mycroft 260ddbefb7 Rearrange ed_init() slightly, to better correspond to the National manual.
Optimize ed_rint() slightly in the case of multiple packets.  (Avoid an outb
and an inb for each packet).
1994-10-23 23:24:56 +00:00
cgd a6426e2b27 oops; went overboard, and did the user_ldt calls the wrong way. 1994-10-23 21:57:12 +00:00
mycroft 603fe7b5a6 Slight optimization. 1994-10-23 21:38:00 +00:00
mycroft 0114159848 Fix the packet length correction for buggy chips so that it actually works,
and always use it (otherwise short packets could still be corrupted).  Also
produce a diagnostic message if DIAGNOSTIC, since it *is* a hardware bug.
Add an ED_PAGE_SHIFT constant, and use it, to avoid GCC doing horrendous
things with divides and multiplies.
1994-10-23 21:22:13 +00:00
phil 97ad3ec4b8 fixes from Matthias. splimp and other stuff. 1994-10-21 07:03:57 +00:00
mycroft a9ef20740a Make this compile with USER_LDT again. 1994-10-20 23:48:21 +00:00
mycroft be18e790ff Get the label sector right if there is no NetBSD partition in the MBR. 1994-10-20 22:44:37 +00:00
mycroft 79e18619fb Add a cpu_cleanup() function, to support some experimental code. 1994-10-20 22:43:23 +00:00
briggs a509897f98 Before I forget... 1994-10-20 21:21:02 +00:00
mycroft d2b4ef0319 Don't try to load p_priority from the run queue head. 1994-10-20 20:47:53 +00:00
mycroft 3e30a415ae Be careful not to stack multiple timeouts. 1994-10-20 19:22:01 +00:00
mycroft 4d072c5435 Remove the local timeout mechanism, and just use explicit timeout()/untimeout()
calls.
1994-10-20 18:37:45 +00:00
mycroft c11a06cbc2 Always set d_secsize to 512 for now. 1994-10-20 17:03:09 +00:00
mycroft 0862d07daf Don't switch to single-sector mode just because we got a corrected error. 1994-10-20 16:36:21 +00:00
mycroft d4153fff4d Rearrange wdcstart() in a more logical fashion, and eliminate many redundant
calculations.  Also, speed up bad block searching a little.
1994-10-20 16:19:08 +00:00
mycroft cd66683989 openpart -> openmask 1994-10-20 14:08:07 +00:00
mycroft cae71ba91d Various changes:
* Add a dkdevice; move sc_*openpart, sc_label, and sc_cpulabel into it.
* Turn sc_wlabel into a flag, and don't set it automatically in DIOCWLABEL.
* If there is no label, disallow all I/O except to the raw partition.
* Don't allow I/O to `unused' partitions.
* Beginnings of support for block sizes other than 512 bytes.
Other minor changes.
1994-10-20 13:44:46 +00:00
cgd 70d91988ab update for new syscall args description mechanism 1994-10-20 05:34:04 +00:00
cgd d4bf824ec2 update for new syscall args description mechanism 1994-10-20 05:17:21 +00:00
cgd fdc5c13d94 update for new syscall args description mechanism 1994-10-20 05:02:13 +00:00
cgd 5aea0d3fd2 update for new syscall args description mechanism 1994-10-20 04:46:23 +00:00
mycroft cb4e5ecaa5 Print a single `soft error' message when an operation was retried and
eventually completed successfully.  Also fix fsbn numbers in diskerr() calls.
1994-10-20 04:46:17 +00:00