Commit Graph

947 Commits

Author SHA1 Message Date
dg
cc490038a0 New ethernet device driver from Matt Thomas:
This driver supports all the DEC EtherWORKS III NICs (DE203, DE204,
and DE205) and the later DEC EtherWORKS II NICs (DE200, DE201, DE202,
DE422).  DEPCA-style boards prior to the DE200 have not been tested
and may not work.

Submitted by:	Matt Thomas (thomas@lkg.dec.com)
1994-08-12 06:51:12 +00:00
dg
0bf5c587d2 Removed some unnecessary code that sets the link layer address. This should
be removed from the other drivers, too, as it is already done at a higher level
in the kernel.
1994-08-12 06:36:51 +00:00
dg
62b817045c Add missing ifr variable declaration that I forgot when adding MTU
ioctl support.
1994-08-12 06:06:19 +00:00
jkh
0dbbd21c05 Change outb() as per Bruce's instructions so that it doesn't explicitly
try to pass its argument in the ax register.
Reviewed by:
Submitted by:
1994-08-11 02:26:08 +00:00
wollman
af8613405f For Pentium machines, use a faster version of microtime with 8 usec
resolution (can probably be improved somewhat).  Other machines take
a three-instruction hit if I586_CPU is defined, none otherwise.
1994-08-11 00:28:24 +00:00
wollman
ad6af289bc Tell Pentium users their CPU speed. (More changes to make use of this
to come later.)
1994-08-10 23:28:33 +00:00
wollman
27d6cc8585 Handle NMI's in accordance with data in van Gilluwe book. 1994-08-10 04:39:52 +00:00
wollman
4131cde334 Some programs (like GNU configure programs) depend on the output of
`uname -s' to be something reasonable (traditionally, `i386') rather
than `PC-Class'.  Make it so.
1994-08-10 03:53:33 +00:00
wollman
dfdb8b7e14 Add back in CPU detection copde from 1.1.5. As an added bonus, the
hw.model MIB variable is now declared correctly.
1994-08-10 03:51:18 +00:00
jkh
e6e4d38831 Merge in the necessary bits from 1.1.5.1 to make exec.h and reloc.h
happy campers again (e.g. match our own exec format).  This should
make ld happy.
Submitted by:	jkh
1994-08-09 14:39:57 +00:00
dg
12543ae820 Removed ntohl and ntohs functions. These were already inlined assembly in
endian.h.
1994-08-09 11:21:44 +00:00
dg
0b8d504c00 Added various filesystems and multicast support options. Removed my
personal config file now that the GENERIC ones provide an adequate
template.
1994-08-09 08:17:09 +00:00
jkh
d5d7662740 Fix a compilation-stopping typo; whoops, David - more sleep! :-)
Submitted by:	jkh
1994-08-08 16:45:11 +00:00
dg
3080f1fcaf Last commit for this file should have read:
Reduced maximum transfer size by one to allow for catching a too large
condition correctly. Do single block I/O if the size is too large.

Submitted by:	Bruce Evans
1994-08-08 13:56:46 +00:00
dg
90aed30c20 Detect the "EOF" condition. Specifically, end of partition.
Submitted by:	Bruce Evans
1994-08-08 13:53:55 +00:00
dg
f85fe1cefd Added support for SIOCSIFMTU. 1994-08-08 13:33:16 +00:00
dg
51d1879366 Added ioctl support for SIOCSIFMTU. 1994-08-08 12:09:04 +00:00
dg
02aff34c6c Take out multicast support for the moment. 1994-08-08 09:14:37 +00:00
dg
5f96899afd Made pmap_kenter "TLB safe". ...and then removed all the pmap_updates that
are no longer needed because of this.
1994-08-07 14:53:27 +00:00
dg
81dc370a9d Provide support for upcoming merged VM/buffer cache, and fixed a few bugs
that haven't appeared to manifest themselves (yet).

Submitted by:	John Dyson
1994-08-07 13:10:43 +00:00
dg
024b33e58c Don't kremove process VM pages (oops!). This was the cause of the instability
that was introduced last night.

Submitted by:	 John Dyson
1994-08-07 03:31:52 +00:00
dg
4c3dd171d4 Don't strip the kernel. 1994-08-06 10:52:15 +00:00
dg
d54669e82c Fixed various prototype problems with the pmap functions and the subsequent
problems that fixing them caused.
1994-08-06 10:25:50 +00:00
dg
e1ff3868d9 Incorporated 1.1.5 improvements to the bounce buffer code (i.e. make it
actually work), and additionally improved it's performance via new pmap
routines and "pbuf" allocation policy.

Submitted by:	John Dyson
1994-08-06 09:20:56 +00:00
dg
3e6daf24bb Made the tmpstk start at tmpstk. Not doing so causes problems for the
debugger.

Submitted by:	John Dyson
1994-08-06 09:17:44 +00:00
dg
8b20309268 Incorporated post 1.1.5 work from John Dyson. This includes performance
improvements via the new routines pmap_qenter/pmap_qremove and pmap_kenter/
pmap_kremove. These routine allow fast mapping of pages for those
architectures that have "normal" MMUs. Also included is a fix to the
pageout daemon to properly check a queue end condition.

Submitted by:	John Dyson
1994-08-06 09:15:42 +00:00
dg
85b36e9dfa Added my own kernel configuration file. This can be used as a place to
start for people trying to get 2.0 running.
1994-08-06 06:36:55 +00:00
wollman
2159e4287d Delete redundant #ifdef __i386__, be consistent about idempotency
protection.

Submitted by:	Bruce Evans
1994-08-05 14:36:04 +00:00
dg
4db9c05591 Added assembly versions of ffs() and bcmp(). 1994-08-04 19:51:01 +00:00
dg
f9c5964667 Inlined insque and remque. 1994-08-04 19:46:57 +00:00
wollman
3d95e51839 Move ieeefp.h over, and put it in the correct subdirectory this time.
Submitted by:	Andrew Moore
1994-08-04 19:16:37 +00:00
dg
21785a3b44 Updated to include improvements from FreeBSD 1.1.5. Fixed brokeness
with multicast support and BPF.
1994-08-04 17:42:35 +00:00
dg
8155465ec7 Nuked #if 0'd _insque and _remque routines - they are now inlined in
cpufunc.h.
1994-08-04 06:10:27 +00:00
dg
0d42d1a776 Merged in post-1.1.5 work done by myself and John Dyson. This includes:
me:
1) TLB flush optimization that effectively eliminates half of all of the
   TLB flushes. This works by only flushing the TLB when a page is "present"
   in memory (i.e. the valid bit is set in the page table entry). See section
   5.3.5 of the Intel 386 Programmer's Reference Manual.
2) The handling of "CMAP" has been improved to catch attempts at multiple
   simultaneous use.

John:
1) Added pmap_qenter/pmap_qremove functions for fast mapping of pages into
   the kernel. This is for future optimizations and support for the upcoming
   merged VM/buffer cache.

Reviewed by:	John Dyson
1994-08-03 02:45:30 +00:00
dg
8d205697aa Added $Id$ 1994-08-02 07:55:43 +00:00
dg
0e87163cbf Removed all code related to the pagescan daemon, and changed 'act_count'
adjustments to compensate for a world without the pagescan daemon.
1994-08-01 11:25:45 +00:00
dg
8b75418fcc Fixed a bug that was introduced in the conversion from 1.1.5 to 2.0. 1994-08-01 10:38:19 +00:00
dg
e016b38d66 Removed pager declarations. They are NOT optional, and don't need to be
declared.
1994-07-28 05:53:44 +00:00
jkh
f51d8b6846 Commit a whole cluster of last minute critical (and one cosmetic) fixes
from David Greenman, Bruce Evans and Julian Elischer.

They are:

[vnode pager - David/Bruce]:
  The following patch fixes a problem where some data could be lost in a
delayed-write buffer if the cached buffer was larger than a page. This fix was
provided by Bruce Evans and modified slightly by me.

[st.c - Julian]:
  My fix for "bad request, must be between 0 and 0"

RTFS if you're interested).

[gnu/fpemul - David/Bruce]:
  These changes fix single stepping of emulated FPU instructions.
Previously, the instruction after an emulated instruction was
executed without causing a SIGTRAP ...

The also fix the initial control word being different for the
GPL emulator (it is still wrong for the old emulator) and remove
an unnecessary panic when emulation is not configured (I hope at
least init, sh and reboot will run without floating point.  I
remember only df and mkfs being broken by the lack of FP in 0.0).

[Various fixes described below - Bruce/David]:
sys/i386/boot/boot2.S:
        Yet another attempt to propagate the correct fix for 16 vs
        32-bit mode bugs.  [verified]

sys/i386/i386/db_interface.c:
        Protect against reentering Debugger().

sys/kern/kern_time.c:
        Don't allow 'time.tv_usec == 0' except at clock interrupts.

sys/pcfs/pcfs_fat.c:
        Make it compile without -O.

sys/scsi/sd.c:
        Fix as posted to some freebsd mailing list.
        (changes the order of the assignment of "sectors" because it earlier
          value is needed first -DG)

sys/vm/vm_glue.c:
        Fix stale comments and verbose code.

sys/vm/vm_mmap.c
        Fix off by 1 errors and verbose code.

[From Nate - cosmetic but non-intrusive and useful enough to go in]
sys/i386/isa/isa.c:
Appended you'll find a patch to the NMI error log routine in isa/isa.c.
The below patch just adds some additional information when an NMI occurs
which can help debug the hardware problem.
1994-06-22 05:52:25 +00:00
jkh
c3171f377c Make BOOTWAIT a truly tunable parameter. It was hard-set before. 1994-06-20 04:32:40 +00:00
jkh
3e2fe4bb9b This is the IBM/National PCMCIA ethernet driver from Keith Moore,
based originally on work by David Greenman and adapted to FreeBSD
(and cleaned up a bit) by myself.  It supports the IBM Credit Card
Adapter for the IBM Thinkpad, and I've had no trouble making it work
on my Toshiba T1910 with a National `InfoMover' NE4100 PCMCIA ethernet
card (I'm commiting this message through it right now :-).

This is actually sneaking it in after feature-freeze, but it's just
too useful to pass up!  As always, necessity is a mother.
1994-06-16 05:32:10 +00:00
adam
91cdb9393a Changed delay mechanism to rely more on I/O spinning. If spinning on the
like this is bad news, it will have to be revised.
Shortened some verbose messages for when the kernel is loaded below 640k.
Updated version number.
1994-06-16 03:53:29 +00:00
jkh
f68251221d From Hellmuth Michaelis, reviewed by Bruce Evans: This enables
the keyboard clock rather than incorrectly disabling it.
1994-06-15 19:09:14 +00:00
adam
7fb934835d make BOOTWAIT loopcount parameter available for tuning.
This changes nothing unless f.e. -DBOOTWAIT=0 or -DBOOTWAIT=640000 is used
1994-06-15 18:15:17 +00:00
rgrimes
0eadd3ea8c Touch the $Revision$ string to cause a cvs revision update of the boot
code (ie, should now print Revision 1.13).
1994-06-14 07:31:42 +00:00
jkh
6d2ef18502 Be paranoid about setting of %dl register for braindead BIOS's,
initializing it to 0 in the floppy boot case.  This allows my Toshiba
1910 laptop to finally boot, and may help out other machines cursed
with early Phoenix BIOS's as well.
1994-06-13 19:27:52 +00:00
dg
c19ab010d2 Fix from Bruce Evans:
Set npx_exists = 0 in the case of broken error reporting.
1994-06-11 05:17:15 +00:00
dg
d5fc783f27 Fixed minor spelling error. 1994-06-11 05:13:33 +00:00
dg
dab2729718 Bruce found a bug in my changes to stop using the gs selector.
From Bruce Evans:

fu[i]byte() checked the wrong register.  This caused interesting behaviour
in the GPL math emulator.  The emulator does not check the values returned
by fu*() or su*() (:-() and it interpreted the address of -12(%ebp) as
-1(%ebp).  The same probably occurs for all signed 8-bit offsets from
registers.

I cleaned up the new bzero() a bit.
1994-06-11 05:12:15 +00:00
dg
eae4d9b379 Added some missing cld's (OOPS!) and changed the position of some of
the others to make them easier to spot.
1994-06-06 15:08:51 +00:00
dg
a5c1c7d9ef trap.c:
Vastly improved trap.c from me. This rewritten version has a variety of
features, amoung them: higher performance and much higher code quality.

support.s, cpufunc.h:
No longer use gs override to enforce range limits - compare directly
against VM_MAXUSER_ADDRESS instead. The old way caused problems in
preserving the gs selector...and this method is just as fast or faster.
1994-06-06 14:54:41 +00:00
dg
554c61130f Back out previous change for the moment - I need to commit some other
changes first.
1994-06-06 14:23:49 +00:00
dg
4807f9dfd9 Added some missing cld's (OOPS!) and changed the position of some of
the others to make them easier to spot.
1994-06-06 14:12:50 +00:00
dg
8820ecd0a4 Removed extra (bogus) declaration of Xrsvd14 that was confusing me. 1994-06-04 11:01:15 +00:00
jkh
2fdc4a4a0a This should fix up the absolute paths to /usr/mdec - just prepended
${DESTDIR} to all the right places (any reason why not?).
1994-06-02 16:50:56 +00:00
ache
8f99712096 Make bootblocks fit into 7168 limit 1994-05-30 05:23:53 +00:00
rgrimes
f94dafd1d8 Cast arguments to timeout() to quite compiler warnings. Should we
change all of these to be timeout_funt_t and remove the casts and
typedef?

Remove secound argument (uban) from ifp->if_reset routines since it is now
obsolete.

Reviewed by:	David Greenman
1994-05-27 04:02:10 +00:00
rgrimes
b11d406e74 SYSCONS is no longer needed since pccons has been removed.
Update the GENERIC* to have the new file system options and the new kernel
name.

Fix the clean target in Makefile.i386 to rm kernel instead of 386bsd.
1994-05-26 13:38:01 +00:00
rgrimes
163f74d6f0 Since we have removed com.c and renamed comreg.h to sioreg.h I need to
fix sio.c to #include sioreg.h.
1994-05-26 13:31:40 +00:00
rgrimes
f89d59bbd9 Fix some references to MIN() and MAX() that have been replaced by min() and
max().
1994-05-26 13:30:20 +00:00
rgrimes
2469c867a1 The big 4.4BSD Lite to FreeBSD 2.0.0 (Development) patch.
Reviewed by:	Rodney W. Grimes
Submitted by:	John Dyson and David Greenman
1994-05-25 09:21:21 +00:00
rgrimes
6ec6244718 This commit was generated by cvs2svn to compensate for changes in r1543,
which included commits to RCS files with non-trunk default branches.
1994-05-25 01:34:38 +00:00
rgrimes
8e1a19ddde BSD 4.4 Lite Kernel Sources 1994-05-25 01:34:38 +00:00
jkh
01e206e225 Get us closer to being able to install on the second drive. 1994-05-24 08:09:49 +00:00
sos
a044ea1ac5 Fixed Id string 1994-05-20 12:24:15 +00:00
sos
69c2db373c Added prober Id string 1994-05-20 12:22:40 +00:00
jkh
111891d3bc Start preparing for the new, improved, doesn't-hang-the-keyboard version of
syscons as standard.  pccons adherants are welcome to go fix pccons, but for
now I see only syscons really moving forward.
see
1994-05-19 10:55:34 +00:00
jkh
7dfa59e5a9 Remove the now bogus IP_VAT_COMPAT. 1994-05-18 16:23:25 +00:00
jkh
1fb6f7c329 Add line for IP_VAT_COMPAT, documenting it. 1994-05-17 23:20:32 +00:00
jkh
a38f70ce76 Fold in the changes to support IP multicasting, from Jim Lowe et al. 1994-05-17 22:30:41 +00:00
jkh
cd576b6d9a Whoops - comment out psm0 by default in case someone wants to
compile this thing.  I won't turn on the ALLOW_CONFLICT_IOADDR this would need
to compile instead since that would then rob us of other, possibly important,
conflict checks.
1994-05-17 14:18:13 +00:00
jkh
53ce5f0cff Add descriptions of ALLOW_CONFLICT_* options we want to doc for now
(only 2).  Add entry for psm0 (PS/2 mouse).
1994-05-17 14:15:11 +00:00
jkh
56dd89d422 Get generic kernels to be as forgiving of users with lossy hardware
as possible:

options         "SCSI_DELAY=15"         #Be pessimistic about Joe SCSI device
1994-05-16 09:40:10 +00:00
ache
a94a714026 From Bruce:
*	If there is no 386BSD partition, initialize the label sector with
 *	LABELSECTOR instead of with garbage.
 *	Fixed reading of bad sector table.  It is at the end of the 'c'
 *	partition, which is not always at the end of the disk.
1994-05-16 03:06:00 +00:00
ats
4fe8416971 Added a missing unit argument in a printf. 1994-05-14 13:12:14 +00:00
jkh
a5d9a1f062 Remove confusing (as they are now unnecessary) comments about
INACCURATE_MICROTIME_IS_OK.  Document what pca0 is.
1994-05-13 08:48:22 +00:00
ache
252cdc7400 Localize RevD mixer changes for board revisions >= 127 1994-05-08 17:11:39 +00:00
ache
4f3268d32c Fix ugly bug with PAS16 Rev D mixer: output level was too low 1994-05-07 01:09:35 +00:00
rgrimes
3fd38d5468 USL copyright 1994-05-04 08:24:02 +00:00
rgrimes
8c63691c80 >From BETA_1_1 branch:
----------------------------
revision 1.20.2.2
date: 1994/05/03 05:16:50;  author: rgrimes;  state: Exp;  lines: +39 -16
Do a board reset if the AHA_INQUIRE command fails.  This is needed for the
DTC3290.  Change the messages about the BT545 to be generic to non adaptec
boards, since it appears that most vendors do not implement the AHA_INQUIRE
command in thier compatibility mode.
----------------------------
1994-05-03 05:44:53 +00:00
ats
8ab891c5ba Add two routines insl and outsl, that should do 32bit string ins and outs.
Both are completely untested in the moment. They are used from the
if_ep.c driver for the EISA card.
1994-05-03 00:00:53 +00:00
ats
8e1119b994 Added the bugfixes from the current NetBSD driver. Put in some parts of
the 3c579 support, but not the init/probe part.
1994-05-02 22:27:33 +00:00
sos
353635b6ea Update to use the timer0_divisor & timer0_prescale to determine the current
time. Speed-up to time calculation too. Now faster than before..
1994-05-02 09:44:20 +00:00
sos
72047e7987 Update the reprogram timer stuff, now the frequency of timer 0
can only be changed at the "right" times. Accuracy should be
assured.
1994-05-02 09:41:24 +00:00
sos
33fc3595db fixed some minor bugs 1994-05-02 09:40:12 +00:00
dg
106c076fb4 Removed some tlbflush optimizations as some of them were bogus and lead
to some strange behavior.
1994-05-02 05:31:03 +00:00
martin
0dbe39ffd2 Change switch statement to two if statements. This saves 208 bytes in
the object file which is enough to bring the size down to the point
where the bootstrap fits into 15 sectors.
1994-05-01 03:53:29 +00:00
gclarkii
8e1a807e1a Change old alias b_cylin to b_resid 1994-04-30 17:03:33 +00:00
gclarkii
74a4d73383 Almost had problems. The directory on my system is gpl not gnu.
corrected error
1994-04-29 21:57:12 +00:00
gclarkii
7a31fda8cc Added GPL_MATH_EMULATE to options
This should not be used in binary distributions.
1994-04-29 21:53:55 +00:00
gclarkii
7798f251a6 Added files for option gpl_math_emulate 1994-04-29 21:49:02 +00:00
gclarkii
abf0168fc4 Deleted on ifdef dontdef
Added ifdef for GPL_MATH_EMULATE so we get the extra padding that is needed
in the save87 struct.
1994-04-29 21:44:23 +00:00
gclarkii
b7713cb195 Added ifdef for GPL_MATH_EMULATE to keep the sytem from panicing when
using it.
1994-04-29 21:39:55 +00:00
ats
dca76e6343 Document parts of the case statements, which instruction is emulated.
Marked all dubious parts with ATS :-) for better searching. First round
of better documentation of the math emulator and of bugfixing it.
1994-04-26 22:51:48 +00:00
sos
9fd71f3fa9 Updated swedish keymap. 1994-04-26 09:24:06 +00:00
sos
90387385b1 Fixed missing bounds check in scroll up/down sequence, that could
cause a panic (and did).
1994-04-26 09:09:57 +00:00
dg
bac3b7fca5 From John Dyson:
Fixed physio in the 386 case - write faults weren't properly implemented.
1994-04-25 23:48:20 +00:00
ache
21aeb462c0 Fix proper include place 1994-04-24 00:07:35 +00:00
ache
8f71b3e562 We don't have DMA automode, so correct all places to work without
it too.
1994-04-23 22:54:31 +00:00
wollman
7745e6da4c Define new option, INACCURATE_MICROTIME_IS_OK. When this is defined,
the NTP kernel PLL is disabled, and acquire_timer0() is enabled, thus
opening the door for microtime() (and hence gettimeofday()) to return
bogus timestamps.  This option is necessary for the `pca' driver to
work, but is implemented to underscore the fact that accurate timekeeping
and the `pca' driver are incompatible at present.  If someone writes a version
of microtime() that works when the `pca' driver is being used, this can get
junked.
1994-04-23 21:39:18 +00:00
ache
0378205e1d device pca0 added 1994-04-23 12:13:27 +00:00
ache
f980caed30 Little optimization of contigmalloc parameters 1994-04-23 05:21:33 +00:00
ache
585b12b56d Additional changes for 2.5 1994-04-23 04:16:53 +00:00
dg
3c6dc6acde Added support for the 16 port Boca via a flag to specify that there is
no master port.
1994-04-23 02:11:43 +00:00
ache
f277d23264 Sound driver updated to version 2.5 1994-04-23 02:03:17 +00:00
cvs2svn
b44d67c7c6 This commit was manufactured by cvs2svn to create branch 'AMANCIO'. 1994-04-23 01:55:46 +00:00
ache
9e4ffe0fd9 Updated to version 2.5 1994-04-23 01:55:45 +00:00
ache
8c1b1c10fa Update sound driver to version 2.5 1994-04-23 01:50:14 +00:00
wollman
17ab3af527 Tell the user that we didn't try to set the bus speed, in case they're
used to NetBSD or older versions of the code that did do it.
Will document TUNE_1542 also.
1994-04-21 22:14:43 +00:00
sos
09a968ec10 Changed timer usage to new functions in clock.c 1994-04-21 14:22:26 +00:00
sos
133b947de1 Change timer usage to use new functions in clock.c 1994-04-21 14:21:50 +00:00
sos
879ba563bd Added IO_PPI define, pulled timer related stuff 1994-04-21 14:20:54 +00:00
sos
608f223696 Pulled out timer related functions -> now in clock.c 1994-04-21 14:20:07 +00:00
sos
a02f0d6fd9 New support for sharing the timers
acquire_timer / release_timer

Pulled in timer related functions from isa.c
1994-04-21 14:19:16 +00:00
sos
f850d82cc5 pcaudio device driver:
Driver for playing .au type files through the internal speaker
	Uses new timer support in clock.c
1994-04-21 14:16:55 +00:00
sos
d07e39d1a7 pcaudio.c added 1994-04-21 14:13:43 +00:00
sos
0fb3a557e2 New file for pcaudio device driver 1994-04-21 14:12:28 +00:00
sos
e9dc6cbbbd cdev 24 used for pcaudio (PCM speaker driver) 1994-04-21 14:10:31 +00:00
phk
b2b233fcc4 Adding bootoption '-r' which is "use compiled in root". This allows me to
boot from a floppy and have root on wd2 for instance.
1994-04-20 22:06:24 +00:00
dg
239ae571f1 Bug fixes and performance improvements from John Dyson and myself:
1) check va before clearing the page clean flag. Not doing so was
	causing the vnode pager error 5 messages when paging from
	NFS. (pmap.c)
2) put back interrupt protection in idle_loop. Bruce didn't think
	it was necessary, John insists that it is (and I agree). (swtch.s)
3) various improvements to the clustering code (vm_machdep.c). It's
	now enabled/used by default.
4) bad disk blocks are now handled properly when doing clustered IOs.
	(wd.c, vm_machdep.c)
5) bogus bad block handling fixed in wd.c.
6) algorithm improvements to the pageout/pagescan daemons. It's amazing
	how well 4MB machines work now.
1994-04-20 07:06:57 +00:00
wollman
c080508e59 Reserve block device 8 and character device 32 for users' drivers. 1994-04-19 23:45:43 +00:00
dg
9bb0d0905e Changes from John Dyson and myself:
1) Removed all instances of disable_intr()/enable_intr() and changed
	them back to splimp/splx. The previous method was done to improve
	the performance, but Bruces recent changes to inline spl* have
	made this unnecessary.
2) Cleaned up vm_machdep.c considerably. Probably fixed a few bugs, too.
3) Added a new mechanism for collecting page statistics - now done by
	a new system process "pagescan". Previously this was done by the
	pageout daemon, but this proved to be impractical.
4) Improved the page usage statistics gathering mechanism - performance is
	much improved in small memory machines.
5) Modified mbuf.h to enable the support for an external free routine when
	using mbuf clusters. Added appropriate glue in various places to
	allow this to work.
6) Adapted a suggested change to the NFS code from Yuval Yurom to take
	advantage of #5.
7) Added fault/swap statistics support.
1994-04-14 07:49:40 +00:00
dg
f066d3fd23 Add delays after changing from 8/16 - 16/8 bit mode and after enabling/
disabling the shared memory. The 83C790 needs these or it does bad things.
1994-04-13 10:15:34 +00:00
ache
82ca87349a Make all devices at least 2*64K buffers, 2*32K buffers
isn't enough for my home 33Mhz.
1994-04-13 01:57:03 +00:00
ache
c3cfb2dfa0 snd7 config line corrected, irqaremoved 1994-04-13 01:29:14 +00:00
ache
2dbc8e0742 Now SoundDriver use 64K DMA region instead of older 4K by
using new contigmalloc function.
1994-04-13 01:10:08 +00:00
csgr
7607f20040 Remove lpa from the generic kernels - one step closer to nuking lpa !! 1994-04-12 16:05:13 +00:00
ache
d0078dd4ff Patch from S0ren, 80x50 font trashed after switching from X console 1994-04-12 00:05:23 +00:00
ache
8755afc140 Tenmicrosec change backed out, because our DELAY is accurate
only about 40 microseconds.
1994-04-11 21:27:00 +00:00
ache
69e77c870d We have a better way to wait ten microseconds then inbs:
tenmicrosec() now use DELAY(10)
1994-04-11 18:17:12 +00:00
dg
87e8efd84b Fixed brokeness in the support of the 83C790/Elite Ultra (now that I
finally have the f**king documentation!):

1) Changed all the numeric register offsets to symbolic ones (it should
	have been this way originally).
2) If 16 bit, disable the shared memory when not using it. Apparantly
	switching between 8/16bit mode makes the Ultra unhappy unless
	this is done (i.e. it trashes the bus).
1994-04-10 20:06:28 +00:00
csgr
868c85662b Modify wdprobe() to correctly recognise some 2 drive systems,
on which it was failing.  Modifications follow ATA, but also
allow some weird setups which seem to contradict ATA (aaarrrrgghhh!!)
1994-04-10 11:17:13 +00:00
csgr
e18ba77d44 change to lptioctl 1994-04-08 22:13:49 +00:00
ache
50c9f98382 Fix arguments of CONS_GETINFO 1994-04-07 23:23:01 +00:00
ache
6d829d17b9 Remove unneded irq/drq/vector from snd? 1994-04-07 22:18:49 +00:00
dg
24d135e218 from kimmel@varese.cs.umass.edu (Matt Kimmel):
"el" driver for 3COM 3C501. This driver has some serious performance
problems and drops packets on the floor like hot potatos.
1994-04-07 12:10:31 +00:00
dg
91178a77f4 Make Bruce happy: silently enter ddb on a BPT or trace trap if ddb is
configured in the kernel.
1994-04-07 10:51:00 +00:00
csgr
e910246f9f Changes to lpt driver:
- ansi prototypes in lpt.c
- a bit of tidying in lpt.c
- ioctl in lpt.c for switching between polling and using interrupts
- added lpt.h - needed for ioctl to allow switching between polling
        and interrupt-driven modes.
1994-04-06 16:42:33 +00:00
dg
9c6c99e9ff from John Dyson:
1) fixed some bugs related to the bounce buffer code
2) vnode pager now supports clustered pageouts
3) experimental code for clustering all I/O via a new "cldisksort"
4) added >16MB check to Bustek driver
5) made some experimental algorithmic changes to the pageout daemon
6) fixed bugs in truncating mapped files (esp when mapped via NFS)
7) reorganized vnode pager I/O code
1994-04-05 03:23:32 +00:00
wollman
b4d4ec15af First pass at adding locale support. This code only deals with the LC_CTYPE
class of locale data, but could be extended to handle other locale
classes, as well as message catalogues and other non-locale i18n
support.

I have left the old _ctype_ array in place, and moved the ctype.h
header to octype.h, so that existing shared binaries will still be
able to find and use it as they require.

See /usr/src/share/locale for information on how to create new locale
data files (eventually this procedure will be improved).  I'd like to
have a family of locale files for various countries, languages, and
character sets, so please contribute some.

This code was originally written by Paul Borman and contributed to
4.4; I did the integration, and have somewhat tested it.  crt0.c
probably ought to call setlocale() if it doesn't already, but I'd like
for people to create some locale files and try things manually first
before I make every program do this.
1994-04-04 21:11:12 +00:00
phk
7d2bbe7dd6 corrected pointer to sound.doc 1994-04-04 17:27:45 +00:00
ache
2cb0e0266a This addition allows compilation with EXCLUDE_AUDIO
without compilation error.
1994-04-03 22:16:38 +00:00
ache
7f6867dd0f Add declaration missing from previous bde's version 1994-04-03 12:25:57 +00:00
ache
cf1e229f66 CHANGES from Bruce:
---
This list of changes is in approximately chronological order (oldest first).

	o Many cosmetic changes - renamed comintr1 -> siointr1, moved
	  things around and fixed whitespace.
	o Reduced SLIP latency (FRAME_END hack) from 20-30 ms to 16 ms
	  at 115200 bps (you won't notice the average 10 ms improvement
	  on slow lines).  ppp seems to use only counted transfers so
	  there's no similar hack available.  It's too hard for the
	  driver to know the count.
	o Temporary #ifdefs for new and old interrupt handling
	  (OLD_INTERRUPT_HANDLING decided by setsofttty() not being
	  externally defined.
	o Don't test for the IIR_NOPEND bit being set - test for the
	  non-fifo part of the iir equalling it like the docs say to.
	  States with other IIR_NOPEND set in combination with the
	  other iir bits are undefined.  The docs may be stupid - the
	  old test would not have broken when the fifo bits were
	  introduced.
	o Noted more problems with DTR wait.
	o Rewrote console stuff.  Still some initialization and state
	  preservation problems.  Same for kgdb stuff.  The driver
	  doesn't do anything about the console close bug.  It needs
	  to be fixed entirely in i386/cons.c.  I like chmr's version
	  where the the console driver revectors the device open and
	  close routines.
	o Temporary (?) #ifdefs for references to tty buffers.
	o Noted further things to do in (2 comments about 3 places) for
	  phk's change to not touch RTS unless it is being used for flow
	  control.
	o Temporary #ifdefs for timestamp handling.  It needs fixing.
	  The microtime() call breaks the first rule of writing fast
	  interrupt handlers: NO calls to functions that might do slow
	  and bad things.  microtime() enables interrupts.  This turns
	  out to be only moderately harmful.  Also, I want the timestamp
	  copy outside of the normal interrupt handler.
	o Don't init com->tp early for the !DONT_MALLOC_TTYS case -
	  both sides are NULL.
	o Worry about com->tp == NULL in siopoll.  I don't see how you
	  survived the (incc <= 0 || !(tp->state & TS_ISOPEN)) test.
	  Perhaps early sttys or comcontrols set up the tp's for _all_
	  the ports before this code is reached.
1994-04-03 11:41:11 +00:00
ache
5721b2f2d5 Change from Bruce:
isa_dmarangecheck() is off by one error.
> ISARAM_END should be >= ISARAM_END. Only the first page above 16M
was mishandled.
1994-04-02 20:43:25 +00:00
dg
5717a39a7a New interrupt code from Bruce Evans. In additional to Bruce's attached
list of changes, I've made the following additional changes:

1) i386/include/ipl.h renamed to spl.h as the name conflicts with the
   file of the same name in i386/isa/ipl.h.
2) changed all use of *mask (i.e. netmask, biomask, ttymask, etc) to
   *_imask (net_imask, etc).
3) changed vestige of splnet use in if_is to splimp.
4) got rid of "impmask" completely (Bruce had gotten rid of netmask),
   and are now using net_imask instead.
5) dozens of minor cruft to glue in Bruce's changes.

   These require changes I made to config(8) as well, and thus it must
be rebuilt.

-DG

from Bruce Evans:

sio:
	o No diff is supplied.  Remove the define of setsofttty().  I hope
	  that is enough.

*.s:
	o i386/isa/debug.h no longer exists.  The event counters became too
	  much trouble to maintain.  All function call entry and exception
	  entry counters can be recovered by using profiling kernel (the new
	  profiling supports all entry points; however, it is too slow to
	  leave enabled all the time; it also).  Only BDBTRAP() from debug.h
	  is now used.  That is moved to exception.s.  It might be worth
	  preserving SHOW_BITS() and calling it from _mcount() (if enabled).
	o T_ASTFLT is now only set just before calling trap().
	o All exception handlers set SWI_AST_MASK in cpl as soon as possible
	  after entry and arrange for _doreti to restore it atomically with
	  exiting.  It is not possible to set it atomically with entering
	  the kernel, so it must be checked against the user mode bits in
	  the trap frame before committing to using it.  There is no place
	  to store the old value of cpl for syscalls or traps, so there are
	  some complications restoring it.

Profiling stuff (mostly in *.s):
	o Changes to kern/subr_mcount.c, gcc and gprof are not supplied yet.
	o All interesting labels `foo' are renamed `_foo' and all
	  uninteresting labels `_bar' are renamed `bar'.  A small change
	  to gprof allows ignoring labels not starting with underscores.
	o MCOUNT_LABEL() is to provide names for counters for times spent
	  in exception handlers.
	o FAKE_MCOUNT() is a version of MCOUNT() suitable for exception
	  handlers.  Its arg is the pc where the exception occurred.  The
	  new mcount() pretends that this was a call from that pc to a
	  suitable MCOUNT_LABEL().
	o MEXITCOUNT is to turn off any timer started by MCOUNT().

/usr/src/sys/i386/i386/exception.s:
	o The non-BDB BPTTRAP() macros were doing a sti even when interrupts
	  were disabled when the trap occurred.  The sti (fixed) sti is
	  actually a no-op unless you have my changes to machdep.c that make
	  the debugger trap gates interrupt gates, but fixing that would
	  make the ifdefs messier.  ddb seems to be unharmed by both
	  interrupts always disabled and always enabled (I had the branch in
	  the fix back to front for some time :-().
	o There is no known pushal bug.
	o tf_err can be left as garbage for syscalls.

/usr/src/sys/i386/i386/locore.s:
	o Fix and update BDE_DEBUGGER support.
	o ENTRY(btext) before initialization was dangerous.
	o Warm boot shot was longer than intended.

/usr/src/sys/i386/i386/machdep.c:
	o DON'T APPLY ALL OF THIS DIFF.  It's what I'm using, but may require
	  other changes.
	  Use the following:
		o Remove aston() and setsoftclock().
	  Maybe use the following:
		o No netisr.h.
		o Spelling fix.
		o Delay to read the Rebooting message.
		o Fix for vm system unmapping a reduced area of memory
		  after bounds_check_with_label() reduces the size of
		  a physical i/o for a partition boundary.  A similar
		  fix is required in kern_physio.c.
		o Correct use of __CONCAT.  It never worked here for non-
		  ANSI cpp's.  Is it time to drop support for non-ANSI?
		o gdt_segs init.  0xffffffffUL is bogus because ssd_limit
		  is not 32 bits.  The replacement may have the same
		  value :-), but is more natural.
		o physmem was one page too low.  Confusing variable names.
	  Don't use the following:
		o Better numbers of buffers.  Each 8K page requires up to
		  16 buffer headers.  On my system, this results in 5576
		  buffers containing [up to] 2854912 bytes of memory.
		  The usual allocation of about 384 buffers only holds
		  192K of disk if you use it on an fs with a block size
		  of 512.
		o gdt changes for bdb.
		o *TGT -> *IDT changes for bdb.
		o #ifdefed changes for bdb.

/usr/src/sys/i386/i386/microtime.s:
	o Use the correct asm macros.  I think asm.h was copied from Mach
	  just for microtime and isn't used now.  It certainly doesn't
	  belong in <sys>.  Various macros are also duplicated in
	  sys/i386/boot.h and libc/i386/*.h.
	o Don't switch to and from the IRR; it is guaranteed to be selected
	  (default after ICU init and explicitly selected in isa.c too, and
	  never changed until the old microtime clobbered it).

/usr/src/sys/i386/i386/support.s:
	o Non-essential changes (none related to spls or profiling).
	o Removed slow loads of %gs again.  The LDT support may require
	  not relying on %gs, but loading it is not the way to fix it!
	  Some places (copyin ...) forgot to load it.  Loading it clobbers
	  the user %gs.  trap() still loads it after certain types of
	  faults so that fuword() etc can rely on it without loading it
	  explicitly.  Exception handlers don't restore it.  If we want
	  to preserve the user %gs, then the fastest method is to not
	  touch it except for context switches.  Comparing with
	  VM_MAXUSER_ADDRESS and branching takes only 2 or 4 cycles on
	  a 486, while loading %gs takes 9 cycles and using it takes
	  another.
	o Fixed a signed branch to unsigned.

/usr/src/sys/i386/i386/swtch.s:
	o Move spl0() outside of idle loop.
	o Remove cli/sti from idle loop.  sw1 does a cli, and in the
	  unlikely event of an interrupt occurring and whichqs becoming
	  zero, sw1 will just jump back to _idle.
	o There's no spl0() function in asm any more, so use splz().
	o swtch() doesn't need to be superaligned, at least with the
	  new mcounting.
	o Fixed a signed branch to unsigned.
	o Removed astoff().

/usr/src/sys/i386/i386/trap.c:
	o The decentralized extern decls were inconsistent, of course.
	o Fixed typo MATH_EMULTATE in comments. */
	o Removed unused variables.
	o Old netmask is now impmask; print it instead.  Perhaps we
	  should print some of the new masks.
	o BTW, trap() should not print anything for normal debugger
	  traps.

/usr/src/sys/i386/include/asmacros.h:
	o DON'T APPLY ALL OF THIS DIFF.  Just use some of the null macros
	  as necessary.

/usr/src/sys/i386/include/cpu.h:
	o CLKF_BASEPRI() changes since cpl == SWI_AST_MASK is now normal
	  while the kernel is running.
	o Don't use var++ to set boolean variables.  It fails after a mere
	  4G times :-) and is slower than storing a constant on [3-4]86s.

