Commit Graph

1363 Commits

Author SHA1 Message Date
John Dyson b1a7842b22 Add ENABLE_VFS_IOOPT kernel option. 1998-03-19 22:37:37 +00:00
Bruce Evans 5f1c0dcd1a Fixed CLEANFILES. Some temporary files were missing. 1998-03-19 13:22:46 +00:00
Bruce Evans d2ca4e981b Fixed building of kernels without `options FFS'. ffs_softdep_stub.c is
not optional, since several "standard" files in ufs/ufs reference it.
1998-03-19 13:01:50 +00:00
Garrett Wollman 2cc2df490e Add preliminary support for IEEE 802.1Q VLAN tagging. It doesn't actually
work reliably yet (I've had panics), but it does seem to occasionally
be able to transmit and receive syntactically-correct packets.
Also fixes one of if_ethersubr.c's legion style bugs, and removes
the hostcache code from standard kernels---the code that depends on it
is not going to happen any time soon, I'm afraid.
1998-03-18 01:40:12 +00:00
KATO Takenori 61324207f1 Make EPSON_BOUNCEDMA a new-style option. 1998-03-17 09:11:03 +00:00
Eivind Eklund f909c15bec Clear up DPT comment to avoid further confusion. This is a hardware
driver.
1998-03-16 23:04:07 +00:00
Tor Egge 8f7030a7cc Add a BOOTP_WIRED_TO option, for use on machines with multiple network
cards where the first detected card should not be used for bootp.
Submitted by:	Doug Ambrisko <ambrisko@whistle.com>
1998-03-14 04:13:56 +00:00
KATO Takenori 8fb62a4f93 Sync with sys/i386/conf/files.i386 revision 1.194. 1998-03-14 02:31:00 +00:00
Eivind Eklund 69b87d3e06 Introduce the 'regress' target.
Silently approved by:	-hackers, -current
1998-03-12 20:02:17 +00:00
Julian Elischer fdc021ba7f Add EISA support for DPT drivers
Submitted by: Matthew Dodd
Reviewd by:	shimon@simon-shapiro.org (DPT author)
1998-03-11 00:30:16 +00:00
Eivind Eklund 94db1b8198 Document options policy.
Reviewed by:	bde
1998-03-10 15:55:38 +00:00
Eivind Eklund 04fa1e6c8b Change PMAP_SHPGPERPROC to not be equal to the default, for the
benefit of bde's "unused include files" script.

Requested by:	bde
1998-03-10 15:42:13 +00:00
KATO Takenori 1af2c4fbaa Sync with sys/i386/conf/options.i386 revision 1.76. 1998-03-10 12:48:57 +00:00
Eivind Eklund 005092bba6 Turn "PMAP_SHPGPERPROC" into a new-style option, add it to LINT, and
document it there.
1998-03-09 22:09:13 +00:00
KATO Takenori 3e8e255152 Make FPU_ERROR_BROKEN a new-style option. 1998-03-09 10:17:13 +00:00
Julian Elischer b1897c197c Reviewed by: dyson@freebsd.org (john Dyson), dg@root.com (david greenman)
Submitted by:	Kirk McKusick (mcKusick@mckusick.com)
Obtained from:  WHistle development tree
1998-03-08 09:59:44 +00:00
Bruce Evans 589d9341f4 Removed support for now-unused FreeBSD misfeature DPSRCS. 1998-03-06 07:28:01 +00:00
Bruce Evans 47da63c3df Fixed dependencies of ${PROG} on ${DPSRCS} and `all' on ${_ILINKS}.
There were various races for `make -j'.  Half-built versions of
vnode_if.h were sometimes #included...

Removed a null dependency.
1998-03-06 05:43:46 +00:00
Peter Dufault 917e476dad Reviewed by: msmith, bde long ago
POSIX.4 headers and sysctl variables.  Nothing should change
unless POSIX4 is defined or _POSIX_VERSION is set to 199309.
1998-03-04 10:27:00 +00:00
Guido van Rooij d3c0af6943 Raise ncallout from NPROC + 16 to NPROC + 16 + MAXFILES. This shold
prevent a possible DOS attack. The proper fix (to dynamically grow
the callout list) is in the make.
Submitted by:	Paul Traina
1998-02-27 19:58:29 +00:00
Jun-ichiro itojun Hagino 751bf650a8 make sys/netkey/key{,_debug}.c compile. I believe it works but not tested.
I'll polish the code later on.
1998-02-27 10:02:49 +00:00
Jordan K. Hubbard 281bc0476a Move "geometry disk" device (not yet implemented) to major 95 to
eliminate conflict with /dev/pci.
1998-02-27 06:15:50 +00:00
KATO Takenori 95b31a1d26 Sync with sys/i386/conf/files.i386 revision 1.193. 1998-02-26 03:21:41 +00:00
Poul-Henning Kamp 828c63ae15 Add loran0 to LINT 1998-02-24 22:24:46 +00:00
Poul-Henning Kamp cb7cfa353d Add the smallest and least useful device-driver by a fair margin... 1998-02-24 22:08:05 +00:00
John Dyson d9bed5bee1 Try to dynamically size the VM_KMEM_SIZE (but is still able to be overridden
in a way identically as before.)  I had problems with the system properly
handling the number of vnodes when there is alot of system memory, and the
default VM_KMEM_SIZE.  Two new options "VM_KMEM_SIZE_SCALE" and
"VM_KMEM_SIZE_MAX" have been added to support better auto-sizing for systems
with greater than 128MB.

Add some accouting for vm_zone memory allocations, and provide properly
for vm_zone allocations out of the kmem_map.  Also move the vm_zone
allocation stats to the VM OID tree from the KERN OID tree.
1998-02-23 07:42:43 +00:00
Jordan K. Hubbard b44fb1c4ba MF22: CODA entries.
Submitted by:	"Robert.V.Baron" <rvb@GLUCK.CODA.CS.CMU.EDU>
1998-02-21 19:24:36 +00:00
KATO Takenori 2d67fcee71 Make pc98 options new-style. 1998-02-21 16:17:55 +00:00
KATO Takenori 9217f466af Sync with sys/i386/conf/options.i386 revision 1.21. 1998-02-21 15:50:26 +00:00
KATO Takenori eb564225af Sync with sys/i386/conf/files.i386 revision 1.192. 1998-02-21 15:49:03 +00:00
Eivind Eklund c2469addb2 Make TUNE_1542 a new-style option, and enable this option in LINT. It
has been disabled since 1994 by mistake (or at least I hope so :-)
1998-02-21 10:11:43 +00:00
Jordan K. Hubbard 3bbe72d3dd Reserve cdev 93 for CODA filesystem.
Submitted by:	"Robert.V.Baron" <rvb@GLUCK.CODA.CS.CMU.EDU>
1998-02-20 23:55:32 +00:00
Poul-Henning Kamp 7ec73f6417 Replace TOD clock code with more systematic approach.
Highlights:
    * Simple model for underlying hardware.
    * Hardware basis for timekeeping can be changed on the fly.
    * Only one hardware clock responsible for TOD keeping.
    * Provides a real nanotime() function.
    * Time granularity: .232E-18 seconds.
    * Frequency granularity:  .238E-12 s/s
    * Frequency adjustment is continuous in time.
    * Less overhead for frequency adjustment.
    * Improves xntpd performance.

Reviewed by:    bde, bde, bde
1998-02-20 16:36:17 +00:00
Bruce Evans 161e89999d Removed default tags target. PROG is always defined here, so ifdefing
it was bogus, and without the ifdef the default is identical to the
central one in bsd.dep.mk.
1998-02-20 15:52:49 +00:00
Bruce Evans ee16b4300e Fixed some stale comments about console drivers.
Uncommented css0.  It compiles OK.

Moved trix0 so that it compiles OK when uncommented.  Uncommented
it.  Drivers with the same interrupt handler must be together in
config files so that config(8)'s simple avoidance of redundant
declarations of interrupt handlers works (config emits a declaration
unless it would duplicate the previous one).

Commented out NO_LKM.  Negative options should not be configured
in LINT.  There should be no negative options for subsystems.
LKMs should never have been standard or the default.
1998-02-20 12:27:28 +00:00
Steve Price ad64a9aade Don't propogate *_DEBUG options. Use DEBUG and recompile
only those parts of the kernel that you are interested in.

Prodded by:	Bruce Evans <bde@zeta.org.au>
1998-02-20 04:19:39 +00:00
Amancio Hasty 1735805c3a Move Luigi's I2CWR ioctl from the video_ioctl section to the
tuner_ioctl section. Changed Major device from 79 to 92 and reserved
our Major device number -- hasty@star-gate.com
1998-02-20 03:55:17 +00:00
Steve Price 34d1c7b48c Add an LPT_DEBUG option.
PR:		5773
Submitted by:	Dag-Erling Coidan Smorgrav <dag-erli@ifi.uio.no>
1998-02-20 02:44:18 +00:00
Mike Smith eed5086e1a Move the 'sw' device off block major #1, which is now occupied by 'wfd'. 1998-02-19 12:15:06 +00:00
KATO Takenori 5783aeff4d Sync with sys/i386/conf/files.i386 revision 1.191. 1998-02-19 08:42:57 +00:00
Jordan K. Hubbard 86b1080174 91 vinum RAID fs
Requested by:	grog
1998-02-19 01:33:29 +00:00
Mike Smith 1f98b2eb0f Remove the 'qcam' driver. Development has ceased, and the driver is
nonfunctional.
Submitted by:	pst (conversation some time ago)
1998-02-18 13:43:59 +00:00
KATO Takenori dc4179fd63 Sync with sys/i386/conf/files.i386 revision 1.190. 1998-02-18 12:34:01 +00:00
Søren Schmidt ea38cb7ffc Add 'wst" atapi tape devicefile. 1998-02-17 11:32:33 +00:00
Jordan K. Hubbard ce84f3a9d6 Add entry for Greg Lehey's "vinum" fs - don't know what to call it in
here so I just called it a RAID fs.
1998-02-17 10:52:56 +00:00
Søren Schmidt bee7612b0b Reserve major # for the atapi tape device 1998-02-17 10:44:23 +00:00
Eivind Eklund d94f38ace2 Add HW_WDOG to LINT, and turn it into a new-style option. 1998-02-16 23:57:49 +00:00
KATO Takenori 3ddaa5931a Sync with sys/i386/conf/files.i386 revision 1.189. 1998-02-16 09:38:37 +00:00
Peter Wemm a397086e61 Update to support SI/XIO PCI host cards (Z280 based) and the enhanced
SXISA and SXPCI host cards (Transputer based).

PR: 4836, 5021, 5654
Submitted by:  Nick Sayer <nick@specialix.com>
1998-02-15 14:42:33 +00:00
Paul Traina 186a666128 Change wfd major block device to 1 as part of the effort to make wfd's
bootable without a big increase in boot2's size.
1998-02-13 22:41:00 +00:00
Poul-Henning Kamp 507e2e4443 Add a skelleton pulse-per-second timing driver. This will become more
useful when I get my timecounter changes past the Bruce-filter.
1998-02-13 13:00:02 +00:00
Eivind Eklund be41061b8b Make NO_LKM a new-style option.
Forgotten by:	dima
1998-02-12 18:02:07 +00:00
KATO Takenori 98e4a3a40b Sync with sys/i386/conf/options.i386 revision 1.72. 1998-02-12 08:15:51 +00:00
Dima Ruban bd45deefaa I'm not sure whether this is a correct way to do it,
but here's a new kernel option - "NO_LKM"

If anyone has better ideas - please let me know.
1998-02-11 20:47:55 +00:00
Kazutaka YOKOTA 8da0cd6227 Remove description on the flags for psm. They are adequately
documented in the man page for psm(4).
1998-02-11 17:37:55 +00:00
Kazutaka YOKOTA 2589e75553 Added SC_DISABLE_REBOOT and SC_MOUSE_CHAR. 1998-02-11 16:22:30 +00:00
Jordan K. Hubbard 8b8cd792cf Clean up comments describing Luigi's alternate sound driver. 1998-02-11 15:36:46 +00:00
KATO Takenori a5b88b0149 NULL and UMAP filesystems also unstable. 1998-02-09 15:03:38 +00:00
Eivind Eklund 14834de441 Throw DEBUG and DIAGNOSTIC in opt_global.h 1998-02-06 12:41:39 +00:00
Eivind Eklund 47cfdb166d Turn DIAGNOSTIC into a new-style option. 1998-02-04 22:34:03 +00:00
Eivind Eklund 4c890f3b43 Remove old, commented-out option SUIDDIR after Julian added a proper
entry for it.
1998-02-04 22:03:27 +00:00
KATO Takenori 8e1f6a1f4a Sync with sys/i386/conf/options.i386 revision 1.71. 1998-02-04 10:22:05 +00:00
Eivind Eklund 346ebe5115 Change LINT_PCCARD_HACK to COMPILING_LINT, and put it in its own header file
"opt_lint.h".  This should prevent the next person needing the same trick
from inventing their own option, too.
1998-02-04 04:41:37 +00:00
Eivind Eklund cecc50bcd3 Make SPX_HACK a new-style option. 1998-02-04 04:12:29 +00:00
Eivind Eklund ec1f7adf74 Put SCSI_2_DEF in opt_scsi.h. This cause a lot more recompliation than
necessary when this option change, but I don't think it is worth its own
header file.
1998-02-04 03:59:50 +00:00
Eivind Eklund 7dff14331f Make FAILSAFE a new-style option. 1998-02-04 03:47:16 +00:00
Bruce Evans 44429dc4f7 Converted DISABLE_PSE to a new-style option.
Fixed some formatting in options.i386.
1998-02-03 22:09:01 +00:00
KATO Takenori 27b31fd7be Cosmetic changes (indentation, reordering and using existing file name).
Pointed by:	Michio "Karl" Jinbo <karl@marcer.nagaokaut.ac.jp>
1998-02-02 07:55:31 +00:00
KATO Takenori 698059e01d Sync with sys/i386/conf/files.i386 revision 1.69.
Pointed by:	KAHO Toshikazu <kaho@rocky.kais.kyoto-u.ac.jp>
Forgotten by:	kato
1998-02-02 07:50:12 +00:00
Bruce Evans 021886ff87 Restrict the include search path using -nostdinc -I- in $(CFLAGS} as
in kernel Makefiles.  Nothing in /usr/include is used (provided
relative paths for sys/* and <machine> can be found), so there is
no need for the -I/usr/include kludge as in kernel Makefiles.
1998-02-01 17:19:54 +00:00
Julian Elischer cb800e3451 add the SUIDDIR option and tell people what it is for. (And when NOT to use it) 1998-01-31 19:41:27 +00:00
KATO Takenori e2e660e926 Sync with sys/i386/conf/options.i386 revision 1.70. 1998-01-31 14:10:14 +00:00
KATO Takenori f84d885c42 Sync with sys/i386/conf/Makefile.i386 revision 1.107. 1998-01-31 13:45:28 +00:00
Eivind Eklund 3f2076daf5 Make the debug options new-style.
This also zaps a DPT option from lint; it wasn't referenced from
anywhere.
1998-01-31 07:23:16 +00:00
Eivind Eklund e0d781f3a5 Make POWERFAIL_NMI, PPS_SYNC and NATM new style options.
This also fixes a couple of defunct options; submitted by bde.
1998-01-31 05:00:21 +00:00
Eivind Eklund c6b60f62de Add support for cleandepend, ${DESTDIR}, and there not being a file named
${DESTDIR}/kernel.
1998-01-31 04:23:15 +00:00
Eivind Eklund c6de6a69a1 Add various options people have ignored.
Submitted by:	bde
1998-01-31 03:33:51 +00:00
Poul-Henning Kamp c5b193bfba Retire LFS.
If you want to play with it, you can find the final version of the
code in the repository the tag LFS_RETIREMENT.

If somebody makes LFS work again, adding it back is certainly
desireable, but as it is now nobody seems to care much about it,
and it has suffered considerable bitrot since its somewhat haphazard
integration.

R.I.P
1998-01-30 11:34:06 +00:00
John Dyson 3f89af99f4 Someone removed vm_zone.c from /sys/conf/files. 1998-01-27 01:54:25 +00:00
Bruce Evans 4a2d2630c8 Generate symlinks to the "sys" and <machine> directories and put
them in the include path.  This fixes recent breakage of the syscons
LKMs and general brokenness of the include paths (headers under
/usr/include were used in many cases).
1998-01-26 20:36:38 +00:00
Julian Elischer 3458e54ac1 Move DPT related options out of i386 specific files
so DPT devices can be used on other PCI (alpha?) machines.

Suggested by: several people
1998-01-26 18:31:18 +00:00
KATO Takenori 15ebf6c973 Sync with sys/i386/confi/files.i386, majors.i386 and options.i386
revisions 1.187, 1.25 and 1.68, respectively.
1998-01-26 09:17:43 +00:00
Julian Elischer 16094866e7 Add the DPT driver and options.
GENERIC with dpt may wait a few days if required.
1998-01-26 06:33:48 +00:00
Julian Elischer b37c91fdc7 Add Simon Shapiro's DPT driver
this shouldn't break anything existing.
Userland utilities to follow.
1998-01-26 06:11:18 +00:00
KATO Takenori 40f6a786db Sync with sys/i386/conf/options.i386 revision 1.67. 1998-01-25 09:45:38 +00:00
Eivind Eklund bed196b4e2 Turn CLK_USE_TSC_CALIBRATION into a new-style option. 1998-01-25 04:37:47 +00:00
Eivind Eklund 92252381f3 Make TCP_COMPAT_42 a new style option. 1998-01-25 04:23:33 +00:00
Eivind Eklund f71bb3a160 Turn NSWAPDEV into a new-style option. 1998-01-25 04:13:25 +00:00
Eivind Eklund c007c0bc64 Remove the FDSEEKWAIT option and description.
The functionality was present for two days in october/november 1994
before being backed out; I don't think we can consider it really
critical ;-)
1998-01-25 03:55:47 +00:00
Eivind Eklund 455bb2116c Make MD5 a new-style option. This one was eeeeeaaaaaasssssyyyyy ;-) 1998-01-25 03:34:17 +00:00
Eivind Eklund 7b778b5e61 Make all file-system (MFS, FFS, NFS, LFS, DEVFS) related option new-style.
This introduce an xxxFS_BOOT for each of the rootable filesystems.
(Presently not required, but encouraged to allow a smooth move of option *FS
to opt_dontuse.h later.)

LFS is temporarily disabled, and will be re-enabled tomorrow.
1998-01-24 02:54:56 +00:00
Jordan K. Hubbard ec4f65d24f Add entries for tx card. 1998-01-21 18:34:47 +00:00
Jordan K. Hubbard d8f643d7e1 Add support for tx driver. 1998-01-21 18:31:20 +00:00
KATO Takenori 43a0695fdf Sync with sys/i386/conf/files.i386 revision 1.186. 1998-01-18 15:09:34 +00:00
Paul Traina aaf862068b Bring in IDE ATAPI floppy support.
This is Junichi's v1.0 driver.

NOTE: Major device numbers have been changed to avoid conflict with other
      FreeBSD 3.0 devices.  The new numbers should be considered "official."
      This driver is still considered "beta" quality, although we have been
      playing with it.  Please submit bugs to junichi and myself.

Submitted by:	junichi@astec.co.jp
1998-01-16 22:13:07 +00:00
KATO Takenori 7cd3361aa5 Sync with sys/i386/conf/files.i386 revision 1.185. 1998-01-15 15:09:00 +00:00
Justin T. Gibbs c8877437a0 Add entry for i386/i386/busdma_machdep.c 1998-01-15 07:30:54 +00:00
Poul-Henning Kamp 595f63412b Add and document PPS_SYNC 1998-01-14 19:41:36 +00:00
Poul-Henning Kamp a50ec50568 Effect the divorce of kern_clock.c and kern_timeout.c (which was
repository copied from kern_clock.c)
1998-01-10 13:16:26 +00:00
KATO Takenori 98e7f9ea42 Sync with sys/i386/conf/files.i386 revision 1.184. 1998-01-09 08:49:43 +00:00
Eivind Eklund e4f4247a08 Make the BOOTP family new-style options (in opt_bootp.h) 1998-01-09 03:21:07 +00:00
Eivind Eklund 7262d3e430 NETATALK -> opt_atalk.h 1998-01-09 00:51:57 +00:00
Eivind Eklund 1d5e9e2255 Make INET a proper option.
This will not make any of object files that LINT create change; there
might be differences with INET disabled, but hardly anything compiled
before without INET anyway.  Now the 'obvious' things will give a
proper error if compiled without inet - ipx_ip, ipfw, tcp_debug.  The
only thing that _should_ work (but can't be made to compile reasonably
easily) is sppp :-(

This commit move struct arpcom from <netinet/if_ether.h> to
<net/if_arp.h>.
1998-01-08 23:42:31 +00:00
John-Mark Gurney 6cc3943ff0 update the AWE32 wave table driver to Iwai's 0.4.2c version. This also
includes the patches to make it work under -current from Randall Hopper.

Remove the old AWE driver.
1998-01-08 23:13:22 +00:00
KATO Takenori 232e69fdfa Sync with sys/i386/conf/files.i386 revision 1.183. 1998-01-06 13:47:54 +00:00
John Dyson 95e5e988e0 Make our v_usecount vnode reference count work identically to the
original BSD code.  The association between the vnode and the vm_object
no longer includes reference counts.  The major difference is that
vm_object's are no longer freed gratuitiously from the vnode, and so
once an object is created for the vnode, it will last as long as the
vnode does.

When a vnode object reference count is incremented, then the underlying
vnode reference count is incremented also.  The two "objects" are now
more intimately related, and so the interactions are now much less
complex.

When vnodes are now normally placed onto the free queue with an object still
attached.  The rundown of the object happens at vnode rundown time, and
happens with exactly the same filesystem semantics of the original VFS
code.  There is absolutely no need for vnode_pager_uncache and other
travesties like that anymore.

A side-effect of these changes is that SMP locking should be much simpler,
the I/O copyin/copyout optimizations work, NFS should be more ponderable,
and further work on layered filesystems should be less frustrating, because
of the totally coherent management of the vnode objects and vnodes.

Please be careful with your system while running this code, but I would
greatly appreciate feedback as soon a reasonably possible.
1998-01-06 05:26:17 +00:00
David E. O'Brien 9bc192de1d Explain that MAXMEM maynot be nessicary for detection of >64MB RAM. 1997-12-31 21:46:17 +00:00
KATO Takenori c3ab585b5e Sync with sys/i386/conf/options.i386 revision 1.66. 1997-12-29 16:17:59 +00:00
Poul-Henning Kamp d46e059f94 wash, sort and put in order various nits from the i586_ctr -> tsc
commit.

Pointed out by: bde
1997-12-28 13:36:09 +00:00
Jordan K. Hubbard 0031f3a90b Update comment to match updated sb0 line (conflicts keyword no longer needed
at IRQ 5).
1997-12-28 00:28:46 +00:00
Poul-Henning Kamp 71f461f86a Rename "i586_ctr" to "tsc" (both upper and lower case instances).
Fix a couple of printfs too.

Warning: This changes the names of a couple of kernel options!
1997-12-26 20:42:37 +00:00
Poul-Henning Kamp cb0a3a9533 ename "i586_ctr" to "tsc" (both upper and lower case instances).
Fix a couple of printfs too.

Warning: This changes the names of a couple of kernel options!
1997-12-26 20:41:08 +00:00
Kazutaka YOKOTA 3e176bdf69 Document `flags' for the psm driver. 1997-12-23 08:01:16 +00:00
KATO Takenori aaae485bac Sync with sys/i386/conf/Makefile.i386 revision 1.106. 1997-12-20 02:37:55 +00:00
Bruce Evans 8cd077a7fd Augment $PATH to ensure searching of /sbin and /usr/sbin for sysctl
instead of using an absolute path to sysctl.
Problem reported by: ache
1997-12-18 21:03:04 +00:00
Eivind Eklund f41991ba10 EXT2FS and MSDOSFS to the opt_dontuse bin. 1997-12-16 23:59:37 +00:00
Eivind Eklund 5591b823d1 Make COMPAT_43 and COMPAT_SUNOS new-style options. 1997-12-16 17:40:42 +00:00
Eivind Eklund 8c13c35718 Convert SUIDDIR fully to a new-style option.
Forgotten by: julian
1997-12-15 21:51:45 +00:00
Eivind Eklund 430df5f4b7 Throw options IPX, IPXIP and IPTUNNEL into opt_ipx.h.
The #ifdef IPXIP in netipx/ipx_if.h is OK (used from ipx_usrreq.c and
ifconfig.c only).

I also fixed a typo IPXTUNNEL -> IPTUNNEL (and #ifdef'ed out the code
inside, as it never could have compiled - doh.)
1997-12-15 20:31:25 +00:00
KATO Takenori 162c095232 Sync with sys/i386/conf/files.i386 revision 1.182. 1997-12-14 12:30:54 +00:00
Peter Wemm 5eaf45f67b I've been using these tweaks to enable the sound driver to talk to the
(mutant) Crystal CSS4236 chip on the Intel PR440FX SMP motherboard.

XXX this uses some rather ugly PnP bootstrap code that is *NOT* compatable
with 'controller pnp0' or *ANY* other PnP devices.  If you use some other
PnP devices, enabling css0 will burn your house down. :-]  The
"simplified" PnP init sequence directly blats your config(8) settings onto
the chip.  I'm pretty sure 'css0' will conflict with 'mss0', this whole
area desperately needs a cleanup.

I have been using the following with some success on the PR440FX:
controller   snd0
device css0  at isa? port 0x534 irq 5 drq 1 flags 0x08 vector adintr
device opl0  at isa? port 0x388
device mpu0  at isa? port 0x330 irq 10 vector mpuintr
1997-12-12 14:08:50 +00:00
KATO Takenori fede2ad755 Sync with sys/i386/conf/files.i386, majors.i386 and options.i386
revisions 1.181, 1.23 and 1.64, respectively.
1997-12-10 09:28:59 +00:00
Jamil J. Weatherbee a1e9e3087e add entry in LINT for alog driver
added line to files.i386 to compile in alog.c optionally as a driver
1997-12-09 12:04:49 +00:00
Kazutaka YOKOTA b8e63afa1c Remove obsolete psm driver options: PSM_ACCEL, PSM_EMULATION,
PSM_CHECKSYNC.
1997-12-09 11:56:19 +00:00
Jamil J. Weatherbee dd2cb0618e Added major 86 for the alog driver. 1997-12-09 10:51:11 +00:00
Kazutaka YOKOTA 821ecb1944 Removed obsolete options: PSM_CHECKSYNC, PSM_ACCEL and PSM_EMULATION. 1997-12-07 08:07:17 +00:00
KATO Takenori 51b6cb0d6a Sync with sys/i386/conf/options.i386 revision 1.63. 1997-12-05 11:51:29 +00:00
John-Mark Gurney b0050656a7 document and make the NO_F00F_HACK a proper option...
Forgotten by:	sef
1997-12-04 21:20:58 +00:00
Nate Williams 030713d715 - Framework for PCI/CardBus controllers running in PCMCIA emulation
mode.  Currently, the only supported controller is the Cirrus Logic
  PD6832, but others can be supported with docs on them.