/usr/src/sys/i386/include/cpufunc.h:
	o DON'T APPLY ALL OF THIS DIFF.  You need mainly the include of
	  <machine/ipl.h>.  Unfortunately, <machine/ipl.h> is needed by
	  almost everything for the inlines.

/usr/src/sys/i386/include/ipl.h:
	o New file.  Defines spl inlines and SWI macros and declares most
	  variables related to hard and soft interrupt masks.

/usr/src/sys/i386/isa/icu.h:
	o Moved definitions to <machine/ipl.h>

/usr/src/sys/i386/isa/icu.s:
	o Software interrupts (SWIs) and delayed hardware interrupts (HWIs)
	  are now handled uniformally, and dispatching them from splx() is
	  more like dispatching them from _doreti.  The dispatcher is
	  essentially *(handler[ffs(ipending & ~cpl)]().
	o More care (not quite enough) is taken to avoid unbounded nesting
	  of interrupts.
	o The interface to softclock() is changed so that a trap frame is
	  not required.
	o Fast interrupt handlers are now handled more uniformally.
	  Configuration is still too early (new handlers would require
	  bits in <machine/ipl.h> and functions to vector.s).
	o splnnn() and splx() are no longer here; they are inline functions
	  (could be macros for other compilers).  splz() is the nontrivial
	  part of the old splx().

/usr/src/sys/i386/isa/ipl.h
	o New file.  Supposed to have only bus-dependent stuff.  Perhaps
	  the h/w masks should be declared here.

/usr/src/sys/i386/isa/isa.c:
	o DON'T APPLY ALL OF THIS DIFF.  You need only things involving
	  *mask and *MASK and comments about them.  netmask is now a pure
	  software mask.  It works like the softclock mask.

/usr/src/sys/i386/isa/vector.s:
	o Reorganize AUTO_EOI* macros.
	o Option FAST_INTR_HANDLER_USERS_ES for people who don't trust
	  fastintr handlers.
	o fastintr handlers need to metamorphose into ordinary interrupt
	  handlers if their SWI bit has become set.  Previously, sio had
	  unintended latency for handling output completions and input
	  of SLIP framing characters because this was not done.

/usr/src/sys/net/netisr.h:
	o The machine-dependent stuff is now imported from <machine/ipl.h>.

/usr/src/sys/sys/systm.h
	o DON'T APPLY ALL OF THIS DIFF.  You need mainly the different
	  splx() prototype.  The spl*() prototypes are duplicated as
	  inlines in <machine/ipl.h> but they need to be duplicated here
	  in case there are no inlines.  I sent systm.h and cpufunc.h
	  to Garrett.  We agree that spl0 should be replaced by splnone
	  and not the other way around like I've done.

/usr/src/sys/kern/kern_clock.c
	o splsoftclock() now lowers cpl so the direct call to softclock()
	  works as intended.
	o softclock() interface changed to avoid passing the whole frame
	  (some machines may need another change for profile_tick()).
	o profiling renamed _profiling to avoid ANSI namespace pollution.
	  (I had to improve the mcount() interface and may as well fix it.)
	  The GUPROF variant doesn't actually reference profiling here,
	  but the 'U' in GUPROF should mean to select the microtimer
	  mcount() and not change the interface.
1994-04-02 07:00:53 +00:00
ache
ebb3d9b98b Replace CAPS led with ALTGR led for ALTGR mode (soft) keyboards,
currently affects only russian keyboard.
1994-04-01 18:33:12 +00:00
ache
0e71fc7432 Change got_status/modem_status assignment per Bruce suggestion,
because inb clears modem status port.
1994-04-01 16:47:01 +00:00
ache
70d6e4a8c4 Localize previous changes (removing dma_reset)
only for SB card, it seems that it breaks GUS at least.
1994-04-01 15:04:49 +00:00
ache
1c9b156a04 Tracker "swapping" problem finally solved,
all (expect one) dma_reset calls commented out.
1994-03-31 20:54:25 +00:00
ache
192a294a94 Fix error with reducing speed on SB reset. 1994-03-30 20:33:28 +00:00
dg
08da197bb3 Eliminated the "physstrat" wart and merged it into kern_physio.c. This
patch also fixes a bug which causes a kernel VM leak.
1994-03-30 02:47:13 +00:00
dg
1eaad4f0d1 Eliminated the "physstrat" wart and merged it into kern_physio.c. This
patch also fixes a bug which causes a kernel VM leak.
1994-03-30 02:31:11 +00:00
dg
dfd339395d New routine "pmap_kenter", designed to take advantage of the special
case of the kernel pmap.
1994-03-30 02:17:47 +00:00
ache
e517f29ec8 1) Better fix for false carrier detect on bidir port
2) ttyclose moved after comhardclose, because clears t_state
3) slpx(s) moved after l_open to prevent undetected carrier down
1994-03-26 13:40:18 +00:00
dg
d9b4625e0e ifdef KERNEL the pmap_kextract inline function; ps is unhappy otherwise.
Pointed out by Frank Terhaar-Yonkers <fty@vislab.epa.gov>.
1994-03-25 22:08:59 +00:00
ache
875d89b28a Fix false carrier detection on incoming bidir port. 1994-03-25 15:10:50 +00:00
dg
d777903222 From John Dyson: performance improvements to the new bounce buffer
code.
1994-03-24 23:12:48 +00:00
ache
f4bbdc7da6 1) After discussion with Hannu, returning speed changed back.
Real problem fixed by my previous fix for SB 2.x
2) get_time function slightly modified to minimize possible
overflowing.
1994-03-24 22:23:51 +00:00
dg
2f48f24d37 Enabled bounce buffers by default. This should be done via a probe for
the specific controller type, so this change is temporary.
1994-03-24 02:23:00 +00:00
ache
44caa5dc21 For SB 2.x speed was reduced to 22050;
I already fix this bug in previous driver version,
but new driver update breaks my changes!
1994-03-23 22:52:30 +00:00
ache
ce3af185e1 SPEED-related ioctls returns wrong speed cause Tracker's damage. 1994-03-23 21:58:59 +00:00
ache
43f82d2bd1 1) GET_TIME function completely broken
it returns time in microseconds instead of HZ
(feel difference!)
2) change GET_TIME type to unsigned long in all places to prevent overflow
1994-03-23 19:27:52 +00:00
ache
9951f4331e 1) Change dtrwait 300 to 3 * hz (to be more kosher)
2) Protect sioclose by spltty()
1994-03-23 17:28:35 +00:00
dg
0b07523c75 Bounce buffers. From John Dyson with help from me. 1994-03-23 09:16:04 +00:00
ache
e5072b4eb5 Add missing EXCLUDE_SBPRO 1994-03-23 00:05:25 +00:00
ache
ee1a0d60c4 Add siostop to sioclose, because ttyflush called from
wrong places removed now.
1994-03-21 22:19:56 +00:00
ats
8a08d987e5 Changed the raw partition number from 3 to 0. This change lets us use
/dev/mcd0a instead of /dev/mcd0d. This is more conforming to the /dev/cd0a
for the SCSI cdrom drives. It breaks the convention d the whole drive.
But the question is, do we really need partitions on cdrom drives ?
1994-03-21 20:59:55 +00:00
ats
03504efea2 Makefile.i386:
put vers.o at the end of the loader line. We are simply jumping in the
moment into the first location of the text segment in 386bsd. So the
linking order is very important :-). With the addition of the const
types in newvers.sh we jumped into them. I have experimented with an
entry point specification, but was unsuccessfull. Someone else should
look at this.
devices.i386:
files.i386:
Added entries for a Sony cdrom driver.
1994-03-21 20:48:52 +00:00
ache
8700da94fc Increase default DTR wait time up to 3 secs.
Also hardw. specs says 2.5 secs is enough, many modems needs
at least 3 secs.
1994-03-21 15:18:27 +00:00
ache
ec3206dcf8 Now printf("changing root... indicates raw partition for floppy
f.e. fd1d
1994-03-21 15:02:47 +00:00
ache
b07067dc3e Fix printf for root system mounted on second floppy 1994-03-21 14:53:08 +00:00
ache
e23f78c652 Fix for root system mounted on second floppy 1994-03-21 14:37:01 +00:00
dg
de5a2a0539 Changed dynamic stack grow code to grow by "SGROWSIZ" amount. Initially
allocate SGROWSIZ amount of stack. Also set vm_ssize to the initial
stack VM size. Increased DFLSSIZ stack rlimit default to 8MB.
1994-03-21 09:35:24 +00:00
dg
36a8b9e9a1 previous optimization from John wasn't quite ready for primetime. 1994-03-21 06:37:04 +00:00
dg
ec62ad7189 Two fixes from John Dyson to fix hangs and panics when using ctrl-T:
1) tty.c: gather all the info about the processes before calling ttyprintf
	(which may block).