Submitted by:	Ted Faber <faber@ISI.EDU>
1997-12-02 21:26:41 +00:00
KATO Takenori 769d22ee8b Sync with sys/i386/conf/files.i386 revision 1.180. 1997-12-02 08:20:34 +00:00
Amancio Hasty 9e41c7c31e Include sound_timer.c for mss device and added
sound_timer.c, opl3.c, ad1848.c, adlib_card.c to trix device.
trix is a driver for an AudioTrix Pro.
1997-12-01 09:29:50 +00:00
KATO Takenori 2a0c056dc0 Sync with sys/i386/conf/files.i386 revision 1.179. 1997-11-27 10:14:54 +00:00
Mark Murray 61ca849927 From the author:
Here are the remanding changes required to support the Ensoniq
Soundscape using FreeBSD 3.0-current.

Notes:

  1) ad1848_init already has code to detect if DMA_DUPLEX should
     be set so it is not necessary (and is in fact a mistake) to
     hard code setting it.  Not all soundcards (i.e. the current
     sscape driver) are capable of using DMA_DUPLEX.

  2) The other changes are hopefully self explanatory.  Feel free
     to let me know if you need additional information.

Submitted by:	john@feith.com (John Wehle)
1997-11-25 19:30:38 +00:00
Alexander Langer e43a990070 Typo fix.
PR:		5068
Submitted by:	Studded@dal.net
1997-11-17 13:57:40 +00:00
John-Mark Gurney 8e9ddffa97 fix Jonathan Mini's email address per his request 1997-11-17 07:58:23 +00:00
Søren Schmidt c2fc1574ce Device # for Jonathan Mini's VESA support. 1997-11-16 10:02:13 +00:00
Julian Elischer 52bf64c787 Reviewed by: hackers@freebsd.org in general
Obtained from: Whistle Communications tree

Add an option to the way UFS works dependent on the SUID bit of directories
This changes makes things a whole lot simpler on systems running as
fileservers for PCs and MACS. to enable the new code you must
1/ enable option SUIDDIR on the kernel.
2/ mount the filesystem with option suiddir.
hopefully this makes it difficult enough for people to
do this accidentally.
see the new chmod(2) man page for detailed info.
1997-11-13 00:28:51 +00:00
Mike Smith 3da4461a71 Assign 84 to Andrew Gordon <arg@arg1.demon.co.uk> for the 'ttxt' Unitext
teletext decoder.
1997-11-10 03:50:29 +00:00
Wolfram Schneider 70e244f8f6 Remove the comments hat just list the nested includes.
The lists don't provide significantly more information than
grep '\.include', and grep gives lists that are actually correct.
Submitted by: Bruce
1997-11-09 15:03:15 +00:00
KATO Takenori c62a76ba79 Sync with sys/i386/conf/Makefile.i386 revision 1.105. 1997-11-06 09:51:34 +00:00
Mike Smith 41631559ba Bump configvers to 300003 to account for the crd->card (and related)
namespace changes.
1997-11-06 03:11:40 +00:00
Joerg Wunsch fbd1372a0b Make IPDIVERT a supported option. Alas, in_var.h depends on it, i
hope i've found out all files that actually depend on this dependancy.
IMHO, it's not very good practice to change the size of internal
structs depending on kernel options.
1997-11-05 20:17:23 +00:00
Steve Price 0f1d6a82dd Note that the Intel EtherExpress' driver is ie(4). 1997-11-04 21:11:14 +00:00
KATO Takenori 1248caae6e Sync with sys/i386/conf/Makefile.i386 revision 1.104. 1997-11-04 12:58:20 +00:00
Guido van Rooij 03486e0a41 Test if kvm_kernel.db exists before moving it. Otherwise installing
a kernel, booting single user and reinstalling a kernel fails.
1997-11-03 21:48:31 +00:00
KATO Takenori 47d57b2340 Synchronize with sys/i386/conf/files.i386 revision 1.178. 1997-10-28 14:29:23 +00:00
Joerg Wunsch ebc1f80ca7 Use the new "mandatory" keyword for the npx driver. 1997-10-28 07:28:34 +00:00
Joerg Wunsch 343b84b4e8 Removed another comment about not-so-mandatory devices i've missed in
the previous commit.  It's perfectly legal to build a kernel without
any video device driver (and even without any console driver at all if
desired).
1997-10-28 07:27:48 +00:00
Joerg Wunsch 1160da921f Remove the stale `log' non-pseudodevice.
Found by:	the new config(8) ;-)
1997-10-28 07:24:35 +00:00
Nate Williams c669d2df7e - 'Beep' support now happens in it's own separate file, so you can mess
around with different noises for the different events and not have it
  affect other files.

Inspired by:	PAO
1997-10-26 06:06:54 +00:00
Nate Williams e7e437dbfa - Do a bunch of gratuitous changes intended to make the code easier to
follow.
 * Rename/reorder all of the pccard structures, change many of the member
   names to be descriptive, and follow more closely other 'bus' drivers
   naming schemes.
 * Rename a bunch of parameter and local variable names to be more
   consistant in the code.
 * Renamed the PCCARD 'crd' device to be the 'card' device
 * KNF and make the code consistant where it was obvious.
 * ifdef'd out some unused code
1997-10-26 04:36:24 +00:00
KATO Takenori 201aca5d46 Synchronize with sys/i386/conf/Makefile.i386 revision 1.103. 1997-10-23 09:20:16 +00:00
Peter Wemm 48b29459ed Put in an initial %VERSREQ field. This will cause existing config(8)'s
to give a non-fatal warning about unknown directives, so there is no
hurry to rebuild config(8) yet, apart from shutting up the warning.
1997-10-22 00:48:36 +00:00
Bruce Evans 7ffe3d1c5d Oops, comment lines can't be indented either. 1997-10-21 10:39:27 +00:00
Bruce Evans 1bfc282680 Oops, comment lines can't be continued. 1997-10-21 10:36:07 +00:00
Bruce Evans 6e47de28bb Added -Wuninitialized to CWARNFLAGS. Warnings about uninitialialized
variables were lost when we removed -W, and 23 new ones including at
least one serious one have crept in for LINT.

Restored -Winline to CFLAGS.  This gives only 3 old warnings and 1 new
for LINT.
1997-10-21 06:53:24 +00:00
KATO Takenori ce22fd7cac Synchronize with sys/i386/conf/options.i386 revision 1.62. 1997-10-18 14:19:57 +00:00
Joerg Wunsch d37346eefb Make all the documented (in pcvt(4)) options supported options. While
i was at it, do no longer insist on `PCVT_FREEBSD' being declared in
the config file, but default it to a reasonable value.

More cleanup to follow, but this part is safe for RELENG_2_2, too.
1997-10-18 10:59:47 +00:00
Peter Wemm 829b5d5510 Don't doc PPP_BSDCOMP and PPP_DEFLATE twice. slight reorder so that the
options are not in the middle of the pseudo-device list.

Prompted by: bde
1997-10-18 10:10:36 +00:00
Peter Wemm 96be526ad0 Doc PPP_* options and add PPP_FILTER 1997-10-18 01:24:20 +00:00
Peter Wemm d41238de36 Convert PPP_FILTER to an option 1997-10-18 01:15:32 +00:00
Poul-Henning Kamp cec0f20ce7 VFS mega cleanup commit (x/N)
1.  Add new file "sys/kern/vfs_default.c" where default actions for
    VOPs go. Implement proper defaults for ABORTOP, BWRITE, LEASE,
    POLL, REVOKE and STRATEGY.  Various stuff spread over the entire
    tree belongs here.

2.  Change VOP_BLKATOFF to a normal function in cd9660.

3.  Kill VOP_BLKATOFF, VOP_TRUNCATE, VOP_VFREE, VOP_VALLOC.  These
    are private interface functions between UFS and the underlying
    storage manager layer (FFS/LFS/MFS/EXT2FS).  The functions now
    live in struct ufsmount instead.

4.  Remove a kludge of VOP_ functions in all filesystems, that did
    nothing but obscure the simplicity and break the expandability.
    If a filesystem doesn't implement VOP_FOO, it shouldn't have an
    entry for it in its vnops table.  The system will try to DTRT
    if it is not implemented.  There are still some cruft left, but
    the bulk of it is done.

5.  Fix another VCALL in vfs_cache.c (thanks Bruce!)
1997-10-16 10:50:27 +00:00
Mike Smith f88c134620 Mention that the Zip driver (vpo) requires SCSI disk support, and works
best with EPP 1.9 mode selected.
Submitted by:	Gianmarco Giovannelli <gmarco@giovannelli.it>
1997-10-15 07:35:48 +00:00
KATO Takenori c0cbbae78b Synchronize with sys/i386/conf/Makefile.i386 revision 1.268. 1997-10-12 12:00:23 +00:00
KATO Takenori e429a56a35 Synchronize with sys/i386/conf/options.i386 revision 1.61. 1997-10-12 11:59:43 +00:00
Joerg Wunsch 19d4b75dfe sppp(4) is now also a consumer of the kernel MD5 code. 1997-10-11 18:35:26 +00:00
Peter Wemm 98823b2366 Convert the VM86 option from a global option to an option only depended
on by the files that use it.  Changing the VM86 option now only causes
a recompile of a dozen files or so rather than the entire kernel.
1997-10-10 09:44:12 +00:00
KATO Takenori 6593be6011 Added two Cyrix 6x86/6x86MX options.
- CPU_CYRIX_NO_LOCK enables weak locking.  If this option is not set and
  FAILESAFE is defined, NO_LOCK bit of CCR1 is cleared.
- CPU_WT_ALLOC enables write-through allocation.
1997-10-06 08:08:41 +00:00
KATO Takenori b0db572e2d Commented out entries of Luigi's sound driver. The name `pcm' is
conflict with sys/isa/sound/pcm86.c.

Pointed out by:	Mitsuru IWASAKI <iwasaki@pc.jaring.my>
1997-09-24 16:41:18 +00:00
John Polstra 1a0eac8a9b Increment RELDATE so that it is possible to distinguish between the
incompatible old and new forms of mount(2).
1997-09-24 04:36:19 +00:00
Jordan K. Hubbard 8dd4744e1a Fix merge spam
Spotted by:	Alex Nash
1997-09-23 16:28:00 +00:00
Jordan K. Hubbard 0a648f6aad Reserve entry for CAN16-2 CAN-PC Interface
Submitted by:	Christoph Kukulies <kuku@gilberto.physik.RWTH-Aachen.DE>
1997-09-23 08:45:33 +00:00
Jordan K. Hubbard ab6e02da0f Be more explicit about one of IPFIREWALL's features. 1997-09-23 08:42:42 +00:00
Joerg Wunsch 6cce995019 Make MFS a supported option, finally. 1997-09-22 21:24:03 +00:00
KATO Takenori 727fd58620 Synchronize with sys/i386/conf/files.i386 revision 1.177. 1997-09-22 12:18:52 +00:00
Justin T. Gibbs 168bbc9927 Move the rules for aicasm to the MI conf file. 1997-09-21 21:34:31 +00:00
Justin T. Gibbs f2f9c18505 Move the rules for aicasm to the MI conf file.
Add kern/subr_autoconf.c as a standard file as it contains the bulk of
the code for performing interrupt driven configuration.
1997-09-21 21:32:04 +00:00
John Dyson e871e61fcf Addition of support of the slightly rogue Promise IDE interface(Dyson), support
of multiple PCI IDE controllers(Dyson), and some updates and cleanups from
John Hood, who originally made our IDE DMA stuff work :-).