2) syscons.c: handle asynchronous output properly (data structures may
	be corrupted otherwise).
1994-03-20 20:05:55 +00:00
wollman
e1b35665a7 Delete some references to sleep() that somehow crept in. 1994-03-20 00:30:04 +00:00
wollman
40b47c723e Added cpu_model and machine variables. 1994-03-19 23:58:58 +00:00
wollman
334b88b204 More symtab space. 1994-03-19 22:17:56 +00:00
ache
2ca9eed233 Remove ttyfree from sioclose
Example:
Application use port cua01
Getty open ttyd1 (allocates rawq,outq,etc) and waits while application
done
Application quits, sioclose issued, ttyfree issued (getty calls revoke)
Getty awakes and goes to panic into initrb (NULL rawq)
1994-03-18 23:35:37 +00:00
wollman
6d40bd433d Added David Mills' kernel NTP PLL code. The current version of NTP does
not yet speak to this code.
1994-03-15 01:58:22 +00:00
dg
c81302a121 Performance improvements from John Dyson.
1) A new mechanism has been added to prevent pages from being paged
	out called "vm_page_hold". Similar to vm_page_wire, but
	much lower overhead.
2) Scheduling algorithm has been changed to improve interactive
	performance.
3) Paging algorithm improved.
4) Some vnode and swap pager bugs fixed.
1994-03-14 21:54:03 +00:00
ache
6b284802a2 Checking l_close in unneeded (one of my previous fixes),
so back it out.
1994-03-14 18:52:14 +00:00
swallace
3f6ebb7ed1 Removed EXCLUDE_<driver> for sound drivers so that all sound drivers
are compiled into kernel.  Users are referred to sound doc for info.
1994-03-11 22:17:24 +00:00
swallace
9c005e258d Added appropriate entries into files.i386 for snd drivers in /sys/i386/isa/sound
Added new snd drivers and EXCLUDE_<driver> options to LINT.
1994-03-11 10:31:05 +00:00
swallace
0d029ecebd Updated include files for sound drivers. 1994-03-11 10:28:36 +00:00
cvs2svn
e1162ff738 This commit was manufactured by cvs2svn to create branch 'voxware'. 1994-03-11 10:27:26 +00:00
swallace
0c4addc896 Integrated Hannu Savolainen's new VoxWare sound drivers, version 2.4.
These drivers now have full SoundBlaster 16 support.
1994-03-11 10:27:25 +00:00
ache
950f869b27 Don't call ttyclose twice into sioclose and move ttyclose
before comhardclose
1994-03-10 10:06:27 +00:00
ache
d533737466 First open:
now HUPCL set only in bidir case for callin lines
(this prevents set HUPCL on mouse)
comhardclose:
in addition to HUPCL case now DTR dropped for bidir case
if line was active in and no carrier present now.
(this prevents DTR sleep on mouse)
1994-03-08 22:11:10 +00:00
nate
f93c7d6114 From: Jim Babb <babb@sedhps01.mdc.com>
Subject: Re: Bugs with floppy drives
Date: Tue, 8 Mar 94 9:11:54 CST