I have run tests with 7 IDE drives connected to my system, all in DMA
mode, with no errors.  Modulo any bugs, this stuff makes IDE look
really good (within it's limitations.)

Submitted by:	John Hood <cgull@smoke.marlboro.vt.us>
1997-09-20 07:41:58 +00:00
KATO Takenori 55d994bfb5 Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/sio.c
revisions 1.60 and 1.182, respectively.
1997-09-20 05:28:02 +00:00
John-Mark Gurney 6a796ce0a1 teach sio how to attach to isa PnP cards. This is mainly for use with
internal modems.  Currently detects a USR modem, and a couple Supra
modems...  vendor id's for sio capabile cards welcomed...

document new option EXTRA_SIO that will increase sio's internal data
structures to support X more serial ports...  these are used by the
PnP part of sio for attaching...  If you don't have it specified, it
will default to 2...  This is defaulted to 0 if you don't have PnP
compiled into your kernel...

also document that if you set the PnP flags (pnp x flags y) to 0x1 that
the modem will be refused to be recognized by the sio driver... this
is for people that want the traditional isa driver to probe and attach
the modem... (for keeping legacy sio numbering)
1997-09-19 15:25:49 +00:00
KATO Takenori 61fd9882c1 Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/fd.c
revisions 1.59 and 1.101, respectively.
1997-09-17 08:01:07 +00:00
Joerg Wunsch 0cc12cc57e Make TCPDEBUG a new-style option. 1997-09-16 18:36:06 +00:00
Joerg Wunsch d2fb48929a Make FDC_DEBUG a supported option.
Hide the bogus FDC ``chip type'' display behind a (mostly) undocumented
option, since people started to trust the bogus claim.  Once we're going
to handle 2.88 MB controllers, we have to redo the chip detection, by
now just leave it hidden.
1997-09-16 07:45:45 +00:00
KATO Takenori b91a9de202 Synchronize with sys/i386/conf/files.i386 revision 1.176. 1997-09-15 04:00:32 +00:00
John-Mark Gurney c740608242 docment the new sound drivers in LINT and add the necessary files to
files.i386.

We aren't sure if this new code and the old sound code will co-exist in a
kernel, so the device pcm0 line is left commented out in LINT.

Submitted-by:	Luigi Rizzo
1997-09-14 21:45:05 +00:00
KATO Takenori eba56748e7 Synchronize with sys/i386/conf/files.i386 revision 1.175. 1997-09-10 08:05:46 +00:00
Peter Wemm ffdd472de7 Allow a compile-time override of the ipfw deny rule. For a 'firewall'
you don't want this (and the documentation explains why), but if you
use ipfw as an as-needed casual filter as needed which normally runs as
'allow all' then having the kernel and /sbin/ipfw get out of sync is a
*MAJOR* pain in the behind.

PR: 4141
Submitted by: Heikki Suonsivu <hsu@mail.clinet.fi>
1997-09-10 03:07:14 +00:00
John-Mark Gurney 53a7a570be add pnp device entries... 1997-09-09 12:40:54 +00:00
Bruce Evans a910e75cdc Removed vestiges of config-time "argument processing" configuration. 1997-09-07 13:49:56 +00:00
Bruce Evans 7128e3fc0a Removed more vestiges of config-time swap configuration. 1997-09-07 12:56:46 +00:00
KATO Takenori 7aa7e2b075 Synchronize with sys/i386/conf/options.1386 revision 1.58. 1997-09-05 10:18:16 +00:00
Kazutaka YOKOTA 297976f79f Add a new compile option SC_HISTORY_SIZE for syscons. 1997-09-04 23:03:11 +00:00
Søren Schmidt 1f7727a963 Upgrade of EIDE DMA support, Johns comments:
* lots of fixes to error handling-- mostly works now
* improve DMA timing config for Triton chipsets-- PIIX4 and UDMA drive
  still untested
* generally improve DMA config in many ways-- mostly cleanup
* clean up boot-time messages
* rewrite PRD generation algorithm
* first wd timeout is now longer, to handle drive spinup

Submitted by: John Hood <cgull@smoke.marlboro.vt.us>
1997-09-04 18:49:53 +00:00
KATO Takenori 47e05c0b61 Synchronize with sys/i386/conf/files.i386 revision 1.174. 1997-09-03 12:40:10 +00:00
Justin T. Gibbs c66dbc92d4 Make the aic7xxx sequencer assembler compile in the kernel's object
directory.  Rename (via repository copy) some files so that the potential
for future conflicts is minimized.

PR: conf/4363
1997-09-03 03:44:58 +00:00
KATO Takenori 17f8b8963b Synchronize with sys/i386/conf/options.i386 revision 1.57. 1997-09-01 10:41:04 +00:00
Bruce Evans 6d58e6cbc4 Fixed options SHOW_BUSYBUFS and PANIC_REBOOT_WAIT_TIME which were broken
by incomplete cutting and pasting from machdep.c to kern_shutdown.c.

PR:		3953
1997-08-31 23:08:38 +00:00
Bruce Evans f3086365a3 Put I*86_CPU options in opt_global.h and don't #include "opt_cpu.h"
centrally.
1997-08-31 22:43:46 +00:00
KATO Takenori 4c7bdfd64b Synchronize with sys/i386/conf/files.i386 and sys/i386/i386/trap.c
revisions 1.173 and 1.109, respectively.
1997-08-29 08:15:57 +00:00
Jonathan Lemon adeb9a12ce Document the VM86 option.
Reminded-by:	John-Mark Gurney
1997-08-28 15:00:05 +00:00
Jonathan Lemon 5f07393373 Remove the vm86 support as an LKM, and link it directly into the kernel
if 'options "VM86"' is in the config file.  The LKM was really for
development, and has probably outlived its usefulness.
1997-08-28 14:36:56 +00:00
KATO Takenori a1b442d74c Synchronize with sys/i386/conf/files.i386 and majors.i386 revisions
1.172 and 1.17, respectively.
1997-08-28 14:21:12 +00:00
Jordan K. Hubbard 3b577e1f2f Add entries for Comtrol Rocketport serial card.
Submitted by:	Amir Farah <amir@comtrol.com>
1997-08-28 12:18:09 +00:00
KATO Takenori 17c008220e Use existing path, even though PC-98 doesn't support each device driver. 1997-08-27 08:47:03 +00:00
Peter Wemm 9a3b3e8bce Clean up the SMP AP bootstrap and eliminate the wretched idle procs.
- We now have enough per-cpu idle context, the real idle loop has been
revived (cpu's halt now with nothing to do).
- Some preliminary support for running some operations outside the
global lock (eg: zeroing "free but not yet zeroed pages") is present
but appears to cause problems.  Off by default.
- the smp_active sysctl now behaves differently. It's merely a 'true/false'
option.  Setting smp_active to zero causes the AP's to halt in the idle
loop and stop scheduling processes.
- bootstrap is a lot safer.  Instead of sharing a statically compiled in
stack a number of times (which has caused lots of problems) and then
abandoning it, we use the idle context to boot the AP's directly.  This
should help >2 cpu support since the bootlock stuff was in doubt.
- print physical apic id in traps.. helps identify private pages getting
out of sync.  (You don't want to know how much hair I tore out with this!)

More cleanup to follow, this is more of a checkpoint than a
'finished' thing.
1997-08-26 18:10:38 +00:00
Peter Wemm 89327d27f7 Mention PPP_DEFLATE and PPP_BSDCOMP for kernel ppp. 1997-08-19 17:11:35 +00:00
Peter Wemm 13c497114e Use two NetBSD-style options (PPP_DEFLATE and PPP_BSDCOMP) to control
whether or not to compile the two ppp compression methods.
1997-08-19 17:05:26 +00:00
Peter Wemm 2d4b190bc5 Update kernel parts of pppd from 2.2.0 to 2.3.0. I've yet to look at the
2.3.0 -> 2.3.1 changes, but I seem to recall that there are certain
"issues" with 2.3.1 (I'm not sure if it's just pppd or the whole lot, I
am not quite that far).  The present pppd seems to work with it just fine
for the time being.

Among the changes are that zlib (aka LZ77 aka deflate aka gzip) compression
is implemented as well as the original compress(1) LZW style.
1997-08-19 14:10:50 +00:00
Garrett Wollman cee405ba27 Enable hostcache code. 1997-08-16 19:11:10 +00:00
Mike Smith 49975ec268 Assign character major 82 to the 'ppi' Generic Parallel Port I/O device. 1997-08-16 14:15:40 +00:00
Mike Smith 22531ffcef Add new ppbus files.
Submitted by:	Nicolas Souchu <Nicolas.Souchu@prism.uvsq.fr>
1997-08-16 14:06:05 +00:00
Mike Smith 22526298ad Oops, reference the ppi and vpo drivers properly. Obviously nobody's
using this stuff yet 8)
1997-08-16 12:21:23 +00:00
KATO Takenori e7e37fb1a0 Synchronize with sys/i386/conf/files.i386 revision 1.171. 1997-08-16 01:31:22 +00:00
Mike Smith ab4c624ba4 Add support for the new Parallel-Port Bus and devices thereon.
Submitted by:	Nicolas Souchu <Nicolas.Souchu@prism.uvsq.fr>
1997-08-14 14:03:27 +00:00
Mike Smith 1b16a0ddb8 Add parallel-Port Bus drivers.
Submitted by:	Nicolas Souchu <Nicolas.Souchu@prism.uvsq.fr>
1997-08-14 13:59:24 +00:00
Jordan K. Hubbard 56ed81f738 Reserve major 81 for rocketport driver. 1997-08-13 21:01:30 +00:00
KATO Takenori f791a51afe Synchronize with sys/i386/conf/options.i386 revision 1.55. 1997-08-09 01:58:50 +00:00
John Dyson b6a6d066a8 Add VM86 to the options. 1997-08-09 00:19:39 +00:00
John Dyson 3075778b63 Get rid of the ad-hoc memory allocator for vm_map_entries, in lieu of
a simple, clean zone type allocator.  This new allocator will also be
used for machine dependent pmap PV entries.
1997-08-05 00:02:08 +00:00
KATO Takenori bbd5c527aa Synchronize with sys/i386/conf/options.i386 revision 1.54. 1997-08-02 10:23:17 +00:00
KATO Takenori 7bb6fb1df2 Synchronize with sys/i386/conf/files.i386 revision 1.170. 1997-08-02 06:58:53 +00:00
KATO Takenori 0f3fdd504d Synchronize with sys/i386/conf/options.i386 revision 1.53. 1997-08-02 06:58:07 +00:00
Mike Smith 3476cdb9f4 Sanitise the Wavelan entries.
Submitted by:	bde
1997-08-02 05:20:14 +00:00
Mike Smith e2c77d8580 Add new BIOS-related files. 1997-08-01 06:04:34 +00:00
Mike Smith 36bdbe9431 New LINT comments and options for the Wavelan (wl) driver.
Submitted by:	Jim Binkley <jrb@cs.pdx.edu>
1997-08-01 03:33:08 +00:00
KATO Takenori 7ae53134ce Synchronize with sys/i386/conf/files.i386 and sys/i386/isa/wd.c
revisions 1.169 and 1.133, respectively.
1997-07-31 13:10:54 +00:00
Søren Schmidt 8b8a0b53b1 Add support for busmaster DMA on some PCI IDE chipsets.
I changed a few bits here and there, mainly renaming wd82371.c
to ide_pci.c now that it's supposed to handle different chipsets.

It runs on my P6 natoma board with two Maxtor drives, and also
on a Fujitsu machine I have at work with an Opti chipset and
a Quantum drive.

Submitted by:cgull@smoke.marlboro.vt.us <John Hood>

Original readme:

*** WARNING ***

This code has so far been tested on exactly one motherboard with two
identical drives known for their good DMA support.

This code, in the right circumstances, could corrupt data subtly,
silently, and invisibly, in much the same way that older PCI IDE
controllers do.  It's ALPHA-quality code; there's one or two major
gaps in my understanding of PCI IDE still.  Don't use this code on any
system with data that you care about; it's only good for hack boxes.
Expect that any data may be silently and randomly corrupted at any
moment.  It's a disk driver.  It has bugs.  Disk drivers with bugs
munch data.  It's a fact of life.

I also *STRONGLY* recommend getting a copy of your chipset's manual
and the ATA-2 or ATA-3 spec and making sure that timing modes on your
disk drives and IDE controller are being setup correctly by the BIOS--
because the driver makes only the lamest of attempts to do this just
now.

*** END WARNING ***

that said, i happen to think the code is working pretty well...

WHAT IT DOES:

this code adds support to the wd driver for bus mastering PCI IDE
controllers that follow the SFF-8038 standard.  (all the bus mastering
PCI IDE controllers i've seen so far do follow this standard.)  it
should provide busmastering on nearly any current P5 or P6 chipset,
specifically including any Intel chipset using one of the PIIX south
bridges-- this includes the '430FX, '430VX, '430HX, '430TX, '440LX,
and (i think) the Orion '450GX chipsets.  specific support is also
included for the VIA Apollo VP-1 chipset, as it appears in the
relabeled "HXPro" incarnation seen on cheap US$70 taiwanese
motherboards (that's what's in my development machine).  it works out
of the box on controllers that do DMA mode2; if my understanding is
correct, it'll probably work on Ultra-DMA33 controllers as well.
it'll probably work on busmastering IDE controllers in PCI slots, too,
but this is an area i am less sure about.

it cuts CPU usage considerably and improves drive performance
slightly.  usable numbers are difficult to come by with existing
benchmark tools, but experimentation on my K5-P90 system, with VIA
VP-1 chipset and Quantum Fireball 1080 drives, shows that disk i/o on
raw partitions imposes perhaps 5% cpu load.  cpu load during
filesystem i/o drops a lot, from near 100% to anywhere between 30% and
70%.  (the improvement may not be as large on an Intel chipset; from
what i can tell, the VIA VP-1 may not be very efficient with PCI I/O.)
disk performance improves by 5% or 10% with these drives.

real, visible, end-user performance improvement on a single user
machine is about nil. :) a kernel compile was sped up by a whole three
seconds.  it *does* feel a bit better-behaved when the system is
swapping heavily, but a better disk driver is not the fix for *that*
problem.

THE CODE:

this code is a patch to wd.c and wd82371.c, and associated header
files.  it should be considered alpha code; more work needs to be
done.

wd.c has fairly clean patches to add calls to busmaster code, as
implemented in wd82371.c and potentially elsewhere (one could imagine,
say, a Mac having a different DMA controller).

wd82371.c has been considerably reworked: the wddma interface that it
presents has been changed (expect more changes), many bugs have been
fixed, a new internal interface has been added for supporting
different chipsets, and the PCI probe has been considerably extended.

the interface between wd82371.c and wd.c is still fairly clean, but
i'm not sure it's in the right place.  there's a mess of issues around
ATA/ATAPI that need to be sorted out, including ATAPI support, CD-ROM
support, tape support, LS-120/Zip support, SFF-8038i DMA, UltraDMA,
PCI IDE controllers, bus probes, buggy controllers, controller timing
setup, drive timing setup, world peace and kitchen sinks.  whatever
happens with all this and however it gets partitioned, it is fairly
clear that wd.c needs some significant rework-- probably a complete
rewrite.

timing setup on disk controllers is something i've entirely punted on.
on my development machine, it appears that the BIOS does at least some
of the necessary timing setup.  i chose to restrict operation to
drives that are already configured for Mode4 PIO and Mode2 multiword
DMA, since the timing is essentially the same and many if not most
chipsets use the same control registers for DMA and PIO timing.

does anybody *know* whether BIOSes are required to do timing setup for
DMA modes on drives under their care?

error recovery is probably weak.  early on in development, i was
getting drive errors induced by bugs in the driver; i used these to
flush out the worst of the bugs in the driver's error handling, but
problems may remain.  i haven't got a drive with bad sectors i can
watch the driver flail on.

complaints about how wd82371.c has been reindented will be ignored
until the FreeBSD project has a real style policy, there is a
mechanism for individual authors to match it (indent flags or an emacs
c-mode or whatever), and it is enforced.  if i'm going to use a source
style i don't like, it would help if i could figure out what it *is*
(style(9) is about half of a policy), and a way to reasonably
duplicate it.  i ended up wasting a while trying to figure out what
the right thing to do was before deciding reformatting the whole thing
was the worst possible thing to do, except for all the other
possibilities.

i have maintained wd.c's indentation; that was not too hard,
fortunately.

TO INSTALL:

my dev box is freebsd 2.2.2 release.  fortunately, wd.c is a living
fossil, and has diverged very little recently.  included in this
tarball is a patch file, 'otherdiffs', for all files except wd82371.c,
my edited wd82371.c, a patch file, 'wd82371.c-diff-exact', against the
2.2.2 dist of 82371.c, and another patch file,
'wd82371.c-diff-whitespace', generated with diff -b (ignore
whitespace).  most of you not using 2.2.2 will probably have to use
this last patchfile with 'patch --ignore-whitespace'.  apply from the
kernel source tree root. as far as i can tell, this should apply
cleanly on anything from -current back to 2.2.2 and probably back to
2.2.0.  you, the kernel hacker, can figure out what to do from here.
if you need more specific directions, you probably should not be
experimenting with this code yet.

to enable DMA support, set flag 0x2000 for that drive in your config
file or in userconfig, as you would the 32-bit-PIO flag.  the driver
will then turn on DMA support if your drive and controller pass its
tests.  it's a bit picky, probably.  on discovering DMA mode failures
or disk errors or transfers that the DMA controller can't deal with,
the driver will fall back to PIO, so it is wise to setup the flags as
if PIO were still important.

'controller wdc0 at isa? port "IO_WD1" bio irq 14 flags 0xa0ffa0ff
vector wdintr' should work with nearly any PCI IDE controller.

i would *strongly* suggest booting single-user at first, and thrashing
the drive a bit while it's still mounted read-only.  this should be
fairly safe, even if the driver goes completely out to lunch.  it
might save you a reinstall.

one way to tell whether the driver is really using DMA is to check the
interrupt count during disk i/o with vmstat; DMA mode will add an
extremely low number of interrupts, as compared to even multi-sector
PIO.

boot -v will give you a copious register dump of timing-related info
on Intel and VIAtech chipsets, as well as PIO/DMA mode information on
all hard drives.  refer to your ATA and chipset documentation to
interpret these.

WHAT I'D LIKE FROM YOU and THINGS TO TEST:

reports.  success reports, failure reports, any kind of reports. :)
send them to cgull+ide@smoke.marlboro.vt.us.

i'd also like to see the kernel messages from various BIOSes (boot -v;
dmesg), along with info on the motherboard and BIOS on that machine.

i'm especially interested in reports on how this code works on the
various Intel chipsets, and whether the register dump works
correctly.  i'm also interested in hearing about other chipsets.

i'm especially interested in hearing success/failure reports for PCI
IDE controllers on cards, such as CMD's or Promise's new busmastering
IDE controllers.

UltraDMA-33 reports.

interoperation with ATAPI peripherals-- FreeBSD doesn't work with my
old Hitachi IDE CDROM, so i can't tell if I've broken anything. :)

i'd especially like to hear how the drive copes in DMA operation on
drives with bad sectors.  i haven't been able to find any such yet.

success/failure reports on older IDE drives with early support for DMA
modes-- those introduced between 1.5 and 3 years ago, typically
ranging from perhaps 400MB to 1.6GB.

failure reports on operation with more than one drive would be
appreciated.  the driver was developed with two drives on one
controller, the worst-case situation, and has been tested with one
drive on each controller, but you never know...

any reports of messages from the driver during normal operation,
especially "reverting to PIO mode", or "dmaverify odd vaddr or length"
(the DMA controller is strongly halfword oriented, and i'm curious to
know if any FreeBSD usage actually needs misaligned transfers).

performance reports.  beware that bonnie's CPU usage reporting is
useless for IDE drives; the best test i've found has been to run a
program that runs a spin loop at an idle priority and reports how many
iterations it manages, and even that sometimes produces numbers i
don't believe.  performance reports of multi-drive operation are
especially interesting; my system cannot sustain full throughput on
two drives on separate controllers, but that may just be a lame
motherboard.

THINGS I'M STILL MISSING CLUE ON:

* who's responsible for configuring DMA timing modes on IDE drives?
the BIOS or the driver?

* is there a spec for dealing with Ultra-DMA extensions?

* are there any chipsets or with bugs relating to DMA transfer that
should be blacklisted?

* are there any ATA interfaces that use some other kind of DMA
controller in conjunction with standard ATA protocol?

FINAL NOTE:

after having looked at the ATA-3 spec, all i can say is, "it's ugly".
*especially* electrically.  the IDE bus is best modeled as an
unterminated transmission line, these days.

for maximum reliability, keep your IDE cables as short as possible and
as few as possible.  from what i can tell, most current chipsets have
both IDE ports wired into a single buss, to a greater or lesser
degree.  using two cables means you double the length of this bus.

SCSI may have its warts, but at least the basic analog design of the
bus is still somewhat reasonable.  IDE passed beyond the veil two
years ago.

  --John Hood, cgull@smoke.marlboro.vt.us
1997-07-29 12:57:25 +00:00
KATO Takenori 2f2a1f2613 Synchronize with sys/i386/conf/options.i386 revision 1.52. 1997-07-26 13:53:27 +00:00
Steve Passe 25717e9980 Removed "options SMP_TIMER_NC". 1997-07-26 01:46:03 +00:00
KATO Takenori 94a95fad51 Synchronize with sys/i386/conf/options.i386 revision 1.51. 1997-07-26 01:35:14 +00:00
KATO Takenori 4b73f65291 Synchronize with sys/i386/conf/files.i386 revision 1.168. 1997-07-26 01:34:33 +00:00
KATO Takenori 58e43095b7 Synchronize with sys/i386/conf/Makefile.i386 revision 1.101. 1997-07-26 01:34:05 +00:00
Poul-Henning Kamp 38d8a113a9 Add option for compiling in a 8x16 font. 1997-07-25 11:53:30 +00:00
Steve Passe 64ab539460 Added a new SMP specific file: i386/i386/simplelock.s.
This code was split off from apic_ipl.s.
It contains the Lite2 lock manager primitives:
 - s_lock_init()
 - s_lock()
 - s_lock_try()
 - s_unlock()