The transfer speed was only set in the retry after error, not  when
switching drives.
1994-03-08 16:25:29 +00:00
dg
e0707add54 Modified pccnprobe to not set cn_tp = CONSOLE_TTY if __FreeBSD__ is
defined. This code should probably be yanked out.
1994-03-08 15:17:41 +00:00
rgrimes
0a2cbe88c9 Add mcd1 at 0x340 irq 11. 1994-03-08 05:56:47 +00:00
dg
a2ee508d04 1) enhanced in_cksum from Bruce Evans.
2) minor comment change in machdep.c
3) enhanced bzero from John Dyson (twice as fast on a 486DX/33)
1994-03-07 11:47:32 +00:00
dg
21f82b914d 1) "Pre-faulting" in of pages into process address space
Eliminates vm_fault overhead on process startup and
		mmap referenced data for in-memory pages.

		(process startup time using in-memory segments *much* faster)

	2)	Even more efficient pmap code.  Code partially cleaned up.
		More comments yet to follow.

		(generally more efficient pte management)

	3)	Pageout clustering ( in addition to the FreeBSD V1.1 pagein
		clustering.)

		(much faster paging performance on non-write behind disk
		subsystems, slightly faster performance on other systems.)

	4)	Slightly changed vm_pageout code for more efficiency and
		better statistics.  Also, resist swapout a little more.

		(less likely to pageout a recently used page)

	5)	Slight improvement to the page table page trap efficiency.

		(generally faster system VM fault performance)

	6)	Defer creation of unnamed anonymous regions pager until needed.

		(speeds up shared memory bss creation)

	7)	Remove possible deadlock from swap_pager initialization.

	8)	Enhanced procfs to provide "vminfo" about vm objects and user
		pmaps.

	9)	Increased MCLSHIFT/MCLBYTES from 2K to 4K to improve net &
		socket performance and to prepare for things to come.