1997-07-24 23:45:17 +00:00
Bruce Evans 2e9b23b0ba Added ${KMOD} to CLEANFILES. ${KMOD} gets created if you run `make load'. 1997-07-21 16:04:41 +00:00
Bruce Evans 96b89afc1d Disabled option SMP_TIMER_NC. It now conflicts with a default "option".
Moved description of sio 16650A flag to the sio section and rewrote the
description.  It was in the generic console flags section.

Added undocumented options CPU_UPGRADE_HW_CACHE and WLDEBUG.
1997-07-20 05:27:59 +00:00
John Dyson 955bc15107 Add some support for the 16650 type UARTS. 1997-07-17 06:01:15 +00:00
KATO Takenori c39114cfcf Added CPU_BLUELIGHTNING_FPU_OP_CACHE and CPU_BLUELIGHTNING_3X.
Forgotten-by:	me.
1997-07-14 12:33:06 +00:00
KATO Takenori 4a2adb3998 Synchronize with sys/i386/conf/options.i386 revision 1.50. 1997-07-14 12:31:27 +00:00
Bruce Evans c3ed6aa9cd Added CPU_DIRECT_MAPPED_CACHE. 1997-07-13 15:26:54 +00:00
Wolfram Schneider d1515d7fc1 Delete $Id$ line from copyright.
Submitted: Bruce
1997-07-09 20:38:19 +00:00
Andrey A. Chernov 29a4cf6d4d Remove 'conflicts' keyword from SB family devices, it is not
needed now. Uncomment awe0 device
1997-07-08 15:39:29 +00:00
KATO Takenori d9b8e3127c Synchronize with sys/i386/conf/options.i386 revision 1.49. 1997-07-02 11:00:56 +00:00
Bruce Evans 06daa05136 Enabled some SMP options. LINT is for testing that all code compiles
cleanly, so only negative options should be commented out.  Options
should have non-default values.
1997-07-01 00:14:39 +00:00
Bruce Evans ed2be8eabe Removed temporary SMP header fix. 1997-06-30 23:37:54 +00:00
Kazutaka YOKOTA 5d3b146552 options.i386:
- Added the psm options PSM_HOOKAPM and PSM_RESETAFTERSUSPEND.

LINT:
- Added the psm options PSM_HOOKAPM and PSM_RESETAFTERSUSPEND.
- Added comments on the flag 0x20 for syscons.
- Clarified descriptions on the flags (0x02, 0x04) regarding the cursor
  shape in syscons.
1997-06-30 14:37:43 +00:00
KATO Takenori bce20da1b3 Synchronize with sys/i386/conf/Makefile.i386 and files.i386 revisions
1.100 and 1.166, respectively.
1997-06-30 09:57:33 +00:00
Bruce Evans 1013a13daf Fixed the fix for not using -fomit-frame-pointer with -pg. The previous
fix stopped it being used in all cases, because substitution on unset
variables does not work.

When profiling, put -malign-functions=4 in CFLAGS instead of in PROF.
This fixes the histogram counts for profiling support functions.  It
gives bogus but harmless extra alignment for genassym etc.
1997-06-29 16:39:11 +00:00
KATO Takenori 4962d93866 Added CPU_DIRECT_MAPPED_CACHE option which sets L1 cache in direct
mapped mode on Cyrix 486DLC box.
1997-06-27 13:46:19 +00:00
John Hay 8f65b5944d Removed the #ifdef IPXERRORMSGS'ed code. Fix a lot of style errors that I
introduced with the previous commit.
Style fixes Submitted by:	Bruce Evans <bde@FreeBSD.ORG>
1997-06-26 19:36:03 +00:00
KATO Takenori 879210125e Synchronize with following changes:
>  Revision  Changes    Path
>  1.250     +1 -18     src/sys/i386/i386/machdep.c
>  1.48      +1 -7      src/sys/i386/conf/options.i386
>  1.251     +19 -46    src/sys/i386/i386/machdep.c
>  1.24      +2 -6      src/sys/i386/i386/microtime.s
>  1.100     +4 -15     src/sys/i386/i386/trap.c
>  1.46      +6 -7      src/sys/i386/isa/npx.c
1997-06-23 09:35:47 +00:00
Peter Wemm b3196e4b9f Preliminary support for per-cpu data pages.
This eliminates a lot of #ifdef SMP type code.  Things like _curproc reside
in a data page that is unique on each cpu, eliminating the expensive macros
like:    #define curproc (SMPcurproc[cpunumber()])

There are some unresolved bootstrap and address space sharing issues at
present, but Steve is waiting on this for other work.  There is still some
strictly temporary code present that isn't exactly pretty.

This is part of a larger change that has run into some bumps, this part is
standalone so it should be safe.  The temporary code goes away when the
full idle cpu support is finished.

Reviewed by: fsmp, dyson
1997-06-22 16:04:22 +00:00
Jordan K. Hubbard 398ac038db Change the distribute targets so that a given item in our source tree
can place itself into n distributions, where n >= 1.
1997-06-21 15:40:34 +00:00
Satoshi Asami b3e17ba2cf Add "-I${DESTDIR}/usr/include" to CFLAGS if DESTDIR is defined, just
like bsd.lib.mk and bsd.prog.mk.  It doesn't add it to CXXINCLUDES, I
don't think anybody has written a kernel module with C++.  (Not that I
think DavidG will allow it anyway. :)

Reviewed by:	bde
1997-06-18 03:10:31 +00:00
Kenjiro Cho 3cbceb8234 correct the wrong ATM option name for native atm access
NETNATM --> NATM

reported by Bruce Evans.

Bruce also pointed out that NATM is confusing since config(8) defines
NATM as the number of atm pseudo device in "BUILD_DIR/atm.h".
We might change the name in the future but leave it as it is for now.
1997-06-17 05:58:15 +00:00
John Dyson 2c1011f7ef Modifications to existing files to support the initial AIO/LIO and
kernel based threading support.
1997-06-16 00:29:36 +00:00
Bruce Evans ac5fcb6d4d Removed unused #includes. 1997-06-14 11:38:46 +00:00
KATO Takenori 857e7b5d5b Synchronize with sys/i386/conf/options.i386 revision 1.47. 1997-06-06 13:07:18 +00:00
Jordan K. Hubbard 818de095b4 YAMF22 - XSERVER comment changes. 1997-06-06 12:24:43 +00:00
Paul Traina 562d05dfae Document a non-standard gdbremote protocol extension (kludge, really)
that I snuck in to our GDB last year.  This allows you to debug headless
machines by sharing the console port between the debugger and the system
console.  It's not 100% reliabile, but it works well.  It's optional
and disabled by default.
Submitted by:	Juniper Networks
1997-06-04 16:44:29 +00:00
Paul Traina 5ea6cb03f3 Bring back CONSPEED as a last-ditch default if you can't change the speed
any other way.

Requested by: dfr
1997-06-04 16:25:15 +00:00
KATO Takenori 1e86ea47d9 Synchronize with sys/i386/conf/options.i386 revision 1.46. 1997-06-04 10:29:17 +00:00
Paul Traina 69d2ceed21 CONSPEED is defunct. 1997-06-04 04:55:26 +00:00
KATO Takenori 91097827d5 Synchronize with following files:
Revision  Changes    Path
>  1.165     +2 -1      src/sys/i386/conf/files.i386
>  1.246     +2 -1      src/sys/i386/i386/machdep.c
>  1.98      +2 -2      src/sys/i386/i386/trap.c
>  1.87      +2 -2      src/sys/i386/isa/clock.c
>  1.89      +2 -356    src/sys/i386/isa/isa.c
>  1.45      +2 -1      src/sys/i386/isa/npx.c
1997-06-02 15:45:40 +00:00
KATO Takenori fe626266ae Synchronize with sys/i386/conf/files.i386 revision up to 1.164. 1997-06-02 09:22:55 +00:00
KATO Takenori 64d5af6ef5 Synchronize with sys/i386/conf/Makefile.i386 revision 1.99. 1997-06-02 09:20:46 +00:00
Doug Rabson 683523378c Move interrupt handling code from isa.c to a new file. This should make
isa.c (slightly) more portable and will make my life developing the really
portable version much easier.

Reviewed by:	peter, fsmp
1997-06-02 08:19:06 +00:00
Bruce Evans 20c776a50b Don't use -fomit-frame-pointer for ipl_funcs.c if ${PROF} is nonempty,
is incompatible with -pg.  (We use a different version of mcount for
profiling frame-pointer-less assembler functions, but gcc doesn't know
about this.)

Added a missing dependency.

Cleaned up trailing backslashes.

Added comment about config's limitations/bugs handling dependencies and
backslashe/newlines.

Finished removing support for isdn drivers.
1997-06-01 20:25:55 +00:00
Peter Wemm f5d66b9bb4 specify compile-with option to get -fomit-frame-pointer on ipl_funcs.c 1997-05-31 18:01:38 +00:00
Peter Wemm d8897edc0e Revert previous change, use "compile-with" in files.i386 instead. 1997-05-31 17:59:56 +00:00
KATO Takenori 4e97ca1849 Synchronize with sys/i386/conf/files.i386 revision 1.162. 1997-05-31 12:39:57 +00:00
KATO Takenori 0118e71ec9 Synchronize with sys/i386/conf/Makefile.i386 revision 1.98. 1997-05-31 12:39:08 +00:00
Peter Wemm 49c6ff7dc2 add ipl_funcs.c (Hmm.. should probably use a "compile-with" arg rather
than a Makefile.i386 hook)
1997-05-31 09:23:44 +00:00
Peter Wemm 752bbf7aa8 compile ipl_funcs.c with -fomit-frame-pointer, as suggested by Bruce. This
cuts the cost of a function call instead of an inline.
1997-05-31 09:19:19 +00:00
Stefan Eßer 5bec615793 Completely replace the PCI bus driver code to make it better reflect
reality. There will be a new call interface, but for now the file
pci_compat.c (which is to be deleted, after all drivers are converted)
provides an emulation of the old PCI bus driver functions. The only
change that might be visible to drivers is, that the type pcici_t
(which had been meant to be just a handle, whose exact definition
should not be relied on), has been converted into a pcicfgregs* .

The Tekram AMD SCSI driver bogusly relied on the definition of pcici_t
and has been converted to just call the PCI drivers functions to access
configuration space register, instead of inventing its own ...

This code is by no means complete, but assumed to be fully operational,
and brings the official code base more in line with my development code.

A new generic device descriptor data type has to be agreed on. The PCI
code will then use that data type to provide new functionality:

1) userconfig support
2) "wired" PCI devices
3) conflicts checking against ISA/EISA
4) maps will depend on the command register enable bits
5) PCI to Anything bridges can be defined as devices,
   and are probed like any "standard" PCI device.

The following features are currently missing, but will be added back,
soon:

1) unknown device probe message
2) suppression of "mirrored" devices caused by ancient, broken chip-sets

This code relies on generic shared interrupt support just commited to
kern_intr.c (plus the modifications of isa.c and isa_device.h).
1997-05-26 15:08:43 +00:00
Stefan Eßer a1854c868a Add kern/kern_intr.c as a standard kernel component. This file contains
the new interrupt registration code, which is meant to be architecture
indeppendent.
1997-05-26 14:46:23 +00:00
Darren Reed 90538e09f8 Add lines for new files in ipfilter 1997-05-25 15:56:18 +00:00
Peter Wemm 2321ce34c1 uncomment wl again now that it compiles... 1997-05-25 07:18:22 +00:00
Peter Wemm e83d2f266d The wavelan driver doesn't even compile! 1997-05-24 12:23:44 +00:00
KATO Takenori be03094652 Synchronize with sys/i386/conf/Makefile.i386 revision 1.97. 1997-05-23 10:12:10 +00:00
KATO Takenori 8372e1b55f Synchronize with sys/i386/conf/files.i386 and options.i386 revisions
1.161 and 1.45, respectively.
1997-05-23 10:11:04 +00:00
Mike Smith 98d46ad0c9 Add the 'wl' ISA Wavelan driver.
Obtained from:	Jim Binkley <jrb@cs.pdx.edu>
1997-05-22 08:47:40 +00:00
John Polstra 61b005296f This commit affects ELF kernels only.
Remove "setdefs.h" and arrange to generate it automatically at
ELF kernel build time.

"gensetdefs.c" is a utility which scans a set of ELF object files
and outputs a line ``DEFINE_SET(name, length);'' for each linker
set that it finds.  When generating an ELF kernel, this is run just
before the final link to generate "setdefs.h".

Remove the init_sets() function from "setdef0.c", and its call from
"machdep.c".  Since "gensetdefs.c" calculates the length of each
set, it is no longer necessary in an ELF kernel to count the set
elements at kernel initialization time.  Also remove "set_of_sets"
which was used for this purpose.

Link "setdef0" and "setdef1" into the kernel only if building for
ELF.  Since init_sets() is no longer used, there is no need to link
them into an a.out kernel.
1997-05-21 23:21:30 +00:00
Tor Egge 432aad0e98 Bring in some kernel bootp support. This removes the need for netboot
to fill in the nfs_diskless structure, at the cost of some kernel
bloat. The advantage is that this code works on a wider range of
network adapters than netboot. Several new kernel options are
documented in LINT.
Obtained from: parts of the code comes from NetBSD.
1997-05-11 18:05:39 +00:00
Steve Passe a56fb4ee60 Documented SMP_AUTOSTART to be working. 1997-05-10 17:40:53 +00:00
John Hay 02c186c9bf Remove IPXPRINTFS, it is now a sysctl knob. 1997-05-10 11:16:22 +00:00
John-Mark Gurney 5719a93caf forgot to add the "longer" description of bktr and add an example device
line.
1997-05-10 09:23:55 +00:00
John-Mark Gurney 6baab37637 add a line for bktr (Bt848 base capture cards) to LINT. 1997-05-10 09:18:46 +00:00
Kenjiro Cho 68713f97a1 merge ATM driver 1997-05-09 12:19:06 +00:00
KATO Takenori 5e76cb1c34 Synchronize with sys/i386/conf/options.i386 revision 1.44. 1997-05-08 09:18:11 +00:00
KATO Takenori ce5f95ee24 Synchronize with sys/i386/conf/Makefile.pc98 revision 1.96. 1997-05-08 09:13:40 +00:00
Peter Wemm 53815e2fe6 Round 1 of a long series of commits..
Move SMP and APIC_IO from opt_smp.h to opt_global.h
1997-05-07 19:39:16 +00:00
Doug Rabson cea6c86c11 This is the kernel linker. To use it, you will first need to apply
the patches in freefall:/home/dfr/ld.diffs to your ld sources and set
BINFORMAT to aoutkld when linking the kernel.

Library changes and userland utilities will appear in a later commit.
1997-05-07 16:05:47 +00:00
Steve Passe 53850c2fb0 A *little* more descriptive test for options. 1997-05-06 18:24:17 +00:00
Doug Rabson 77e25db56d Add SMPHDRS to CLEANFILES instead of replacing its current value. 1997-05-06 14:29:56 +00:00
Joerg Wunsch 5a9714de76 This mega-commit brings the following:
. It makes cd9660 root f/s working again.
. It makes CD9660 a new-style option.
. It adds support to mount an ISO9660 multi-session CD-ROM as the root
  filesystem (the last session actually, but that's what is expected
  behaviour).

Sigh.  The CDIOREADTOCENTRYS did a copyout() of its own, and thus has
been unusable for me for this work.  Too bad it didn't simply stuff
the max 100 entries into the struct ioc_read_toc_entry, but relied on
a user supplied data buffer instead. :-(  I now had to reinvent the
wheel, and created a CDIOREADTOCENTRY ioctl command that can be used
in a kernel context.

While doing this, i noticed the following bogosities in existing CD-ROM
drivers:

wcd:	This driver is likely to be totally bogus when someone tries
	two succeeding CDIOREADTOCENTRYS (or now CDIOREADTOCENTRY)
	commands with requesting MSF format, since it apparently
	operates on an internal table.

scd:	This driver apparently returns just a single TOC entry only for
	the CDIOREADTOCENTRYS command.

I have only been able to test the CDIOREADTOCENTRY command with the
cd(4) driver.  I hereby request the respective maintainers of the
other CD-ROM drivers to verify my code for their driver.  When it
comes to merging this CD-ROM multisession stuff into RELENG_2_2 i will
only consider drivers where i've got a confirmation that it actually
works.
1997-05-04 15:24:23 +00:00
Peter Wemm 1cde3a7e02 add net/if_media.c 1997-05-03 21:06:00 +00:00
Steve Passe 7f7578c815 removed:
opt_smp_invltlb.h
from:
SMPHDRS=        opt_smp.h opt_smp_invltlb.h

SMP_INVLTLB is no longer a valid config option, the invalidation of the TLB
via inter-CPU IPIs is now standard when APIC_IO is used.
1997-04-30 21:54:01 +00:00
Bruce Evans 035e8553c0 Fixed the SMP fixes:
- fixed dependencies so that `make depend' isn't necessary.
- added new files to CLEANFILES.
- fixed style.
1997-04-30 20:56:37 +00:00
Andrey A. Chernov ba11dfa74c bugfix: 'make depend' cause all LKMs rebuild 1997-04-30 06:04:17 +00:00
KATO Takenori 1a0345d543 Synchronize with sys/i386/conf/options.i386 and sys/i386/isa/wd.c
revisions 1.43 and 1.129, respectively.
1997-04-29 03:15:47 +00:00
Stefan Eßer 862b403b04 Move CMD640 option from kernel Makefile into opt_wd.h
Submitted by:		Wolfgang Helbig <helbig@mx.ba-stuttgart.de>
1997-04-28 19:26:18 +00:00
KATO Takenori 9a2660b252 Synchornize with sys/i386/conf/options.i386 revision 1.42. 1997-04-28 15:49:55 +00:00
KATO Takenori 4c59a618e7 Synchronize with sys/i386/conf/Makefile.i386 revision 1.95. 1997-04-28 15:48:49 +00:00
Steve Passe 2b45006334 remove the SMP_INVLTLB option, making the code default for APIC_IO.
Reviewed by:	informal discussion with Peter Wemm <peter@spinner.DIALix.COM>
1997-04-28 00:24:28 +00:00
Steve Passe 066da549d4 Submitted by: Wolfgang Helbig <helbig@MX.BA-Stuttgart.De>
make world fails when it tries to build LKMs because the files
	opt_smp.h
	opt_smp_invltbl.h
are missing.

This patch to /usr/src/share/mk/bsd.kmod.mk is a temporary workaround.

Note that LKMs built in this way may or may NOT work properly with an
SMP kernel.
1997-04-28 00:02:22 +00:00
Peter Wemm d061973c76 Create a special option file "opt_global.h" which is included by all
source files via a 'cc -include opt_global.h ...' type arrangement.
This means we can untangle certain header files.

options.i386 has a placeholder until it has a real member so we can avoid
having to teach config about it just yet.

Reviewed by: bde
1997-04-27 20:01:47 +00:00
KATO Takenori e1ee467aaf Merge SMP code from IBM-PC tree into PC-98 tree. 1997-04-27 13:22:09 +00:00
Peter Wemm 477a642cee Man the liferafts! Here comes the long awaited SMP -> -current merge!
There are various options documented in i386/conf/LINT, there is more to
come over the next few days.

The kernel should run pretty much "as before" without the options to
activate SMP mode.

There are a handful of known "loose ends" that need to be fixed, but
have been put off since the SMP kernel is in a moderately good condition
at the moment.

This commit is the result of the tinkering and testing over the last 14
months by many people.  A special thanks to Steve Passe for implementing
the APIC code!
1997-04-26 11:46:25 +00:00
KATO Takenori aae8fb345f Synchronize with sys/i386/conf/Makefile.i386, sys/i386/i386/machdep.c
and sys/i386/isa/npx.c revisions 1.94, 1.238 and 1.41, respectively.
1997-04-22 12:20:50 +00:00
John Polstra 9081eec1fb Make the necessary changes so that an ELF kernel can be built. I
have successfully built, booted, and run a number of different ELF
kernel configurations, including GENERIC.  LINT also builds and
links cleanly, though I have not tried to boot it.

The impact on developers is virtually nil, except for two things.
All linker sets that might possibly be present in the kernel must be
listed in "sys/i386/i386/setdefs.h".  And all C symbols that are
also referenced from assembly language code must be listed in
"sys/i386/include/asnames.h".  It so happens that failure to do
these things will have no impact on the a.out kernel.  But it will
break the build of the ELF kernel.

The ELF bootloader works, but it is not ready to commit quite yet.
1997-04-22 06:55:47 +00:00
KATO Takenori 6cf4f7c45c Synchronize with sys/i386/conf/files.i386 revision 1.159. 1997-04-15 11:43:10 +00:00
Justin T. Gibbs c1aa7eb5f4 GENERIC, LINT:
Add an ie entry that corresponds to the location the old ix entry used
to probe and kill the ix entry.

files.i386:
Remove entries for the ix driver.
1997-04-14 00:35:25 +00:00
Jordan K. Hubbard 6eb5e456f1 Support GLOBAL style tags. 1997-04-13 06:44:25 +00:00
KATO Takenori 5eba6c71a9 Enables lnc driver on PC-98 to support NEC SV-98/2-B06 PCI card.
Cascade mode of DMA is disabled when PC98 is defined because PC-98
doesn't support it.
1997-04-08 10:33:24 +00:00
Bruce Evans 9546766a1b Documented new serial console flags.
Removed dead serial console options.

Reorganised sio and serial console options.

Added undocumented options CLUSTERDEBUG and NPX_DEBUG.
1997-04-07 01:26:34 +00:00
KATO Takenori c749b25885 Synchronize with sys/i386/conf/options.i386 revision 1.39. 1997-04-05 15:06:30 +00:00
Bruce Evans 8e71151378 Moved COMCONSOLE, CONADDR and CONUNIT to defunct options. 1997-04-05 13:21:08 +00:00
KATO Takenori 8c5ac22f9b Synchronize with sys/i386/confi/files.i386 revision 1.158. 1997-04-03 09:55:26 +00:00
Justin T. Gibbs d98667394d make obj before building the aic7xxx assembler. This puts the object
files in the right place.

The clean rule still isn't quite right since currently config doesn't
allow the specification of arbitrary clean rules.
1997-04-03 05:57:16 +00:00
Poul-Henning Kamp 3d4d8fe94d Sanitize APM a bit. Convert various #ifdef to id_flags instead.
You may want to add "flags 0x31" to apm0 if you have a lousy
implementation.  Read LINT.
1997-03-29 11:07:12 +00:00
Andrey A. Chernov 5fba67d120 Add "conflicts" to sbmidi0 since configured irq passed back to isa
and conflict with sb0 irq.

NOTE: existen configurations require "conflicts" adding to sbmidi0 now
1997-03-26 17:46:03 +00:00
Andrey A. Chernov 348a8a6aab Add "conflicts" to sbxvi0 since all information now passed to isa
and conflict with sb0 happens.

NOTE: it affects existen configurations, add "conflicts" to sbxvi0 line
if you see probe error
1997-03-26 17:20:24 +00:00
Joerg Wunsch 5be8af9286 Bring the dev/pdq entries into alphabetical order.
Forgotten by:	joerg :)
1997-03-26 17:00:36 +00:00
Andrey A. Chernov add8f4123b Don't trick with opl0 address since we have conflicts keyword 1997-03-26 16:10:43 +00:00
Andrey A. Chernov 0baa5ad9b2 Use port? for sbxvi0 since it is autoconfigured from sb0
Change sb0 irq from 7 to 5 since 5 is Creative default now.
1997-03-25 03:38:33 +00:00
KATO Takenori 507cf9c96e Merge PC-98 code int i386/isa/ft.c. 1997-03-24 07:20:35 +00:00
KATO Takenori 56be183376 Created new section `CPU OPTIONS'. CPU classes and math emulator are
moved to there.  Options for CPU feature is also described there.
1997-03-23 11:08:28 +00:00
KATO Takenori 4c024bbdf8 Improved CPU identification and initialization routines. This
supports All Cyrix CPUs, IBM Blue Lightning CPU and NexGen (now AMD)
Nx586 CPU, and initialize special registers of Cyrix CPU and msr of
IBM Blue Lightning CPU.

If revision of Cyrix 6x86 CPU < 2.7, CPU cache is enabled in
write-through mode.  This can be disabled by kernel configuration
options.

Reviewed by:	Bruce Evans <bde@freebsd.org> and
            	Jordan K. Hubbard <jkh@freebsd.org>
1997-03-22 18:54:54 +00:00
Mike Pritchard 35846a8163 Typo police. 1997-03-20 16:33:15 +00:00
KATO Takenori 2f284f07f8 Synchronize with sys/i386/conf/files.i386 revision 1.156. 1997-03-19 16:14:25 +00:00
David E. O'Brien c85cfdb229 typo (nthe --> the) 1997-03-19 02:59:02 +00:00
Justin T. Gibbs 34564ce31e Make this whitespace compatible with the change that I correctly committed
to the 2.2 branch for the new aic7xxx assembler.
1997-03-16 19:06:45 +00:00
Bruce Evans 54c4d30615 Fixed broken line continuation in the previous revision. Config apparently
has buggy backslash-newline handling.  Avoid it by using whitespace before
backslash-newline.
1997-03-16 17:25:53 +00:00
Bruce Evans 0617e8fdf6 Fixed missing line-continuation backslash in the previous revision. 1997-03-16 17:14:04 +00:00
Justin T. Gibbs 8733b9a7ca Adapt build rules to new aic7xxx seqeuncer assembler. 1997-03-16 07:09:01 +00:00
Justin T. Gibbs 2edd1d6696 Add depend rule for the now compile time generated aic7xxx register file. 1997-03-16 06:52:27 +00:00
Bruce Evans 25292acb24 Updated comment about npx0.
Added obsolete option GATEWAY so that kern_opt.c gets tested.

Added undocumented options LOCKF_DEBUG and SIMPLELOCK_DEBUG so
that these options get tested.  The addition of LOCKF_DEBUG shows
that all of kern/kern_lockf.c shouldn't have been moved from ufs.
The debugging parts are very fs-dependent.
1997-03-13 19:23:27 +00:00
KATO Takenori 904385e65b Synchornize with sys/i386/conf/options.i386 revision 1.37. 1997-03-13 17:04:23 +00:00
Stefan Eßer 2928e6b5fd Add option CMD640 which is required to use both channels of that
EIDE chip
1997-03-12 19:11:59 +00:00
Stefan Eßer f5cd278ca4 Add wdc_p.c for support of the CMD640 PCI EIDE chip. 1997-03-12 19:10:27 +00:00
Joerg Wunsch 1b0d314332 Since i don't see that anybody is implementing a more correct EISA
probing anytime soon, make EISA_SLOTS a fully supported option.  It's
required for the HP NetServer LC series machines.

Next stop: make dset(8) aware of it as well.
1997-03-12 17:41:35 +00:00
Poul-Henning Kamp fdc58e30da Add char#80 xdcp, assigned to Chris Ficklin <chris@serengeti.com> 1997-03-10 20:25:45 +00:00
Mark Murray a30c77e886 Move this files* entry for the Brooktree TV driver toi the right 'files*'. 1997-03-10 17:55:49 +00:00
Mark Murray 51e053d6cc Initial import of the Brooktree PCI-TV drivers. I have not tested
these, they may not even compile. I am importing them on behalf
of the submitters.
Submitted by:	amancio, smp
1997-03-10 06:38:26 +00:00
KATO Takenori 7f247c74a9 Synchronize with sys/i386/conf/options.i386 revision 1.36. 1997-03-01 11:06:41 +00:00
Bruce Evans 98d0a0b543 Removed nonexistent option PSM_NO_RESET. 1997-02-28 16:56:06 +00:00
Peter Wemm b97fa2ef50 Revert $FreeBSD$ to $Id$ 1997-02-22 14:13:04 +00:00
Peter Wemm 6875d25465 Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.
1997-02-22 09:48:43 +00:00
Satoshi Asami 1e0a4ffa26 Set RELDATE=300000. With the parallel version development, it has
become impractical to distinguish versions using "real" release dates, so
might as well make it correspond to real version number (-current is
on the 3.0 branch) so at least the feature increments are guaranteed to
be linear.

Silently approved by:	current list
1997-02-19 06:05:48 +00:00