John Dyson
dyson@implode.root.com
David Greenman
davidg@root.com
1994-03-07 11:38:49 +00:00
guido
326bf873bf Removed a #warning that I left here. 1994-03-06 20:56:26 +00:00
jkh
457f8950eb Used definable status codes (some may be sharable, esp the door open codes, but
it still looks a little suspicious that so many of the status codes are missing
so I'm not going to adopt all of the existing ones yet.  Try to be more
descriptive in the use of hex constants.
1994-03-06 14:14:49 +00:00
jkh
9f11bab798 Beginning of change set for making more friendly laptop configurations.
Changes _only_ take effect if `options LAPTOP' is set.

Note:  This one is distinctly dodgy. When my IDE drive spins back up from sleep
mode, it generates this `extra interrupt' condition by spinning back up and
generating an intr, though without any particular action required.  This
message coming out every time is rather annoying, and thus disabled.
However, what I'm not at all sure of is whether or not all IDE drives will
behave in the same way, or if perhaps it needs to be done in a more complicated
fashion by detecting this more involved "I've spun up and am just saying hi"
condition.  This is a simple change and easy to back out/ammend if anybody has
any better ideas.
1994-03-06 03:10:58 +00:00
ats
3b47c3de2f Added more status bytes for the mitsumi drive. This is only an ugly
hack in the moment for testing purposes and to get the drive going
again.
0x20 means empty drive.
0x30 means closed drive with CDROM inserted.
0x80 means drive pulled out, but door closed.
0xa0 means drive pulled out and door open.
Luckily none of these values are the same as that reported for Ethernet
cards ( 0 for WD8003E, 0x40 for WD8013EPC, 0x60 for NE2000).
The bad part is, the probe code gets the WD8003E so hosed, that it is
no longer usable after it. No problem with the WD8013EPC.
1994-03-05 21:41:51 +00:00
jkh
53f311f0a2 This should stop the false probes in their slimey little tracks. 1994-03-05 03:54:19 +00:00
ache
87b0d34666 1) My previous fix does nothing, now Rod's fix rewrited to implement
my previous fix too (using wdp_heads controller value) and check
0 heads case too.

Other fixes from Bruce:
2) Fix dk_timeout from 2 to about 4 seconds.
3) wdcontrol not retried on internal error.
4) wdwait return check changed ( "!=0" to "<0" into wdsetctlr,
"<0" to "!=0" into wdgetctlr).
1994-03-04 16:43:07 +00:00
guido
5a4f090496 Ttys structures are now allocated dynamically via ttymalloc/ttyfree.
This inetrface should be used from now on.
pseudo device pty xx still keeps its meaning: a maximum of
xx ptys is allowed.
A ringbuffer is now 2040 bytes long, per Garrett Wollman's request.
The changes are inspired by the way NetBSD did it (thanks for that!),
though I made it slihghtly different, including the interface so
at least 75% of the allocated space is deallocated when the tty is
closed.
Note further that it is easy to modify the ringbuffer length runtime.
This will have to wait untill some later date...


-Guido
1994-03-02 20:28:38 +00:00
guido
232adbd34d Ttys structures are now allocated dynamically via ttymalloc/ttyfree.
This inetrface should be used from now on.
pseudo device pty xx still keeps its meaning: a maximum of
xx ptys is allowed.
A ringbuffer is now 2040 bytes long, per Garrett Wollman's request.
The changes are inspired by the way NetBSD did it (thanks for that!),
though I made it slihghtly different, including the interface so
at least 75% of the allocated space is deallocated when the tty is
closed.
Note further that it is easy to modify the ringbuffer length runtime.
This will have to wait untill some later date...


-Guido
1994-03-02 20:18:09 +00:00
ache
69ce570a0d 360 DD entry speed fixed to 250KBPS 1994-03-02 18:34:41 +00:00
alm
4e614f6299 floppy tape support shouldn't interfere with floppy disk driver on
systems with no floppy tape drive (patch from Jim Babb).
1994-03-02 08:10:42 +00:00
dg
38aa409d9c Minor comment change. 1994-03-02 05:50:01 +00:00
ats
bc6b318656 Added the missing bzero after the malloc in aha1542.c that seems to
produce the mbox not free messages on many systems. Bug reported from
hd@world.std.com.
1994-03-01 16:06:37 +00:00
dg
b4fa4d6268 Fix from Christoph Robitschko: the '790 interrupt table was wrong. 1994-03-01 12:23:33 +00:00
alm
58dce7cb20 floppy tape support still not quite there - it prevents
mounting the floppy disk  drives on some systems that don't have
a floppy tape drive.
1994-03-01 01:27:03 +00:00
alm
df0578e9fd Add floppy tape support. 1994-02-28 04:19:39 +00:00
phk
9b442cb8ae dcfclk driver obsoleted, sio/TIOCTIMESTAMP took over. 1994-02-27 21:53:54 +00:00
phk
9be9f3269a dcfclk driver obsoleted by sio/TIOCTIMESTAMP. 1994-02-27 21:51:05 +00:00
ache
c4884d6b78 Bump CLK_TCK to more precise value (128)
If you want more precise, use directly getrusage(),
because clock() emulated via it.
1994-02-26 00:56:02 +00:00
phk
70c6a315ee RTS shouldn't be touched unless CS_RTS_IFLOW is set. 1994-02-26 00:04:03 +00:00
ache
ecf4b91579 Better fix for >16 heads problem, right value from
controller restored.
1994-02-25 23:17:40 +00:00
phk
e59d3e9c7f TIOCTIMESTAMP capability. The port in question must be configured with
"vector siointrts".  Thus only a compare is added for the other ports.
1994-02-24 16:39:48 +00:00
hsu
be26cbadc8 Correct definitions of flags used by sigreturn to validate sigcontext. 1994-02-24 00:21:12 +00:00
hsu
981a6e72f1 validate sigcontext before restoring it 1994-02-24 00:18:04 +00:00
rgrimes
beec0405d4 Fix off by one error 1994-02-23 11:14:26 +00:00
rgrimes
cdb65a87fa Put back the bt0 that some one deleted.... 1994-02-23 10:59:44 +00:00
rgrimes
b1f89ae5eb Bump boot block revision to 1.9 by a dummy edit on disk.c and:
>From: bde@kralizec.zeta.org.au (Bruce Evans)
Subject: cache botch in bootstrap
Date: Sun, 20 Feb 94 18:14:35 +1100
The cache in the bootstrap loader didn't allow for the device changing.

This caused surprisingly little trouble - the cache is only for a single
track (or part of a track), and the first access to a new device is
always for an early sector, so there is no problem unless the last access
to the old device was for an early sector.  I saw the problem on a system
with BSD on wd1 and no label on wd0.  Everything worked if the the device
name wd(1,a) was specified before the default of wd(0,a) was tried, but
when the default was tried, it failed on the first sector because there
was no label, and then the first sector on wd0 was always used instead
of the first sector on wd1, so there was apparently no label on wd1
either.

Bruce
1994-02-22 22:59:40 +00:00
rgrimes
491fafd482 More clean up of the drive Id string, trancate trailing spaces. 1994-02-22 22:13:37 +00:00
rgrimes
dead78fed7 The model string can be 40 bytes long with no terminating null, so
convert all nulls to spaces and then print it with a %40s.
1994-02-22 18:51:27 +00:00
rgrimes
41e2d032a3 Cleanup the lptprobe and lpt_port_test routine to be KNF. 1994-02-22 09:05:13 +00:00
rgrimes
a211a547e1 This is Jordans probe code fixes. Tested on LU002, FX001D. Then I went
in and cleaned the spaces vs tabs up, and made the code a little closer
to KNF.
1994-02-22 08:44:31 +00:00
rgrimes
2816b4dcc8 >From: "Andrew A. Chernov" <ache@freefall.cdrom.com>
Subject: Bugfix for SB16 with DSP version 4 and above

No description sent, but it appears to fix a major number problem
with certain models of the SB16.
1994-02-21 14:20:45 +00:00
rgrimes
b88ba1eedf Clean up dmesg output so that it matches the scsi stuff.
Small hack, if heads > 16, output a warning and then set the head
count to 16.  This stops the infinite loop on this error and allows
people to later fix the DOS parameter table later with fdisk.
1994-02-21 12:32:33 +00:00
rgrimes
3a91bdd2d7 Protect some printf's with #ifdef DEBUG 1994-02-21 05:45:06 +00:00
ache
1f42e0f11d Fix bug with DSP ver2.0, frequency reduced from 44100 to 22050 1994-02-20 09:37:27 +00:00
rgrimes
d6a88ab6a1 I (rgrimes) cleaned the code up some, mostly just format stuff.
>From: csgr@alpha.ru.ac.za (Geoff Rehmet)
Date: Wed, 16 Feb 1994 21:28:06 +0200 (GMT+0200)

New version of lpt, most of the brokenness fixed.
1994-02-17 10:20:18 +00:00
rgrimes
2fb7cb3f03 I don't want to read about all the people that forgot this due to syscons
changes, so I am adding it here until AFTER the 1.1 release:
+ COPTFLAGS+=-D__FreeBSD__
1994-02-17 06:51:15 +00:00
rgrimes
0793a0cee8 Increase the timout on aha_send_mbox from 1ms to 3ms, needed to reliably
run Exabyte 8505 on 1742's.  This may not be the final solution, but it
makes it work.  It may be better to change the DELAY(10) to DELAY(30)
inside the loop instead of increasing the loop count from 100 to 300.
1994-02-17 05:48:08 +00:00
nate
eed2243f2e From: Jim Babb <babb@sedhps01.mdc.com>
Date: Mon, 14 Feb 94 15:57:14 CST

This adds a copyright to the fdc.h file and fixes a bug in re-tries
during writes on a heavily loaded system.
1994-02-14 22:24:28 +00:00
nate
8b39beda58 From: Jim Babb <babb@sedhps01.mdc.com>
Subject: Bug Fix for ft.c - please commit
Date: Mon, 14 Feb 94 10:22:54 CST

This fixes a bug where the system can crash if the tape is used
after the floppy has been used.
1994-02-14 19:22:34 +00:00
jkh
872e15cb55 Use -Z instead of -z to build kernels. This is consistent with NetBSD's
usage of the -[Zz] flags (we're now in sync).  Part of the ld update
changes.
1994-02-13 20:37:32 +00:00
dg
6c375f74c6 Fixed bug in handling of COW - the original code was bogus and it was
only accidental that it worked. Also, don't cache non-managed pages.
1994-02-13 08:29:33 +00:00
nate
8e49976bc6 Added third parameter to wdwait which contains the amount of time to
'wait' based on suggestion by Rod in -hackers.

No functional change as all the TIMEOUTS are identical currently, but
this will probably change.
1994-02-11 12:02:35 +00:00
dg
9c5d30c550 Patch from John Dyson:
a pv chain was being traversed while interrupts were
	fully enabled in pmap_remove_all ... this is bogus, and
	has been fixed in pmap.c. (sorry for adding the splimp)
1994-02-10 03:03:44 +00:00
nate
b689f3d1d1 Commented on what the mse0, mcd0, and lpt/lpa devices were used for.
(No functional changes)
1994-02-09 05:35:57 +00:00
dg
9ee826aa97 From: Dave Matthews <dave@prlng.co.uk>
Description:
The integer overflow instruction (into) and the interrupt instruction with
value 4 (int #4) both give rise to SIGBUS signals rather than SIGFPE.  The
problem is that overflow is a trap not a fault (unlike the BOUND instruction).
1994-02-08 12:58:44 +00:00
dg
150455819b Fixed bugs in stack grow code, and moved it back into a seperate function
like it was originally. Also added back call to "grow" in sendsig now
that this routine actually works.
1994-02-08 09:26:04 +00:00
dg
10c644bf47 Fixes from John Dyson to fix out-of-memory hangs and other problems (such
as increased swap space usage) related to (incorrectly) paging out the
page tables.
1994-02-08 03:07:58 +00:00
alm
4c1e7c072c Tentative fdc patches... 1994-02-07 22:12:45 +00:00
ache
60fda7adb1 Change all siointr (expect in Vsio, of course) to comintr1
This saves two commands per each direct comintr1 call,
allows some strict check in siointr and also
fix bug with suspended output on multiport cards
1994-02-07 18:37:21 +00:00
dg
b133b056b5 Fixed bug in probe that was causing it to always probe true. 1994-02-07 15:46:22 +00:00
ache
664037c890 Add "wdx: not found" diagnostic missed in previous commits 1994-02-07 15:40:38 +00:00
rgrimes
6aafc49d11 Remove the ft driver, it causes instant reboots during attatch, and this
was new code added at the last minute!
1994-02-07 10:42:04 +00:00
dg
f86742af87 Fixed calculation of physmem when the special MAXMEM kernel config overide
is used. This bug caused the buffer cache to be WAY too big when memory
was being restricted - resulting in hangs and other out of memory problems.
1994-02-07 07:44:42 +00:00
alm
73a43165f2 Add floppy tape support (missed these when changing G*) 1994-02-07 05:55:50 +00:00
alm
84e9f2ea7d Add floppy tape support 1994-02-07 04:27:59 +00:00
alm
0e4e4906a6 Add floppy tape driver - fd => fdc 1994-02-07 04:27:13 +00:00
dg
3ad425af2f Nuke bogus error message 1994-02-07 04:20:57 +00:00
dg
4b7235d634 From: Chris Wiener <cwiener@CRLABS.COM>
When the keyboard is probed, the LED's blink quickly and
"Keyboard reset failed" is printed on the console.  The
init routine keeps trying endlessly with the same behavior
as above.

I got the latest -current sup sources (06-Feb-94 12:00 GMT) to work using the
old syscons.c.  The following patch makes the new syscons work:
1994-02-07 02:14:27 +00:00
dg
9e053b094d At the suggestion of Bruce Evans, don't zero RTC diag register. Doing so
was causing problems for some machines.
1994-02-06 22:48:13 +00:00
jkh
e8b6460e30 Patches to allow the pcvt port to simply "drop in" with a minimum of
effort.
1994-02-06 22:11:00 +00:00
jkh
d1434da5b3 Gunter Jung's fixes for the much-maligned lpt driver 1994-02-06 22:06:58 +00:00
ats
d8c750193a Fixed up the compiler warnings. 1994-02-06 17:03:17 +00:00
ache
4194a396a1 1) Proper fix for suspended output in multiport case
2) IIR_NOPEND is really *one* bit, we don't need to check whole MASK
1994-02-06 11:59:35 +00:00
rgrimes
d6b9f70ffa Update for new format of cd_toc_entry that was changed in sys/cdio.h. 1994-02-06 11:33:25 +00:00
rgrimes
78196d129c Increase the TIMEOUT value that keeps getting nuked to 300 mSEC, I set it
to 1.1 secounds this time (ie, TIMEOUT=10000).
1994-02-06 02:56:11 +00:00
chmr
7ce1384095 Make the screen savers runtime switchable. Everybody wants a
different default saver, and the size increase in the kernel is
minimal ( < 2.5K ).
1994-02-04 10:36:15 +00:00
dg
bf8b800553 if_ep.c: removed netisr.h, fixed unconverted ep_ac, changed <> into ""
for include files.
if_ed, if_ie, if_is: don't include netisr.h.
1994-02-03 11:51:12 +00:00
ache
1e80a7b9b2 Make BLANK_SAVER default to stop best saver war. 1994-02-02 23:10:55 +00:00
ache
e844cf9bb7 Fix error in multiport part:
while input char not entered, output was suspended
1994-02-02 16:41:26 +00:00
dg
164b10596f Added 8003EB board type. Clue from Gerard J van der Grinten (gvdg@cdc.com) 1994-02-02 14:05:58 +00:00
dg
a4348210bb Added type code for 8003W. 1994-02-02 02:24:42 +00:00
dg
8ae65955af Minor cleanup. Decode state information better in the case of a fatal
trap.
1994-02-01 23:07:35 +00:00
nate
80bd0bbd20 Moved paren in sgetc to where it belongs. (My fault, I must have wiped it
out when I applied the patch to get the new features by hand)
1994-02-01 19:04:18 +00:00
rich
dc70dc2487 Add missing arg to Debugger() call.
Add missing close paren in sgetc() definition.
1994-02-01 15:09:10 +00:00
ache
2d4503f95a Make old SNAKE_SAVER code compile with new syscons changes. 1994-02-01 11:13:49 +00:00
ache
0554f42f8a BLANK_SAVER syscons option added 1994-02-01 10:46:43 +00:00
ache
f8b3996fff 1) Restore removed SNAKE_SAVER (Nate, WHY you do it?)
2) Make SNAKE_SAVER like default, if no saver specified in "options"
3) Remove #ifdef STAR_SAVER  before line /* make screensaver happy */
this code needed in any case.
1994-02-01 10:43:02 +00:00
dg
0885708425 Bug fix from previous WINE commit. From Jeffrey Hsu. 1994-02-01 10:03:43 +00:00
ache
3063c799df Russian keymap is broken after last commit (fixed)
Nate, please, be more careful next time.
1994-02-01 09:27:43 +00:00
ache
aa79a897c5 Add FADE_SAVER option from new syscons. 1994-02-01 08:34:16 +00:00
ache
a543d59714 Comment #define STAR_SAVER, it is configuration "options" 1994-02-01 08:30:45 +00:00
nate
db1ec99db0 Added S'ren's Copyright to the file and sync up to version 1.3 1994-02-01 06:34:44 +00:00
nate
92c2d844b2 From: sos@login.dkuug.dk (S|ren Schmidt)
Subject: syscons-1.3
Date: Sat, 29 Jan 94 23:33:50 MET

But here is the (hopefully) final syscons-1.3....

....

I've changed sgetc so it works as the pccons parallel
(it now uses a scgetc internally).


[
There were a couple changes that Bruce Evans sent me that were applied
to this version along with some changes that S'ren didn't incorporate
into the final version.  There will be only minor changes if anything
from this version to his final release.
]
1994-02-01 06:22:29 +00:00
nate
22ba36aea7 Removed hack for older version of syscons (new version going in soon) 1994-02-01 05:58:02 +00:00
nate
adcc1ba9a1 From: bde@kralizec.zeta.org.au (Bruce Evans)
o merged and fixed timeout code from sos.
	o merged DOS partition support from sos.
	o fixed "extra" interrupts.
	o check if malloc retuns NULL :-(.
	o print drive size as in NetBSD
	o after an error, return the residual count, not 0.
	o give up early for > 16 heads.
	o cleaned up the old-drive detection in wdgetctlr().
	o rewrote wddump().  I'd been putting this off because
	  I'd had the dump disabled since 0.0 and had no idea
	  if even the standard version worked.  It didn't:
	  (0) syscons' sgetc() interface broke some keyboard
	  stuff.
	  (1) CADDR1 is mapped using pmap() and pmap got a NULL
	  pointer trap (at least when I got to wddump() using
	  call diediedie from ddb) because the pte for CADDR1
	  is only supposed to be hacked on directly (e.g. in
	  physcopyseg()).
	  (2) bad144 handling was not done.
	  (3) it was slooow (3600 sectors/minute) because my
	  controller doesn't cache writes.
	o miscellaneous other cleanups, e.g., removed scattered
	  patchkit/terry dates.
	o lots of reformatting.

To be done:
	o Merge/fix TIH/NetBSD bad144 code (doesn't belong in any
	  particular driver.  Why aren't we using i386/dkbad.c?).
	o Merge/fix Dyson/NetBSD clustering code (large parts
	  should be shared).
	o Fix/extend the partition in use bits.  Support extended
	  partitions.  This should be shared by all disk drivers.  Swap
	  to a DOS partition so that the swap space can be shared with
	  linux.
	o Don't use polling except for initialization.  Need to
	  reorganise the state machine.  Then "extra" interrupts
	  shouldn't happen (except maybe one for initialization).
	o Fix disklabel, boot and driver inconsistencies with
	  bad144 in standard versions.
	o Look at latest linux clustering methods.  Our disksort()
	  gets in the way of clustering.
	o cleaned up the ATA changes (needs more work.  I think
	  the ATA specs say that the only thing really wrong with
	  the original version of wx is that there was no test
	  for drive-ready before some commands.  400 nsec delay
	  suffices for almost everything and 400 nsec delay is
	  usually "free").
1994-02-01 05:55:21 +00:00
dg
f2269c13eb Removed all uses of "USE_486_WRITE_PROTECT" and made this automatic.
Reordered and removed some NOP's.
1994-02-01 04:09:07 +00:00
dg
40ec390772 Added four pattern memory test routine that is done at startup.
...added filli - "fill integer" support routine.
1994-01-31 23:48:23 +00:00
dg
edea92cbab Added four pattern memory test routine that is done at startup. 1994-01-31 23:47:29 +00:00
ache
060fb0cded Remove CALLOUTMASK, if non-bidir case. 1994-01-31 19:07:59 +00:00
paul
04f7972edd Added new probe code to detect generic lance based cards. Should now
work with ne2100 card.
1994-01-31 16:00:53 +00:00
dg
8df5d2c1f8 WINE/user LDT support from John Brezak, ported to FreeBSD by Jeffrey Hsu
<hsu@soda.berkeley.edu>.
1994-01-31 10:27:13 +00:00
ache
805b2d4d90 1) Set ipending back to 4, because (16 + 4) bit not in
netmask or impmask.

2) Fixes from Bruce:
	o Changed name of schedsoftcom() to setsofttty() to match
	  setsoftclock()
	o Bool_t isn't used.
	o tx_fifo_size is 1 for chips without fifos, 16 for 16550's, to
	  help to output more efficiently for 16550's (LSR_TXRDY means
	  that the fifo is empty, not that it has space for one char).
	o Changed name of softsio1() to siopoll() and merged compoll()
	  into siopoll().
	o The probe forgot to clear com_mcr after it failed.  This is
	  harmful for 4 single serial ports on 2 interrupts.  It makes
	  partial misconfigurations worse.
	o Don't bother initializing static variables that are 0 (bidir
	  stuff).
	o Only initialize t_oflag to TTYDEF_OFLAG if unit == COMCONSOLE,
	  not if COMCONSOLE is defined.
	o Don't call siointr() from comparam() if there is no output in
	  progress.  For the call from sioopen(), there's no output in
	  progress, and siointr() often saw silo overflows for stale
	  input because it was called before sioopen() discarded the
	  input.
	o Let ttselect() do the work for select(), so that the fixes for
	  ttselect() don't have to be duplicated in zillions of drivers.
1994-01-31 08:52:12 +00:00
dg
4cb172d2ef Patch from dcjm@cs.ed.ac.uk (Dave Matthews)...
Yes, I know that IFADDR ioctl is supposed to be deprecated... Note
that the patch was modified by me to fit better into the driver. -DG

...

While porting CAP to 386bsd/pk0.2.4 and now to FreeBSD Release 1.0
I found a couple of bugs associated with the packet filter. Here
are the fixes.  I'm posting them here because they apply to
FreeBSD and 386bsd/pk0.2.4 and possibly to other *BSD.

The first occurs when using the packet filter to write raw
ethernet packets.  The header consisting of the sender and
destination addresses and the protocol is removed and later
added back on, but with the byte order of the protocol reversed.
The fix ensures that the byte order in the protocol field is
swapped when it is removed.

The second fix ensures that SIOCGIFADDR works for BPF as claimed
in the man pages, by adding it to the ed driver.  Similar fixes
will be needed for other ethernet drivers.
Dave Matthews.
1994-01-31 07:34:20 +00:00
dg
fa0ed42e60 Fix broken bit definitions for pte/pde. 1994-01-31 06:52:41 +00:00
dg
4aadf8a7c8 Patch from Brian Smith (modified a little by me) to allow kernel config
file override to disable fifo on 16550s:

I bought a board with two 16550's, but one of those ports has a mouse
on it.  The sio driver always enables the fifo, which is a bad thing
for mice and X.  The mouse is jerky and hard to use.  The simple thing
is be to treat one of the ports as a non-fifo'ed UART, and I use the
flags option in my config file.

So, my config file has:
device      sio0    at isa? port "IO_COM1" tty irq 4 flags 0x2 vector siointr
device      sio1    at isa? port "IO_COM2" tty irq 3 vector siointr

(patch deleted)
1994-01-31 06:12:18 +00:00
dg
34c281958f Make I/O memory explicitly non-cacheable. This is purely an asthetic
change.
1994-01-31 04:39:37 +00:00
dg
5e2d3df485 VM system performance improvements from John Dyson and myself. The
following is a summary:

1) increased object cache back up to a more reasonable value.
2) removed old & bogus cruft from machdep.c (clearseg, copyseg,
	physcopyseg, etc).
3) inlined many functions in pmap.c
4) changed "load_cr3(rcr3())" into tlbflush() and made tlbflush inline
	assembly.
5) changed the way that modified pages are tracked - now vm_page struct
	is kept updated directly - no more scanning page tables.
6) removed lots of unnecessary spl's
7) removed old unused functions from pmap.c
8) removed all use of page_size, page_shift, page_mask variables - replaced
	with PAGE_ constants.
9) moved trunc/round_page, atop, ptoa, out of vm_param.h and into i386/
	include/param.h, and optimized them.
10) numerous changes to sys/vm/ swap_pager, vnode_pager, pageout, fault
	code to improve performance. LRU algorithm modified to be more
	effective, read ahead/behind values tuned for better performance,
	etc, etc...
1994-01-31 04:19:00 +00:00
nate
7d069720c6 From: Wolfgang Solfrank <ws@sun-lamp.cs.berkeley.edu>
To: source-changes@sun-lamp.cs.berkeley.edu

Fix bogus fcom emulations
How did any program with floating point emulation ever work?
1994-01-29 22:07:16 +00:00
rgrimes
c827a140f2 Remove commented out PROCFS, it is standard. 1994-01-29 21:41:36 +00:00
rgrimes
f0a631d522 Patch from Julian. Commit message by me.
Cuddle { braces up where possible on if statements
Add missing splx(s) calls before some returns.
Remove extra semicolon that was keeping uha_init from returning
before the timeout occured.  This should speed probing up quite
a bit!
1994-01-29 10:29:14 +00:00
ache
274b9446d1 Set FIFO_TRIGGER in more human-readable form 1994-01-29 03:17:39 +00:00
nate
1e8ff0f818 Added -static declartion to genassym compile so a kernel doesn't require
working shlibs.
1994-01-27 21:10:14 +00:00
dg
e0a393cb71 Removed no longer used "wire" element in pv struct. 1994-01-27 03:36:14 +00:00
dg
b292244ecc Made pmap_is_managed a static inline function. 1994-01-27 03:35:42 +00:00
ache
c28f57f6a4 Add FIFO_TRIGGER value for sio.c 1994-01-27 01:01:22 +00:00