Commit graph

7256 commits

Author SHA1 Message Date
Peter Dufault 6d9a8d3e8f I applied the wrong patch set. Back out anything associated
with the known bogus currtpriority.  This undoes the previous changes to
sys/i386/i386/trap.c, sys/alpha/alpha/trap.c, sys/sys/systm.h

Now we have the patch set approved by bde.

Approved by:	bde
2000-03-02 22:03:49 +00:00
Peter Dufault 383774c417 Patches that eliminate extra context switches in FIFO case.
Fixes p1003_1b regression test in the simple case of no RR and
FIFO processes competing.

Reviewed by:	jkh, bde
2000-03-02 16:20:07 +00:00
Brian S. Dean 2265d5e30d Reset the hardware debug registers when exec'ing a new image.
Reviewed by:	bde,jlemon
Approved by:	jkh
2000-02-28 19:48:51 +00:00
Marcel Moolenaar dba5ab6662 Fix accept(2) behavior in that accepted sockets don't inherit the
parents flags.

Note on the PR:
The PR contains another patch that's not being committed without
further background information. The PR stays open for now.

PR: 16946 (Victor A. Salaman <salaman@teknos.com>)
Prompted by: msmith
Indirect/implicit approval: jkh (shoot me if I'm wrong :-)
2000-02-28 18:58:59 +00:00
Bruce Evans ce7a637f11 Fixed configuration of fast interrupts for the isa cy driver. They were
an early newbus casualty.  The isa compatibility cruft turned out to be
well suited for this fix.

Approved by:	jkh
2000-02-28 07:52:22 +00:00
Brian Feldman 76e964f1f5 Fix a repetition typo about the settings the settings.
Submitted by:	Kris Dow <kris@vilnya.demon.co.uk>
2000-02-28 03:02:17 +00:00
Brian Feldman 60bfc3b09b Do some cleanups of the IPv6 stuff. This is a non-functional change.
Approved by:	jkh
2000-02-27 07:35:42 +00:00
Jordan K. Hubbard 0dab491675 Enable IPv6 support by default. 2000-02-26 22:09:31 +00:00
Matthew N. Dodd a535079a85 MCA is supported to some extent. Modify a comment that claims otherwise.
Approved by: 	jkh
2000-02-26 05:07:05 +00:00
Doug Rabson ac19291f35 Add a workaround to allow us to detect the second pci bus on an HP
Netserver LS/2.

Approved by: jkh
2000-02-23 20:25:06 +00:00
Jason Evans dd85920a4f Add the VFS_AIO config option and leave it off by default. Unless the
VFS_AIO option is specified, all aio-related syscalls return ENOSYS.

The aio code is very fragile right now, and is unsuitable for default
inclusion in a production shell box.

Approved by:	jkh
2000-02-23 07:44:25 +00:00
Brian S. Dean 80275388cb Fix an __asm operand constraint which broke the -O3 and -O0 builds.
Submitted by:	Seigo Tanimura <tanimura@freebsd.org>
Approved by:	jkh
2000-02-21 13:06:50 +00:00
Brian S. Dean de8050f9b8 Don't forget to reset the hardware debug registers when a process that
was using them exits.

Don't allow a user process to cause the kernel to take a TRCTRAP on a
user space address.

Reviewed by:	jlemon, sef
Approved by:	jkh
2000-02-20 20:51:23 +00:00
Nick Hibma 418a4537cf Update the documentation to reflect Bill Paul's latest changes. 2000-02-20 14:41:54 +00:00
Bruce Evans 90bb57afd9 Don't include <machine/ipl.h> in <sys/systm.h> in the i386 case. This
fixes some namespace pollution in general and breakage of modules that
aren't in the sys tree in particular (<machine/ipl.h> includes further
headers that aren't installed under /usr/include).

Reimplemented SPLASSERT() so that it is more machine independent and
less bloated and doesn't require the <machine/ipl.h> include spam.
In particular, don't assume that `cpl' can be printed using %08x
format.  The alpha arch doesn't even have `cpl'.  SPLASSERT() was
harmless on alphas because it isn't actually used.
2000-02-17 18:37:45 +00:00
Kazutaka YOKOTA 528b8853bb Make it clear that 'options XSERVER' is for pcvt and not for syscons.
Submitted by: Doug Barton <Doug@gorean.org>
Approved by: jkh
2000-02-16 04:27:04 +00:00
Jordan K. Hubbard 7db56b4c3e Add userconfig entries for the new atapi devices.
Submitted by:	Dan Papasian <bugg@bugg.strangled.net>
2000-02-15 18:33:25 +00:00
Matt Jacob a6dd44dea5 Add comments about 12160 options.
Approved: jkh
2000-02-15 01:08:27 +00:00
Peter Wemm e463cfe7b6 Fix is_splxxx() warnings when not compiled with INVARIANT_SUPPORT.
Approved by:	jkh
2000-02-14 06:11:53 +00:00
Doug Rabson 9a1498a435 Fix an uninitialised variable which affected probing on some machines.
Approved by: jkh
Reviewed by: gallatin
2000-02-13 09:49:05 +00:00
Peter Wemm 242c5536ea Clean up some loose ends in the network code, including the X.25 and ISO
#ifdefs.  Clean out unused netisr's and leftover netisr linker set gunk.
Tested on x86 and alpha, including world.

Approved by:	jkh
2000-02-13 03:32:07 +00:00
David E. O'Brien ed0010ed09 Document the support in the kernel for hardware debug registers on the
ix86 platform which allows for hardware watchpoints, etc...

Submitted by:	Brian Dean <brdean@unx.sas.com>
2000-02-12 18:33:54 +00:00
Andrew Gallatin da4009202a Allow allows peer pci buses which are directly connected to the RCC host pci
chipset to be probed & attached on newer Dell PowerEdge servers, such as
the 2400 and 4400.

Reviewed by: 	dfr, msmith, jlemon
Tested by:	hnokubi@yyy.or.jp (in a previous incantation)
Approved by:	jkh
2000-02-09 20:05:30 +00:00
Nick Hibma 4f2e8d6383 Add PCI Id's for i810 chipsets.
PR:		16517
Submitted by:	SAKIYAMA Nobuo <sakichan@lares.dti.ne.jp>
Approved by:	jhk
2000-02-07 12:50:33 +00:00
Nick Hibma 16422b76f1 Correctly handle suspend and resume in APM.
Up to now, errors from DEVICE_SUSPEND(root_bus) were ignored. The fix for
this problem (the introduction of defaults for device methods) has been
committed months ago by Doug Rabson.

Second, the suspended devices were not always properly resumed on error.

Third, swapped the order for calling restore hooks and restore methods, to
be in line with the cases above.

Reviewed by:	Doug Rabson
Approved by:	jhk
2000-02-06 14:57:05 +00:00
Jordan K. Hubbard 4a04162824 Clean up POSIX options, syncronize generics. 2000-02-04 07:02:53 +00:00
Bill Paul 6f76cb1e28 Add support for WEP (encryption) for silver and gold WaveLAN/IEEE turbo cards.
Also update wicontrol to enable/disable encryption, set WEP keys and set the
TX key index. Silver cards only have 40-bit keys. This is something of a quick
hack, but it works well enough for me to commit this from the LinuxWorld
exhibit floor.

The WEP support only shows up if you have a card that supports it.

Would have been approved by: jkh, if he hadn't wandered off somewhere
Approved in his place by: msmith, who's standing right here
2000-02-02 17:59:13 +00:00
Nick Sayer 651e921455 Avoid passing an uninitialized structure member to the real
READSUBCHANNEL ioctl. This makes vmware work with SCSI CDROM
drives.

Approved by:	jkh
2000-02-01 16:20:24 +00:00
Nick Hibma 764d1fc491 da0 -> da 2000-02-01 09:32:04 +00:00
Bruce Evans d02b52e7b5 Fixed longstanding brokenness of wddump() in LBA mode. LBA mode may now
be safe enough to recommend for working around the problem with CHS mode
normally being limited to 65536*16*63 sectors.

Fixed bitrot in related debugging code.

Fixed related style bugs.

Removed another vestige of bad144 support.
2000-01-30 07:58:14 +00:00
Peter Wemm 68b538c712 Remove 'conflicts' token - it has been effectively doing absolutely
nothing for quite some time.  The only thing that cared was userconfig,
but it was for one invisible device so we never saw it's effects.
2000-01-29 18:07:07 +00:00
Peter Wemm af88e209a2 Zap isa_device -> id_conflicts. The sole user of it (userconfig) never
actually used it since the only device that specified it (vga0) was marked
as "FLG_INVISIBLE" in userconfig and therefore never shown.

Suggested by:	bde
2000-01-29 18:01:10 +00:00
Peter Wemm 81bb901ed1 Add some more comments about sound card bridge devices and their
relationship with pcm and other things like newmidi.
2000-01-29 17:56:23 +00:00
Peter Wemm 6724519462 Allow the pnp and pci cards to be attached with just a 'device pcm' in
the user's config file.  Based on an idea/suggestion from Cameron (cg).

Change LINT to build newpcm instead of the old Voxware derived stuff.
That's much more useful in the longer term.
2000-01-29 17:28:48 +00:00
Peter Wemm ce253636bb Remove (commented out and marked as broken) pseudo-device tb. This was
added in rev 1.205 (october 1995).
2000-01-29 16:39:14 +00:00
Peter Wemm 690f85de65 Remove a bunch of unused (NO-OP) #if NFOO > 0 type includes and some
#include "foo.h" headers.
2000-01-29 16:17:36 +00:00
Peter Wemm e27c1addaa Remove #if NFOO > 0 (it's not required in most cases) and also where it
isn't used as a result, remove #include "foo.h".  Many of these drivers
still use NFOO for softc struct sizing etc however.
2000-01-29 16:00:34 +00:00
Peter Wemm cebf86fa3f Put a FYI in the compatability shims so that people are aware that they
are using an old unconverted driver.  Most (if not all) of the drivers
for common hardware are newbus these days.  However, we don't want
to encourage people to take the easy way out and write new drivers
using the shims.  This is just passive "encouragement".

Reviewed by:	phk
2000-01-29 15:37:36 +00:00
Peter Wemm 8f8e587948 Use config's conditional compilation rather than using #ifdefs that make
modular compilation harder.  I'm doing this because people seem to like
cut/pasting examples of bad practices in existing code.
2000-01-29 15:08:56 +00:00
Yoshinobu Inoue 210d0432a3 Add ip6fw.
Yes it is almost code freeze, but as the result of many thought, now I
think this should be added before 4.0...

make world check, kernel build check is done.

Reviewed by: green
Obtained from: KAME project
2000-01-29 13:54:44 +00:00
Peter Wemm 7b387768d7 Remove a workaround for a gas bug. It couldn't assemble a certain
lgdt instruction, but the binutils based one is fine and has been
for ages.
2000-01-29 13:51:17 +00:00
Peter Wemm edfd254255 Regen after pointing to the real setres[ug]id(). Remove dummy function.
(Note: getres[ug]id is still a dummy as it returns via pointers to a
 different sized integer and does need real wrappers.)
2000-01-29 12:45:36 +00:00
Peter Wemm 11247956d8 Use the real setres[ug]id(2) rather than dummy stubs. Newer glibc's
call this.
2000-01-29 12:43:29 +00:00
KATO Takenori 10d6e4904e Simplify messages of Pentium II, Pentium II Xeon, Celeron, Pentium III
and Pentium III Xeon CPUs.  If a CPU is one of Pentium II, Pentium II
Xeon and Celeron, the message is always "Pentium II/Pentium II
Xeon/Celeron".   If a CPU is one of Pentium III and Pentium III Xeon,
the message is always "Pentium III/Pentium III Xeon".
2000-01-29 07:49:02 +00:00
Bruce Evans 7b17f8ffbd Don't permit generation of non-physical disk addresses.
subr_diskmbr.c:
Don't "helpfully" enlarge our idea of the disk size to cover all the
primary slices.  Instead, truncate or discard slices that don't seem
to be on the disk.  The enlargement was a hack for disks that don't
report their size (e.g., MFM disks).  It is just wrong in general.

wd.c:
In CHS mode, limit the disk size so that cylinder numbers >= 65536
cannot occur.  This normally only affects disks larger than 33.8GB.
CHS mode accesses to addresses above the limit are now properly broken
(an error is returned instead of garbage for reads and disk corruption
for writes).

PR:		15611
Reviewed by:	readers of freebsd-bugs did not respond to a request
            	for review
2000-01-28 10:22:07 +00:00
Warner Losh 173c0f9f5c Mitigate the stream.c attacks
o Drop all broadcast and multicast source addresses in tcp_input.
o Enable ICMP_BANDLIM in GENERIC.
o Change default to 200/s from 100/s.  This will still stop the attack, but
  is conservative enough to do this close to code freeze.

This is not the optimal patch for the problem, but is likely the least
intrusive patch that can be made for this.

Obtained from: Don Lewis and Matt Dillon.
Reviewed by: freebsd-security
2000-01-28 06:13:09 +00:00
Jeroen Ruigrok van der Werven d3041acd16 Completely remove ATA_16BIT_ONLY, since this is done automatically
by the ata driver nowadays.

OK'd by:	sos,peter
2000-01-27 19:28:15 +00:00
Jeroen Ruigrok van der Werven 310430f93a Removed ATA_STATIC_ID and ATA_16BIT_ONLY from the undocumented
options section, since they are documented higher up in the
file.

Probably forgotten by:	sos
2000-01-27 17:41:38 +00:00
Kirk McKusick 7881bb5d5f Add soft updates to the set of things being tagged. Syntax cleanup. 2000-01-27 01:22:06 +00:00
Mike Smith a6291d5558 Correctly initialise the available IRQ numbers in the APIC_IO case.
IRQ 2 was being unilaterally disallowed, which is only appropriate if
the interrupt hardware is the traditional chained PIC arrangement.

Reviewed by:	tegge (in principle)
2000-01-26 01:32:51 +00:00
Doug Rabson 589672bd68 The ppc driver has moved to sys/isa. 2000-01-25 22:26:44 +00:00
Doug Rabson 98fc43f74a Convert pca driver to newbus and add PnP ids. 2000-01-25 21:58:43 +00:00
Doug Rabson a43a8fd704 Use device_printf() instead of device_print_prettyname(). 2000-01-25 21:39:20 +00:00
Peter Wemm ba6017903c Fix left over references to things like 'ata0' in comments.
Submitted by:	Jim Bloom <bloom@acm.org>
2000-01-25 18:56:41 +00:00
Bruce Evans b10e61549b Remove i8042.h. This file is an improvement on its successors, but it
has been unused for too long.
2000-01-25 11:16:16 +00:00
Bruce Evans be16a3aba0 Fixed the profiling version ALTENTRY(). Again. The previous version
didn't set up the frame pointer before calling mcount, and then jumped
to the wrong place in ENTRY() to defeat the point of the jump.
2000-01-25 09:01:55 +00:00
Peter Wemm d224cddc38 Copy i386/isa/atapi-cd.[ch] to a new name so that it doesn't have the
same object file (atapi-cd.o) as the ata drivers. I'd have called it
wcd.[ch], but there's already one of those in the Attic that we can't
clobber - the good names are taken.
Fix building so that it can be compiled into LINT alongside ata.

Requested by:	bde
2000-01-24 17:16:03 +00:00
Roger Hardiman cfa7b44621 Update to driver 2.07
Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>
2000-01-24 14:00:34 +00:00
Peter Wemm b33b19409d Remove a bunch of no-op "port ?" and "irq ?" declarations. 2000-01-24 08:49:24 +00:00
Peter Wemm 36cb9d91a7 Remove old specialix pre-newbus specialix driver. It lives on in
sys/dev/si now, including with a theoretically working eisa attachment.
2000-01-24 08:18:26 +00:00
Bruce Evans 13d4ed2caa Removed assignment to an "unused" variable that was removed in the
previous commit.  Building LINT didn't expose this bug, because the
assignment was in an ifdef that is too tangled for LINT to cover
properly.
2000-01-24 08:16:15 +00:00
Peter Wemm 2c469a0672 Remove isa compat shims for si. 2000-01-24 08:13:53 +00:00
Bruce Evans 621d865f30 Removed bogus quotes and unmangled related contractions.
"ktrace(1) syscall trace" -> "ktrace(1)".
2000-01-24 05:38:55 +00:00
Peter Wemm 90c55ca555 Sync NEWCARD a bit with GENERIC. Remove trailing '0' on unwired devices. 2000-01-23 18:31:19 +00:00
Peter Wemm 97608dbe74 Some formatting cleanups and remove comments about numbers of units that
were intended to head off confusion about the trailing '0'.
2000-01-23 18:30:35 +00:00
Peter Wemm 0d31b1798d Drop 'at ppbus?' and the trailing '0' from the ppbus children. 2000-01-23 14:46:20 +00:00
Peter Wemm 37973e862d I missed some trailing digits in a comment.
Submitted by:	asmodai
2000-01-23 14:34:38 +00:00
Peter Wemm c9953c3b9e Update GENERIC/LINT to leave out the useless digit at the end of pci
or other unwired devices.
2000-01-23 12:18:53 +00:00
Peter Wemm 1816634e49 Clean up some more loose ends..
isa_device->id_ri_flags and RI_FAST were not implemented and did nothing.
The two drivers that were mistakenly thinking this was working were
cy.c and loran.c - these should be converted to newbus.
GC (garbage collect) isa_device->id_alive
GC userconfig.c references to isa_device->id_scsiid (!).
2000-01-23 11:50:43 +00:00
Peter Wemm a8f8e0bd03 GC isa_device->id_reconfig - it's not referenced anywhere anymore.
GC reconfig_isadev() - it's not used anymore.
2000-01-23 11:26:49 +00:00
Warner Losh f0e4bd3f99 Add the two wireless pccard nics. 2000-01-23 04:29:17 +00:00
Boris Popov 5d94d71cd9 Allow if_ef driver to be compiled into kernel. 2000-01-23 03:35:11 +00:00
Wilko Bulte 29429dde38 updated comments 2000-01-21 20:19:18 +00:00
Archie Cobbs 22b6e04be8 Remove definition of the unimplemented "control" hook. 2000-01-21 01:39:40 +00:00
Jason Evans ed25321907 Move ENTRY and ALTENTRY definitions to asm.h where they belong.
Unbreak profiling.  Again.

Submitted by:	bde
2000-01-20 03:15:01 +00:00
Archie Cobbs 1b67001469 Fix an #ifdef that should have been and #ifndef.
Noticed by:	Hellmuth Michaelis <hm@hcs.de>
2000-01-20 01:49:45 +00:00
Jordan K. Hubbard 3b2d592ca2 Import simple driver for a parallel port radio clock which receives
the German legal time (commonly available in Europe).

Submitted by:	Sascha Schumann <sascha@schumann.cx>
2000-01-19 18:17:25 +00:00
Bill Fumerola 0b04a9eef3 Cast rman_get_virtual() to a vm_offset_t.
Submitted by:	msmith
2000-01-18 15:44:24 +00:00
Alfred Perlstein 28255f07ec unbreak (rv -> r), afaik what Mike intended, boots fine on my machine 2000-01-18 12:24:44 +00:00
Jordan K. Hubbard c5954134e4 Enable POSIX P1003_1B extentions by default; there's no reason I can see
not to class them with the SYSV extentions as "optional but damn useful".

Also desired by:	wollman
2000-01-18 07:52:12 +00:00
Mike Smith f6bf1bb672 Don't try to map memory resources into the kernel until they're actually
activated.  Some of the things that get listed as "resources" aren't
necessarily suited for this.

(This shouldn't be a problem for any driver that correctly passes
RF_ACTIVE)
2000-01-18 02:13:27 +00:00
Jeroen Ruigrok van der Werven 80756f7e69 Convert last examples of controller' to device'. 2000-01-16 09:37:18 +00:00
Jonathan M. Bresler f6a3d83f00 Add SPLASSERT() macro. SPLASSERT() compiles to a no-op
unless both "option INVARIANTS" and "options INVARIANT_SUPPORT"
        are defined in the kernel's config(8) file.

        SPLASSERT(expression, msg) used KASSERT to check that the
        expression is true, panic()ing the kernel otherwise.

Approved by: jkh
Reviewed by: jdp, dfr, phk, eivind and green
2000-01-16 02:10:21 +00:00
Tatsumi Hosokawa 5df7e2d6d1 Added "sn" and "pcic" entries to UserConfig. 2000-01-15 16:33:49 +00:00
Mark Newton e88c343da8 Pre-freeze cleanups: Conditionalize debugging writes on DEBUG_SVR4,
eliminate warnings, etc.

Note that svr4_setcontext() and svr4_getcontext() currently don't work
correctly, which makes returning from signal handlers somewhat problematic
(for reference:  the SysVR4 setcontext() and getcontext() syscalls behave
like a low-level version of setjmp() and longjmp(), in that they save and
restore process context.  SysVR4 uses this to implement its signal handler
trampoline:  The context which is saved before a signal handler is called
is restored by an implicit call to the setcontext() syscall when the signal
handler returns.  That currently doesn't work right in this emulator,
although it used to).

I'm committing this anyway, with a caveat that it's buggy, so that I can
(a) note the bug for anyone who is wondering about it, and (b) get the
stuff I've done to improve (but not fix) the situation in the tree before
4.0 is released.  If I have time to fix it totally RSN I'll talk to Jordan
to see if I can bend him into letting me commit a bugfix :-)

Note that the situation now is somewhat better than it was yesterday
anyway, because I've fixed the handling of svr4_sigsets which previously
was causing signal handlers to not get called at all.  Stay tuned for
an upcoming commit to svr4_signal.c...
2000-01-15 15:29:37 +00:00
Mark Newton bbe23e1d7c Include #warning about unconditionalizing VM86, which isn't supposed to work
in the svr4 emulator yet.
2000-01-15 15:23:14 +00:00
Matt Jacob 8904e70b83 Add reference to SES device (it won't be in GENERIC unless folks clamor
for it). Document it's only option.
2000-01-15 07:46:39 +00:00
Seigo Tanimura 25b734e7ee A processor with the CPUID of 0x?8? is Pentium III.
(aka Coppermine)

Noticed by:	Satoshi Sawada <k-sawata@gnoc2.comminet.or.jp>
Reviewd by:	Takuma Yamada <fuzzy2@st.rim.or.jp>
2000-01-15 06:29:03 +00:00
Tatsumi Hosokawa 2a37f70f26 Removed PCCARD config file again.
(PCCARD support has been merged into GENERIC config file)
2000-01-15 03:45:22 +00:00
Bill Paul 261b9b3066 Add driver support for the Aironet 4500/4800 series wireless 802.11
NICs. (Finally!) The PCMCIA, ISA and PCI varieties are all supported,
though only the ISA and PCI ones will work on the alpha for now.
PCCARD, ISA and PCI attachments are all provided. Also provided an
ancontrol(8) utility for configuring the NIC, man pages, and updated
pccard.conf.sample. ISA cards are supported in both ISA PnP and hard-wired
mode, although you must configure the kernel explicitly to support the
hardwired mode since you have to know the I/O address and port ahead
of time.

Special thanks to Doug Ambrisko for doing the initial newbus hackery
and getting it to work in infrastructure mode.
2000-01-14 20:41:03 +00:00
Luoqi Chen 768d9eee10 Remove pre-CAM aic driver. Support for apm, pccard and pc98 has yet to
be incorporated into the new CAM driver.
2000-01-14 14:18:00 +00:00
Sheldon Hearn ade4d795c2 Protect the i386 machine-dependant type definitions of __int64_t
and __uint64_t from lint(1) with /* LONGLONG */ comments.
2000-01-14 10:41:39 +00:00
Peter Wemm a7c517ceaf Add back the 'at ppbus?' for the lpt etc drivers. Now it's used. 2000-01-14 08:16:28 +00:00
Peter Wemm c5191a983c Pre 4.0 tidy up.
Collect together the components of several drivers and export eisa from
the i386-only area (It's not, it's on some alphas too).  The code hasn't
been updated to work on the Alpha yet, but that can come later.

Repository copies were done a while ago.
Moving these now keeps them in consistant place across the 4.x series
as the newbusification progresses.

Submitted by:   mdodd
2000-01-14 07:14:17 +00:00
Peter Wemm a9d565fcd2 Don't do device_set_desc() until after checking for PnP probes. Otherwise
things like sound cards can get called "Parallel port".  A note to the
unwary; the isa-pnp devices in the system are probed like PCI - each
device ID is passed to *all* isa probe routines to find the best match.
If the driver is not prepared to deal with this, it must abort in this
scenario or it will try and claim all PnP devices.
2000-01-14 05:03:23 +00:00
Bill Paul 0177987224 Add device driver support for USB ethernet adapters based on the CATC
USB-EL1202A chipset. Between this and the other two drivers, we should
have support for pretty much every USB ethernet adapter on the market.
The only other USB chip that I know of is the SMC USB97C196, and right
now I don't know of any adapters that use it (including the ones made
by SMC :/ ).

Note that the CATC chip supports a nifty feature: read and write combining.
This allows multiple ethernet packets to be transfered in a single USB
bulk in/out transaction. However I'm again having trouble with large
bulk in transfers like I did with the ADMtek chip, which leads me to
believe that our USB stack needs some work before we can really make
use of this feature. When/if things improve, I intend to revisit the
aue and cue drivers. For now, I've lost enough sanity points.
2000-01-14 03:14:49 +00:00
Nicolas Souchu 0f210c922b Port of ppbus standalone framework to the newbus system.
Note1: the correct interrupt level is invoked correctly for each driver.
       For this purpose, drivers request the bus before being able to
       call BUS_SETUP_INTR and BUS_TEARDOWN_INTR call is forced by the ppbus
       core when drivers release it. Thus, when BUS_SETUP_INTR is called
       at ppbus driver level, ppbus checks that the caller owns the
       bus and stores the interrupt handler cookie (in order to unregister
       it later).

       Printing is impossible while plip link is up is still TRUE.
       vpo (ZIP driver) and lpt are make in such a way that
       using the ZIP and printing concurrently is permitted is also TRUE.

Note2: specific chipset detection is not done by default. PPC_PROBE_CHIPSET
       is now needed to force chipset detection. If set, the flags 0x40
       still avoid detection at boot.

Port of the pcf(4) driver to the newbus system (was previously directly
connected to the rootbus and attached by a bogus pcf_isa_probe function).
2000-01-14 00:18:06 +00:00
Matthew N. Dodd d09cfe6b93 Remove old copy of if_ed.c; it is no longer used. 2000-01-13 09:30:18 +00:00
Matthew N. Dodd de9cfdd736 Allow SMP systems with an MCA bus to work properly.
Reviewed by:	peter
2000-01-13 09:09:02 +00:00
Matthew N. Dodd 919886a01f Correctly test CF. 2000-01-13 08:49:47 +00:00
Matthew N. Dodd 1f3e0d3de8 Remove the 'at isa? ...' bits for ex0.
Remove the confusing text about pccard and unit numbers for ep0.
2000-01-13 07:01:13 +00:00
Matthew N. Dodd 6b84907d69 Cosmetic cleanups. 2000-01-13 06:55:35 +00:00
Matthew N. Dodd a0f5c15f22 Implement a DEVICE_IDENTIFY method. I want to revisit some of this later
but this is enough to get us going.
2000-01-13 06:52:51 +00:00
Matthew N. Dodd b5e3bc2086 When I converted this driver to newbus I also cleaned up the code
layout.  It seems that I cleaned it up a bit too much and confused a few

if () {
	if () {
	} else {
	}
}

statements in the obvious manner.

This allows the driver to transmit packets again.  *sigh*
2000-01-13 06:46:02 +00:00
David E. O'Brien c201f69bed Sort. 2000-01-12 02:30:42 +00:00
Bill Paul 8647d85ac3 Correctly set the data length when transmitting 802.3 frames (we need to
subtract the length of the SNAP header).
2000-01-12 00:57:27 +00:00
Kazutaka YOKOTA 35e61cbd71 Add a new mechanism, cndbctl(), to tell the console driver that
ddb is entered.  Don't refer to `in_Debugger' to see if we
are in the debugger.  (The variable used to be static in Debugger()
and wasn't updated if ddb is entered via traps and panic anyway.)

- Don't refer to `in_Debugger'.
- Add `db_active' to i386/i386/db_interface.d (as in
  alpha/alpha/db_interface.c).
- Remove cnpollc() stub from ddb/db_input.c.
- Add the dbctl function to syscons, pcvt, and sio. (The function for
  pcvt and sio is noop at the moment.)

Jointly developed by: bde and me

(The final version was tweaked by me and not reviewed by bde.  Thus,
if there is any error in this commit, that is entirely of mine, not
his.)

Some changes were obtained from: NetBSD
2000-01-11 14:54:01 +00:00
Marcel Moolenaar 0484ef81d9 Update syscalls to Linux kernel 2.3.38. These syscalls are
implemented as dummies to ease problem solving.
2000-01-10 22:19:06 +00:00
Marcel Moolenaar 20ebea30eb Update the syscalls to Linux kernel 2.3.38. 2000-01-10 22:16:35 +00:00
Marcel Moolenaar 759eb4613e Return Linux kernel version 2.2.12 by default. This is in line
with linux_base-6.1.
2000-01-10 13:09:08 +00:00
Poul-Henning Kamp 86807e1622 Remove controller miibus, there already were a device miibus. 2000-01-10 12:06:32 +00:00
Warner Losh 89ce66ed87 Uncomment pcic device and put pccard in GENERIC. PCCARD will be removed
in a little while as soon as I find all the places it is used in the
tree.
2000-01-10 02:29:23 +00:00
David E. O'Brien 5e93c21150 * Add `sym' SCSI driver options.
* bring in NIC comments from GENERIC
* slightly reorder a few things in an feable attempt at making the
  organization of LINT more logical.
2000-01-09 23:33:38 +00:00
Bruce Evans c83b1328f1 Fixed style bugs related to the access functions for the bsfl and bsrl
i386 instructions.
2000-01-09 16:46:03 +00:00
Peter Wemm d2b1bc7312 Put on my asbestos suit and move $mach/conf/*.$mach to conf/*.$mach as
hinted at in the previous config(8) commits.  I've spoken about this with
a few people and after the initial suprise wore off they thought it wasn't
a bad idea.  The upshot of it is that all the files*, Makefile*, options*
files are all right next to each other in the hope that people making
changes to one set will remember the others.

Note, config(8) looks to sys/conf first, and falls back to sys/$mach/conf
still, so this doesn't stop people working in subdirs for new platforms.
But once it's in the tree it can be moved next to the other files so that
the non-i386 platforms are (hopefully) treated a little better than as if
they were "second class" ports.

This does not change any user editable files.  the config program is
still run in the same directory as before, the per-platform files
(GENERIC, LINT etc) are still in the same place.
2000-01-09 15:29:10 +00:00
Bruce Evans b7d1b97726 Removed defunct options EXTRA_SIO and KEY_DEBUG. 2000-01-09 14:47:38 +00:00
KATO Takenori 070e9ce61b Changed MACHINE -> MACHINE_ARCH to make the i386-kernel be able to
compiled on PC98.
2000-01-09 14:43:47 +00:00
Bruce Evans 4100386cb1 Put COMPAT_SVR4 in opt_dontuse.h for the same reasons as IBCS2 and
COMPAT_LINUX are there.  It shouldn't be and isn't used after config
time, except to complicate the svr4 module makefile.

Moved options for emulators to a separate section.
2000-01-09 10:58:39 +00:00
Bruce Evans 9e8c2fbfa0 Fixed a missing forward declaration. I don't know why I though the
declaration of `struct proc' in svr4_genassym.c was unused.  It was
just misplaced.
2000-01-09 09:57:19 +00:00
Bruce Evans 68b683dc58 Compile *_genassym.c with ordinary ${CFLAGS}. The (small) needs for
-U_KERNEL became negative when all all the genassym.c's were converted
to be cross-built.  Related cleanups: PARAM went away, but was still
used here; KERNEL was renamed to _KERNEL, but was still KERNEL here;
the deprecated macros $@ and $< were still used here.

Use "genassym ... > ${.TARGET}", not "genassym -o $@ ...", so that
genassym(1) doesn't need to support -o.

Removed half-baked hard-coded dependencies of *_genassym.o on headers.
These objects should be added to the list of objects in the depend
rule to get full dependencies.  This doesn't happen automatically
because they are not linked into the kernel.  Half baked dependencies
don't really help.
2000-01-09 08:24:27 +00:00
Bruce Evans cfb95261b1 Quick fix for LINT breakage. KERNFORMAT went away, so don't use it
for trlld.o.
2000-01-09 07:50:42 +00:00
Peter Wemm 58fa7951a2 Bump configversion. The controller/device changes are upwards but not
downwards compatable.  If you try and config a s/controller/device/ kernel
with an old config(8), the results will be less than satisfactory.
2000-01-09 07:10:27 +00:00
Marcel Moolenaar dca60efcc9 Convert the filesystem type returned in struct statfs by syscalls
linux_statfs and linux_fstatfs. Linux binaries testing this expect
the filesystem's magic number and not our vnode's tag.

PR: 15425
Tested by: Vladimir N. Silyaev <vsilyaev@mindspring.com>
2000-01-08 21:09:41 +00:00
Bruce Evans 7190c15a73 Include <stddef.h> here so that <sys/assym.h> can be unpolluted.
Include <sys/param.h> before <sys/assym.h> in case any of the magic
in the former is ever needed in the latter.

Removed an unused forward declaration and an unused include.
2000-01-08 19:56:03 +00:00
Bruce Evans 7eed718873 Include <stddef.h> here so that <sys/assym.h> can be unpolluted.
Include <sys/param.h> before <sys/assym.h> in case any of the magic
in the former is ever needed in the latter.
2000-01-08 19:53:18 +00:00
Peter Wemm a052e7173c config(8) doesn't know anything about scsi devices like it used to, remove
the misleading comments to that effect.
Prune bogus 'at foo?' (smbus, iicbus, ppbus) appendages on things that
they are meaningless for.  It was just eye candy and wasn't used by
anything in the tree.  The interconnects were defined by the drivers
themselves and auto discovery.
(The new ppbus code may change this if it uses the resource_get_*() calls
 to find it's configured children if self discovery isn't possible)
2000-01-08 17:51:33 +00:00
Peter Wemm f31f62f872 Further sync Alpha and i386 Makefiles. Remove KERNFORMAT = elf stuff as
it's always true on these platforms (and is likely to be on others as
well since loader is the one that is configured for whatever the boot
requirements are)
2000-01-08 17:31:35 +00:00
Peter Wemm 0909397395 genassym is ELF-only, therefore the kernel is now ELF-only as well. 2000-01-08 17:12:15 +00:00
Peter Wemm 8ab2eee110 Sync the sym0 description while here. It doesn't conflict with ncr0
and is enabled in GENERIC.
2000-01-08 16:19:33 +00:00
Peter Wemm cecc952452 s/controller/device/ as per config(8) changes 2000-01-08 16:17:41 +00:00
Peter Wemm 70c43495f8 s/controller/device/ as per config(8) 2000-01-08 16:03:57 +00:00
Peter Wemm 62d128b859 s/controller/device/ as per config(8) changes 2000-01-08 15:59:12 +00:00
Bruce Evans c453bba744 Compile genassym.c with ordinary ${CFLAGS}. The (small) needs for
${GEN_CFLAGS} and -U_KERNEL became negative when all all the
genassym.c's were converted to be cross-built.

Makefile.*:
- Cleanups associated with the old genassym.
- Fixed deprecated spelling of ${.IMPSRC} as "$<".
2000-01-08 15:52:22 +00:00
Peter Wemm 4a1e4cb727 Clean up the cfgmech/pci_mechanism debris. The reason for the existance
of this is no longer an issue as we have a replacement driver for the
one that needed it.

Reviewed by:	dfr
2000-01-08 08:31:24 +00:00
Bill Paul d04bb221f3 Add the vendor and device IDs for a whole bunch of additional USB
ethernet adapters that are supported by the aue and kue drivers.
There are actually a couple more out there from Accton, Asante and
EXP Computer, however I was not able to find any Windows device
drivers for these on their servers, and hence could not harvest
their vendor/device ID info. If somebody has one of these things
and can look in the .inf file that comes with the Windows driver,
I'd appreciate knowing what it says for 'VID' and 'PID.'

Additional adapters include: the D-Link DSB-650 and DSB-650TX, the
SMC 2102USB, 2104USB and 2202USB, the ATen UC10T, and the Netgear EA101.
These are all mentioned in the man pages, relnotes and LINT.

Also correct the date in the kue(4) man page. I wrote this thing
on Jan, 4 2000, not 1999.
2000-01-07 22:18:49 +00:00
Mark Newton 6e2972b825 Changes as suggested by bde
Submitted by:	bde
2000-01-07 14:41:12 +00:00
Marcel Moolenaar 3abe5082ad Use genassym(1). The definitions of NKPDE and NKPT have been removed
because they are already defined in pmap.h, resulting in duplicate
definitions.

Reviewed by: bde
2000-01-07 11:50:46 +00:00
Luoqi Chen 5c8b298e0e Allow SMP && NCPU == 1 to work. From now on, there's no restriction on the
value of NCPU relative to the number of cpus physically present, the actual
number of cpus utilized will be the smaller of the two.
2000-01-07 08:49:25 +00:00
Peter Wemm 31f723c7bc Bring the Alpha and x86 Makefiles closer together. 2000-01-07 05:12:12 +00:00
Warner Losh 46121c1271 FDC_YE has been removed as a valid option.
Noticed by: bde
2000-01-06 16:45:56 +00:00
Mark Newton 0e741a5b5b Add documentation for SVR4 options in LINT. 2000-01-05 21:41:16 +00:00
Mark Newton d5b0df04b2 Unbreak LINT -- typedefs from signal.h are needed to make prototypes in
this file make sense.
2000-01-05 21:28:46 +00:00
Bill Paul dfd1e98eac Add device driver support for USB ethernet adapters based on the
Kawasaki LSI KL5KUSB101B chip, including the LinkSys USB10T, the
Entrega NET-USB-E45, the Peracom USB Ethernet Adapter, the 3Com
3c19250 and the ADS Technologies USB-10BT. This device is 10mbs
half-duplex only, so there's miibus or ifmedia support. This device
also requires firmware to be loaded into it, however KLSI allows
redistribution of the firmware images (I specifically asked about
this; they said it was ok).

Special thanks to Annelise Anderson for getting me in touch with
KLSI (eventually) and thanks to KLSI for providing the necessary
programming info.

Highlights:
- Add driver files to /sys/dev/usb
- update usbdevs and regenerate attendate files
- update usb_quirks.c
- Update HARDWARE.TXT and RELNOTES.TXT for i386 and alpha
- Update LINT, GENERIC and others for i386, alpha and pc98
- Add man page
- Add module
- Update sysinstall and userconfig.c
2000-01-05 04:27:24 +00:00
Matthew Dillon eb6088c84d Update some of the network driver documentation in the LINT file, which
is where most people look to match drivers up with cards.

Reviewed by:	wpaul
2000-01-04 23:09:42 +00:00
Tor Egge 82916a1126 ISA device drivers use the ISA source interrupt number in locations where
the low level interrupt handler number should be used.  Change
setup_apic_irq_mapping() to allocate low level interrupt handler X (Xintr${X})
for any ISA interrupt X mentioned in the MP table.

Remove an assumption in the driver for the system clock (clock.c) that
interrupts mentioned in the MP table as delivered to IOAPIC #0 intpin Y
is handled by low level interrupt handler Y (Xintr${Y}) but don't assume
that low level interrupt handler 0 (Xintr0) is used.

Don't allocate two low level interrupt handlers for the system clock.
Reviewed by:	NOKUBI Hirotaka <hnokubi@yyy.or.jp>
2000-01-04 22:24:59 +00:00
Matt Jacob b6ca8f5a13 add wx0 driver 2000-01-04 11:17:35 +00:00
Matt Jacob 9b8ea2242c Add in ISP_TARGET_MODE description. 2000-01-04 00:04:27 +00:00
Mark Newton ad20e57ae2 Add options for COMPAT_SVR4 and DEBUG_SVR4 for completeness. 2000-01-03 20:37:15 +00:00
Marcel Moolenaar e8c295abe6 Make offsetof equivalent with <stddef.h>. This paves the way for
further enhancements/reorganisations.

Discussed with: bde
2000-01-03 16:49:39 +00:00
Poul-Henning Kamp f8515dd800 Move the "sti" instruction to right before the "hlt" to close a tiny
race condition.

Obtained from:	bde and/or obrien
2000-01-02 15:18:12 +00:00
Hellmuth Michaelis a8d08723fb Implement scrollback for pcvt based on code submitted by
Aaron Campbell <aaron@cs.dal.ca>.

Use SHIFT-PgUp and SHIFT-PgDn to scroll back and forward.

Aarons original code was enhanced to have a separate scrollbuffer
for every virtual terminal and to preserve the screen contents
when switching screen sizes.

The scrollbuffer size is currently fixed at 8 pages but this
will be made configurable through the use of scon(1) in the
near future.

For pcvt_kbd.h, a longstanding compiler warning was fixed by
using excessive backetizing of the key2ascii[] table.
1999-12-30 16:17:11 +00:00
Peter Wemm 664a31e496 Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"
is an application space macro and the applications are supposed to be free
to use it as they please (but cannot).  This is consistant with the other
BSD's who made this change quite some time ago.  More commits to come.
1999-12-29 04:46:21 +00:00
Bill Paul ed63a7aaef This commit adds device driver support for the ADMtek AN986 Pegasus
USB ethernet chip. Adapters that use this chip include the LinkSys
USB100TX. There are a few others, but I'm not certain of their
availability in the U.S. I used an ADMtek eval board for development.
Note that while the ADMtek chip is a 100Mbps device, you can't really
get 100Mbps speeds over USB. Regardless, this driver uses miibus to
allow speed and duplex mode selection as well as autonegotiation.
Building and kldloading the driver as a module is also supported.

Note that in order to make this driver work, I had to make what some
may consider an ugly hack to sys/dev/usb/usbdi.c. The usbd_transfer()
function will use tsleep() for synchronous transfers that don't complete
right away. This is a problem since there are times when we need to
do sync transfers from an interrupt context (i.e. when reading registers
from the MAC via the control endpoint), where tsleep() us a no-no.
My hack allows the driver to have the code poll for transfer completion
subject to the xfer->timeout timeout rather that calling tsleep().
This hack is controlled by a quirk entry and is only enabled for the
ADMtek device.

Now, I'm sure there are a few of you out there ready to jump on me
and suggest some other approach that doesn't involve a busy wait. The
only solution that might work is to handle the interrupts in a kernel
thread, where you may have something resembling a process context that
makes it okay to tsleep(). This is lovely, except we don't have any
mechanism like that now, and I'm not about to implement such a thing
myself since it's beyond the scope of driver development. (Translation:
I'll be damned if I know how to do it.) If FreeBSD ever aquires such
a mechanism, I'll be glad to revisit the driver to take advantage of
it. In the meantime, I settled for what I perceived to be the solution
that involved the least amount of code changes. In general, the hit
is pretty light.

Also note that my only USB test box has a UHCI controller: I haven't
I don't have a machine with an OHCI controller available.

Highlights:

- Updated usb_quirks.* to add UQ_NO_TSLEEP quirk for ADMtek part.
- Updated usbdevs and regenerated generated files
- Updated HARDWARE.TXT and RELNOTES.TXT files
- Updated sysinstall/device.c and userconfig.c
- Updated kernel configs -- device aue0 is commented out by default
- Updated /sys/conf/files
- Added new kld module directory
1999-12-28 02:01:18 +00:00
Bruce Evans 654f6be1c8 Changed the type used to represent the user stack pointer from `long *'
to `register_t *'.  This fixes bugs like misplacement of argc and argv
on the user stack on i386's with 64-bit longs.  We still use longs to
represent "words" like argc and argv, and assume that they are on the
stack (and that there is stack).  The suword() and fuword() families
should also use register_t.
1999-12-27 10:42:55 +00:00
Peter Wemm e1f75a9fa6 Zap kvm_kernel.db stuff now that libkvm gets it directly from the running
kernel.
1999-12-27 07:17:51 +00:00
Seigo Tanimura fdba49eb7e Add support of SB for PC98 into VoxWare 3.5, and more $FreeBSD$.
Submitted by:		T.Yamaoka <taka@windows.squares.net>
Pressed to review by:	nyan
1999-12-27 04:37:19 +00:00
Bruce Evans 22ddeb4b77 Fixed stripping of aout debugging kernels.
Fixed some style bugs (always use precisely 1 space after `:' in
dependency specifications).
Removed bogus dependency of ${FULLKERNEL} on ${BEFORE_DEPEND}.
1999-12-26 17:07:15 +00:00
Bruce Evans 9bcde22f7a Don't include <isa/isavar.h> or compile code depending on it when isa
is not configured.  Including <isa/isavar.h> when it is not used is
harmful as well as bogus, since it includes "isa_if.h" which is not
generated when isa is not configured.
1999-12-26 16:21:19 +00:00
Bruce Evans ffd344ddbb Replaced the INTRMASK and INTRUNMASK macros by "|" and "&~" operations.
Some interface botches went away, leaving the macros unused outside of
the implementation of interrupt masking, and it was silly for the
implementation to use the macros in only one place each.
1999-12-26 12:43:47 +00:00
Bruce Evans 265cdeddb7 Fixed breakage of read-only opening of /dev/*mem at securelevel > 0 in
previous pair of commits.

Spell the "securelevel > 0" check consistently.

Use the proc arg instead of curproc in mmopen() and mmclose().
1999-12-26 11:44:45 +00:00
Bruce Evans 0f19e631e2 Fixed races accessing the RTC. The races apparently caused
apm_default_resume() to sometimes set a very wrong time.
(1) Accesses to the RTC index and data registers were not atomic enough.
    Interrupts were not masked.  This was only good enough until an
    interrupt handler (rtcintr()) started accessing the RTC in FreeBSD-2.0.
(2) Access to the block of time registers in inittodr() was not atomic
    enough.  inittodr() has 244us to read the time registers.  Interrupts
    were not masked.  This was only good enough until something (apm)
    started calling inittodr() after boot time in FreeBSD-2.0.
The fix for (2) also makes the timecounter update more atomic, although
this is currently unimportant due to the low resolution of the RTC.

Problem reported by:	mckay
1999-12-25 15:30:31 +00:00
Marcel Moolenaar a9d61af021 Update config rules for making {linux|svr4}_assym.h
Assembler symbols are now made using genassym(1).
1999-12-23 21:52:17 +00:00
Marcel Moolenaar 7ce77f279b Use genassym(1) and <sys/assym.h> to generate assembler symbols. 1999-12-23 21:19:32 +00:00
Marcel Moolenaar 00d6d49adc Use genassym(1) and <sys/assym.h> to generate assembler symbols. 1999-12-23 19:59:47 +00:00
Bruce Evans 58f9831e32 Removed vestiges of BAD144 support. 1999-12-23 17:52:00 +00:00
Bruce Evans aae2ba6305 Removed vestiges of BAD144 support.
Removed -mno-486 from CFLAGS since it is no longer supported by gcc.
1999-12-23 17:48:52 +00:00
Bill Paul b6219c623c Fix minor typo in comments about WaveLAN/IEEE driver: 802.1 -> 802.11 1999-12-23 05:32:53 +00:00
Yoshinobu Inoue 6a800098cc IPSEC support in the kernel.
pr_input() routines prototype is also changed to support IPSEC and IPV6
chained protocol headers.

Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
1999-12-22 19:13:38 +00:00
Warner Losh 3e356c0cb2 sn driver is no longer using isa_compat layer 1999-12-22 09:40:35 +00:00
David E. O'Brien 19b132d78b Turn on the sym' driver by default. It lives well beside the ncr' driver
now.  On one machine with <825a> and <875> controllers, `sym' correctly
attached.  On another one with only a <ncr 53c810 fast10 scsi>, the `ncr'
driver correctly attached.
1999-12-22 05:52:04 +00:00
Eivind Eklund 4c8d1f1d99 Use the correct return value for MCA NMIs.
Reviewed by:	mdodd
1999-12-21 18:13:02 +00:00
Seigo Tanimura c2f8aaa852 Correct the spelling and description of sbc. 1999-12-21 14:39:22 +00:00
Peter Wemm 5a81d0a50b Only compile gusc for isa (the #if NISA inside gusc effectively covers
the whole file)
1999-12-21 13:53:49 +00:00
Eivind Eklund 369dc8ceb8 Change incorrect NULLs to 0s 1999-12-21 11:14:12 +00:00
Eivind Eklund 6835a896e2 Lose explict initialization of mouse to {0}; this gave a warning, and the
implict initialization guaranteed by ISO C give the same result.
1999-12-21 08:29:35 +00:00
Eivind Eklund 74864123b0 GC unreferenced code (to avoid warnings) 1999-12-20 18:05:01 +00:00
Eivind Eklund 87164515e6 Eliminate unused variable 1999-12-20 17:54:05 +00:00
Peter Wemm ec6e462d78 Remove references to register_intr() etc in comments. 1999-12-20 15:11:31 +00:00
Peter Wemm c13a71596b Zap the old isa_device specific register_intr() and unregister_intr()
emulations.  Thankfully, nothing is left in the tree that uses them.
1999-12-20 15:01:23 +00:00
Sheldon Hearn db192fd1cd Complement the sum as required in in_cksum_finalize().
PR:		15472
Submitted by:	wollman
1999-12-20 12:11:34 +00:00
Warner Losh 60a3c2983d Merge changes from GENERIC into PCCARD (cdrom)
Merge changes from PCCARD into NEWCARD (cdrom and markm's comments)
1999-12-19 21:55:29 +00:00
Bill Fumerola 65bbe4e33a Borrow phk's axe and chop off the old soundcard-CDROM devices. We get
about 40k of savings from this, and these abominations are still in LINT
if anyone needs to use them.

Reviewed by:	jkh
1999-12-19 20:33:05 +00:00
Mark Murray 70c3f04993 Comment and order to reduce diffs. No functional change. 1999-12-19 17:12:19 +00:00
Brian Feldman f584c087d3 Allow LINT to build again.
The wd(4) family had to be disabled;  wd(4) and ata(4) are mutually
exclusive, even at link level.
1999-12-19 06:22:11 +00:00
Warner Losh 4e820cbe37 spell isa right on sn0 line 1999-12-18 07:49:54 +00:00
Warner Losh 89fb43157e Merge GENERIC into PCCARD
Merge PCCARD into NEWCARD
1999-12-18 07:47:34 +00:00
Warner Losh f8cf3008db Remove vestiages of now obsolete zp and ze drivers.
Forgotten by: phk
1999-12-18 06:27:31 +00:00
Warner Losh 22ffd22dbd Driver for the smc91xx series of ethernet chips. Ported from PAO to
3.3R and then to -current.  The pccard support has been left in the
driver, but is presently non-functional because we are using the
isa_compat layer for the moment.

Obtained From: PAO
Sponsored by: Timing Solutions
1999-12-18 06:11:22 +00:00
Peter Wemm 574b36f9b7 Be more consistant in using perl vs. perl5. We were using perl5 in the
kernel builds so as not to confuse with perl4 when bootstrapping from old
systems.  I don't know if this is still applicable but it shouldn't hurt
to be consistant at least.

Also copy vnode_if.sh to vnode_if.pl.  Doing a 'sh vnode_if.sh' when it
was a perl script was kinda silly.
1999-12-17 22:07:43 +00:00
Seigo Tanimura fb8e78a523 newpcm no longer requires 'controller pnp'. (And some other drivers?)
Noticed by:	julian
1999-12-17 02:31:36 +00:00
Eivind Eklund 762e6b856c Introduce NDFREE (and remove VOP_ABORTOP) 1999-12-15 23:02:35 +00:00
Tor Egge 8a125ca8fd Typo fix. 1999-12-15 19:17:08 +00:00
Hellmuth Michaelis b8fe6668ab update to isdn4bsd beta release 0.90: make LINT compile again, at least
one "device isic0 ..." line has to be uncommented.
1999-12-15 13:29:05 +00:00
Hellmuth Michaelis 0d5539074f update to isdn4bsd beta release 0.90: add ELSA PCC-16 isic support file 1999-12-15 13:27:12 +00:00
Hellmuth Michaelis c8bed05963 update to isdn4bsd beta release 0.90: since the isic drivers are now
new-busified, remove all isic traces from compatibility mode wrapper
1999-12-15 12:54:11 +00:00
Kazutaka YOKOTA 273157da59 - Add the device resume method. It supercedes the existing resume
routine which hooks the apm driver.
- Rename the PSM_HOOKAPM option to PSM_HOOKRESUME.
- Delete unnecessary #include.
1999-12-15 10:04:05 +00:00
Seigo Tanimura e3c439119a Add the description and example of sbc for non-PnP cards.
Noticed by:	Kentaro Inagaki <inagaki@tg.rim.or.jp>
1999-12-15 05:10:00 +00:00
Tor Egge 787749e519 apic_irq() returns -1 when there is no match for (IOAPIC, intpin) pair.
Adjust some comments to better match the code.
1999-12-15 01:14:56 +00:00
Hellmuth Michaelis a622c05e96 update to isdn4bsd beta release 0.90 1999-12-14 20:54:38 +00:00
Hellmuth Michaelis e5981bd1fd update to isdn4bsd beta release 0.90
drivers which are likely to be ported to newbus are commented out for now
1999-12-14 20:52:41 +00:00
Seigo Tanimura 4bfc6d7e79 Fix the command to launch DMA for 16bit samples.
Tested by:	Steve Reid <sreid@sea-to-sky.net>
1999-12-14 06:34:48 +00:00
Kazutaka YOKOTA 83c5d22d61 - Pull in kbd.c when sc or vt is included in the kernel, even if
no keyboard driver is defined in the kernel config file.
1999-12-13 13:01:00 +00:00
Peter Wemm 6f77b2defc Use a seperate -c and -h mode. The vnode_if.c file is compiled only into
the kernel while the vnode_if.h header is a bunch of inlines to call the
code that is in the kernel. Generating the .h file on the fly is kinda
bogus because it has to match the one compiled into the kernel.

IMHO we should have kern/vnode_if.c and sys/vnode_if.h committed in the
tree but that's another battle.
1999-12-12 16:43:05 +00:00
Peter Wemm bfc8775abb Turn on warnings for the wd* driver with a loud pointer to ata*. This
doesn't break builds, but is difficult to miss..
1999-12-12 14:31:40 +00:00
Peter Wemm 7ba4a77549 Reclaim UPAGES_HOLE (8k) that was chopped out of process address space.
The UPAGES have not been there since Jan '96, but the hole was preserved
for BSD/OS binary compatability.  This has been fixed other ways (%ebx
now has a pointer to PS_STRINGS), and the stack is nowhere near where
it used to be so this hack isn't required anymore.
1999-12-11 10:54:06 +00:00
Marcel Moolenaar af3a75ec0d Remove unused includes.
Found by: phk-scan
1999-12-10 12:36:20 +00:00
Poul-Henning Kamp 377ba88c06 Remove reference to ze and zp drivers. 1999-12-10 10:49:51 +00:00
Poul-Henning Kamp 5fe1db5b0a Remove the if_ze and if_zp drivers.
These drivers were cloned from the ed and ep drivers back in 1994
when PCMCIA cards were a very new thing and we had no other support
for such devices.  They treated the PCIC (the chip which controls the
PCCARD slot) as part of their device and generally hacked their way
to success.  They have significantly bit-rotted relative to their
ancestor drivers (ed & ep) and they were a dead-end on the evolution
path to proper PCCARD support in FreeBSD.

They have been terminally broken since August 18 where mdodd forgot
them and nobody seems to have missed them enough to fix them since.

I found no outstanding PRs against these drivers.
1999-12-10 10:45:11 +00:00
Poul-Henning Kamp f8c8918755 Remove the B_BAD buffer flag, it is no longer used. 1999-12-10 09:40:29 +00:00
Archie Cobbs f2cbe161be Move source files common to all platforms from <arch>/conf/files.<arch>
to conf/files.  If/when these files are optimized for each platform,
they can be moved back.
1999-12-09 19:38:20 +00:00
Dan Moschuk 9578442e8d Move libkern/arc4random.c into conf/files. I was planning on doing an
optimized alpha version, but I'll leave that alone for the time being.
1999-12-09 18:47:54 +00:00
Archie Cobbs add85a1d6e New netgraph node type 'pptpgre': this performs GRE encapsulation
for the PPTP protocol as specified in RFC 2637.
1999-12-08 18:55:39 +00:00
Mark Newton 09e5e156c4 Add support for compiling SVR4 as a static module
("AND THE CROWD GOES... uh.")

Tested by:	Joerg Wunsch <joerg_wunsch@interface-business.de>
1999-12-08 12:13:13 +00:00
Mark Newton 68d6a0593b Remove unnecessary includes
Prodded by:	phk
1999-12-08 12:01:59 +00:00
Poul-Henning Kamp 7d5961670c Remove BAD144 support, it has already been disabled for some time. 1999-12-08 09:33:00 +00:00
Søren Schmidt a3fb836cb5 Finally use the new ata driver. 1999-12-08 09:19:37 +00:00
Kenneth D. Merry 86b2c8466d Revamp the devstat priority system. All disks now have the same priority.
The same goes for CD drivers and tape drivers.  In systems with mixed IDE
and SCSI, devices in the same priority class will be sorted in attach
order.

Also, the 'CCD' priority is now the 'ARRAY' priority, and a number of
drivers have been modified to use that priority.

This includes the necessary changes to all drivers, except the ATA drivers.
Soren will modify those separately.

This does not include and does not require any change in the devstat
version number, since no known userland applications use the priority
enumerations.

Reviewed by:	msmith, sos, phk, jlemon, mjacob, bde
1999-12-08 04:45:23 +00:00
Bill Paul bfe31f4f2a Fix invocation of bus_teardown_intr(). The last arg is supposed to be
sc->wi_intrhand, not &sc->wi_intrhand.
1999-12-08 02:00:10 +00:00
Yoshinobu Inoue cfa1ca9dfa udp IPv6 support, IPv6/IPv4 tunneling support in kernel,
packet divert at kernel for IPv6/IPv4 translater daemon

This includes queue related patch submitted by jburkhol@home.com.

Submitted by: queue related patch from jburkhol@home.com
Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
1999-12-07 17:39:16 +00:00
Kazutaka YOKOTA 0be0162431 Fix the ioctl CONS_FINDMODE and its underlying subroutine
xxx_query_mode() in the vga and vesa drivers.

- xxx_query_mode() returns 0 (success) and a positive error number.
- Copy mode information on success.
- Remove redundant structure copy.

The bug first found in -STABLE by jmg.
1999-12-07 11:23:58 +00:00
Peter Wemm cf1b41050d Update for loss of pnp.h 1999-12-06 18:22:19 +00:00
Peter Wemm 9e03cab563 Fold the pnp code into the base isa system to pave the way for PNPBIOS.
Reviewed by:	dfr (a few weeks ago)
1999-12-06 18:17:42 +00:00
Poul-Henning Kamp 547f2153bb Remove DSO_BAD144 from wd driver(s) so people with bad144'ed disks get
a bit of warning.
1999-12-06 10:19:03 +00:00
Luoqi Chen ef460ae979 Need header <machine/smp.h> for prototype declaration of smp_rendezvous()
in my previous commit.
1999-12-06 05:12:26 +00:00
Luoqi Chen 91c28bfde0 User ldt sharing. 1999-12-06 04:53:08 +00:00
Yoshihiro Takahashi 02ebab9383 Supported i8251 (internal COM1) FIFO mode.
Submitted by:	tanimura and nyan
1999-12-06 00:23:38 +00:00
Bill Paul cdb3b8456d Remove references to old joystick driver from this file, which Peter
forgot to do when he converted it to newbus.

Note: make *sure* to remove any old joy.o object files from your kernel
build directories in order to be sure the joy driver is properly recompiled.

Noticed by: phk
1999-12-05 22:18:29 +00:00
Peter Wemm 46db6cf83b Switch over to using the generic joy driver 1999-12-05 20:02:19 +00:00
Archie Cobbs 7ec7564af4 Fix LINT breakage. 1999-12-05 18:49:09 +00:00
Doug Rabson c954d7368a Don't use a bogus bus number for Ross host-pci bridges.
PR:	kern/15278
Submitted by: Ahmed Benani <ahmed_benani@urbanet.ch>
1999-12-05 18:41:34 +00:00
Luoqi Chen ee46a57116 Reinstate the aic driver.
PR:		conf/15187
1999-12-05 01:56:42 +00:00
Bill Paul 96f2e892a7 Add the if_dc driver and remove all of the al, ax, dm, pn and mx drivers
which it replaces. The new driver supports all of the chips supported
by the ones it replaces, as well as many DEC/Intel 21143 10/100 cards.

This also completes my quest to convert things to miibus and add
Alpha support.
1999-12-04 17:41:31 +00:00
KATO Takenori aa4df56dc6 The address 0x472 is used for the SCSI HDD geometry information on
PC-98.  Therefore, the PC-98 kernel should not modify it.
1999-12-04 13:09:26 +00:00
Marcel Moolenaar 43bef51567 Implement pluggable ioctl handlers.
Other modules can register and unregister ioctl handlers to extend the
ioctls known by the Linuxulator. A recent application is the vmware
port. The Linuxulator itself uses the new interface to register its
handlers as well. Handlers for the following types of ioctls have been
defined:
	cdrom
	console (=keyboard and VT handling)
	socket
	sound
	termio

All ioctl related defines and declarations have been moved to a new
file (linux_ioctl.h), except for the pluggable ioctl handler interface
definition.

While there, cleanup linux.h some more.

linux.h and linux_ioctl.[ch] have been made to conform to style(9) as
much as possible.

Inspired and reviewed by: Vladimir N. Silyaev
1999-12-04 11:10:22 +00:00
Marcel Moolenaar 204fed67d2 oszsigcode -> szosigcode
Pointed out by: bde
1999-12-04 10:53:39 +00:00
Marcel Moolenaar ec1d9fe8ff Fix type of sf_addr.
Pointed out by: bde
1999-12-04 10:40:24 +00:00
Archie Cobbs 92a3e5521f New netgraph node type, ng_bpf(8). This node type allows you to
apply bpf(4) filters to data travelling through a netgraph network.
1999-12-03 21:21:49 +00:00
Yoshihiro Takahashi 2fc1b2c314 pc98/pc98/atapi.c
Copied from i386/isa/atapi.c.
	Fixed to support slave devices.
	Ignore the device that has strange model strings.

i386/isa/atapi.c
	Removed pc98 codes.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-12-03 12:56:21 +00:00
Yoshihiro Takahashi 82a9a36d9f Change splbio() to splcam(). bs is cam driver. 1999-12-03 11:58:12 +00:00
Matthew N. Dodd fe0d408987 Remove the 'ivars' arguement to device_add_child() and
device_add_child_ordered().  'ivars' may now be set using the
device_set_ivars() function.

This makes it easier for us to change how arbitrary data structures are
associated with a device_t.  Eventually we won't be modifying device_t
to add additional pointers for ivars, softc data etc.

Despite my best efforts I've probably forgotten something so let me know
if this breaks anything.  I've been running with this change for months
and its been quite involved actually isolating all the changes from
the rest of the local changes in my tree.

Reviewed by:	peter, dfr
1999-12-03 08:41:24 +00:00
Mike Smith 4226420695 Remove the 'gzip' image activator. We're not using a.out anymore, so save
ourselves just over 8k.
1999-12-03 00:16:20 +00:00
Matthew N. Dodd abe5426763 Remove the "MCA not supported" from RELNOTES.TXT and add
mention of the various devices that are supported.

Add some text and entry to LINT for 'controller mca0'.

I'd like to turn this option on in GENERIC as well as it
isn't impacting and has a small footprint.
1999-12-02 10:01:06 +00:00
Jonathan Lemon 2ba5960c24 Remove code to select APM version with flags to the apm0 device. This
code has been disabled for the last 4 months.

Prodded into action by:	 n_hibma
1999-12-02 03:13:11 +00:00
Bill Fumerola e49e7bd46f Grammar nit. 1999-12-02 03:01:54 +00:00
Mike Smith 8d0b9687cb Add the AMI MegaRAID and Mylex DAC960 drivers. Installation to arrays
on these controllers is now no different to the process for any other
supported disk controller.
1999-12-02 02:53:08 +00:00
Sheldon Hearn 98a440967f Cosmetic changes to comments:
* Bring source file references in line with the style used in
	  GENERIC (i.e. src/sys/...).
	* Update outdated source file references.
	* Use proper URL syntax for URLs.
	* Update outdated URLs.

PR:		15194
Submitted by:	jedgar@fxp.org (Chris D. Faulhaber)
1999-12-01 16:25:24 +00:00
Yoshihiro Takahashi 3e566c6577 The 6th bit of configuration port is not defined on pc98.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
1999-12-01 14:15:30 +00:00
Julian Elischer 86079f581f Add explicit null entries for new entrypoints.
Forgotten by: Archie
1999-12-01 09:34:14 +00:00
Marcel Moolenaar ec99e32256 Implement linux_sigaltstack. 1999-11-30 15:02:28 +00:00
Marcel Moolenaar 56d6dc1d34 Implement sigaltstack. 1999-11-30 15:00:17 +00:00
Alfred Perlstein fac9a03b4e add linuxulator wrapper for SNDCTL_DSP_GETODELAY 1999-11-29 23:03:34 +00:00
Matthew Dillon 99e659dcfa Make BOOTP work again.
Submitted by:	Doug Ambrisko <ambrisko@whistle.com>
1999-11-29 18:51:04 +00:00
Poul-Henning Kamp ab1c0de5ed How hard can it be to implement a 24bit counter in hardware ?
Make sure we read a likely value from the PIIX timecounter.

This should fix a large fraction of the "calcru: negative time"
warnings produced by SMP machines.

Another hole in one by: bde
Didn't belive Bruce:    phk
1999-11-29 11:27:40 +00:00
Dan Moschuk ee3fd60126 Introduce OpenBSD-like Random PIDs. Controlled by a sysctl knob
(kern.randompid), which is currently defaulted off.  Use ARC4 (RC4) for our
random number generation, which will not get me executed for violating
crypto laws; a Good Thing(tm).

Reviewed and Approved by: bde, imp
1999-11-28 17:51:09 +00:00
David E. O'Brien 521c57eb69 Sort PCI SCSI controlers. 1999-11-28 00:59:03 +00:00
David E. O'Brien 658743b5e2 /sys adjustments to add the `sym' controler driver.
This is commented out in GENERIC as you cannot mix `sym' with `ncr' right now.
Note that LINT is no more broken by this commit.
1999-11-28 00:48:15 +00:00
David E. O'Brien 61677ebb7b Add a commented out 'ATA' driver config block to help assist -CURRENT
people to migrate to this driver since it will be the default IDE/ATA/ATAPI
driver in 4.0-R.
1999-11-27 23:25:17 +00:00
David E. O'Brien 9cd1e66e65 options should be formatted as "#options ^IFOO".
Spammed by:	sos, mjacob, and phk
1999-11-27 22:46:51 +00:00
Marcel Moolenaar 408da11907 Implement linux_ustat.
Reviewed by: bde
1999-11-27 16:55:14 +00:00
Marcel Moolenaar c48ba18b4a Change prototype of linux_ustat. 1999-11-27 16:50:54 +00:00
Bruce Evans 8a9d4d98b1 Moved scheduling-related code to kern_synch.c so that it is easier to fix
and extend.  The new function containing the code is named schedclock()
as in NetBSD, but it has slightly different semantics (it already handles
incrementation of p->p_cpticks, and it should handle any calling frequency).

Agreed with in principle by:	dufault
1999-11-27 12:32:27 +00:00
Poul-Henning Kamp 71e4fff823 Retire MFS_ROOT and MFS_ROOT_SIZE options from the MFS implementation.
Add MD_ROOT and MD_ROOT_SIZE options to the md driver.

Make the md driver handle MFS_ROOT and MFS_ROOT_SIZE options for compatibility.

Add md driver to GENERIC, PCCARD and LINT.

This is a cleanup which removes the need for some of the worse hacks in
MFS:  We really want to have a rootvnode but MFS on a preloaded image
doesn't really have one.  md is a true device, so it is less trouble.

This has been tested with make release, and if people remember to add
the "md" pseudo-device to their kernels, PicoBSD should be just fine
as well.  If people have no other use for MFS, it can be removed from
the kernel.
1999-11-26 20:08:44 +00:00
Marcel Moolenaar 25e5bdab9e Implement fdatasync in terms of fsync. The regeneration of proto.h,
syscall.h and sysent.h was probably forgotten after the last change
syscalls.master.
1999-11-26 10:20:10 +00:00
Julian Elischer b812525f18 Fix out-of-date comment 1999-11-26 05:02:06 +00:00
Bill Paul dda0e6f54e Update the WaveLAN/IEEE driver:
- Convert to new bus attachment scheme. Thanks to Blaz Zupan for doing
  the initial work here. One thing I changed was to have the attach
  and detach routines work like the PCI drivers, which means that in
  theory you should be able to load and unload the driver like the PCI
  NIC drivers, however the pccard support for this hasn't settled down
  yet so it doesn't quite work. Once the pccard work is done, I'll have
  to revisit this.

- Add device wi0 to PCCARD. If we're lucky, people should be able to
  install via their WaveLAN cards now.

- Add support for signal strength caching. The wicontrol utility has
  also been updated to allow zeroing and displaying the signal strength
  cache.

- Add a /sys/modules/wi directory and fix a Makefile to builf if_wi.ko.
  Currently this module is only built for the i386 platform, though once
  the pccard stuff is done it should be able to work on the alpha too.
  (Theoretically you should be able to plug one of the WaveLAN/IEEE ISA
  cards into an alpha with an ISA slot, but we'll see how that turns out.

- Update LINT to use only device wi0. There is no true ISA version of
  the WaveLAN/IEEE so we'll never use an ISA attachment.

- Update files.i386 so that if_wi is dependent on card.
1999-11-25 20:45:49 +00:00
Seigo Tanimura 869f459c00 Add the description for the configuration of GUS non-PnP bridge driver.
Submitted by:	Pascal Hofstee <daeron@shadowmere.student.utwente.nl>
1999-11-25 01:20:29 +00:00
Archie Cobbs 25792ef324 Change the prototype of the strto* routines to make the second
parameter a char ** instead of a const char **.  This make these
kernel routines consistent with the corresponding libc userland
routines.

Which is actually 'correct' is debatable, but consistency and
following the spec was deemed more important in this case.

Reviewed by (in concept):	phk, bde
1999-11-24 01:03:08 +00:00
Guido van Rooij 9cc86ee930 Add kernel parts of revived ipfilter (3.3.3.) 1999-11-23 21:44:59 +00:00
Matthew Dillon 4453311409 Even better then using %fs:0 in our locked synchronizing instruction,
we instead use 0(%esp), which is per-cpu, already pretty much
    guarenteed to be locked into the cache, and does not stress the cache's
    set associativity.  invlpg might also be a good choice (suggested by
    Ingo).

Obtained from:	Linus Torvalds <torvalds@transmeta.com>
1999-11-23 20:07:39 +00:00
Matthew Dillon 87c8f0c0f2 Add in required instruction serialization prior to releasing the
MP lock for the last time.  The use of a locked instruction to
    cpu-private memory is 3x faster then CPUID and 3x faster then the
    use of a locked instruction to shared memory (the lock itself).

    Instruction serialization is required to ensure that any pending
    memory ops are properly flushed prior to the release of the lock,
    due to out-of-order instruction execution by the cpu.
1999-11-23 18:46:09 +00:00
Brian Feldman 9a46ff715e Fix a confusion between osigcontext and ucontext_t in the previous commit.
Since an osigcontext is smaller, if you check for a valid (much larger sized)
ucontext_t and it fails, we bogusly would reject the osigcontext as per
rev 1.378.  Instead, check for osigcontext range validity first, and
ucontext_t later.  This unbreaks Netscape.

Pointed to the right commit by:	peter
1999-11-23 04:09:13 +00:00
Peter Wemm 9565e721cb Update the Alpha makefile to be more in line with the x86 version. It
was getting quite dated.  Attempt to minimize diffs between the two so
it's not as painful to do this next time.
1999-11-22 15:39:13 +00:00
Yoshinobu Inoue 51f4c15279 move INET6 option from GENERIC to LINT.
Thanks for Brian Fundakowski Feldman and Dag-Erling Smorgrav,
to give me the comment and the patch.

Submitted by:Dag-Erling Smorgrav
1999-11-22 11:13:00 +00:00
Seigo Tanimura 46d6fe727e Add the descriptions of the bridge drivers for Sound Blaster, GUS
and Crystal Semiconductor CS461x/428x.
1999-11-22 06:10:25 +00:00
Seigo Tanimura e2dc359f4c - Introduce the bridge drivers for Sound Blaser, GUS and Crystal
Semiconductor CS461x/428x.
- Add support for GUS and CS461x/428x pcm.
- Move newpcm drivers for ISA cards to files.i386. The drivers for
  PC98 would be something quite different from those for PC/AT.

Moving requested by:	nyan
1999-11-22 06:09:24 +00:00
Yoshinobu Inoue 82cd038d51 KAME netinet6 basic part(no IPsec,no V6 Multicast Forwarding, no UDP/TCP
for IPv6 yet)

With this patch, you can assigne IPv6 addr automatically, and can reply to
IPv6 ping.

Reviewed by: freebsd-arch, cvs-committers
Obtained from: KAME project
1999-11-22 02:45:11 +00:00
Peter Holm 8feb5d575d Moved useracc() to top of sigreturn as to avoid panic
caused by invalid arguments to rutine.

Reviewed by:	marcel, phk
1999-11-21 14:46:43 +00:00
Poul-Henning Kamp da654d9070 s/p_cred->pc_ucred/p_ucred/g 1999-11-21 12:38:21 +00:00
Matt Jacob 75099bed2f document new ISP config options 1999-11-21 03:27:29 +00:00
Warner Losh 2cb5caa767 Latest incremental efforts on newcard:
o Delete pcic1 from NEWCARD
o Add explicit resource hints to pcic0
o Get attach working with newbus, kinda (it does all the newbus stuff,
  but doesn't try to attach the pccard yet, too many panics).
o Disable ie0 and le0 in NEWCARD config.  There appears to be a bug in
  the isa_compat code wrt memory conflicts with newbus drivers for
  reasons unknown.
o Minor cleanups.
1999-11-20 07:23:28 +00:00
Matthew Dillon f94f8efc61 Optimize two cases in the MP locking code. First, it is not necessary
to use a locked cmpexg when unlocking a lock that we already hold, since
      nobody else can touch the lock while we hold it.  Second, it is not
      necessary to use a locked cmpexg when locking a lock that we already
      hold, for the same reason.  These changes will allow MP locks to be used
      recursively without impacting performance.

      Modify two procedures that are called only by assembly and are already
      NOPROF entries to pass a critical argument in %edx instead of on the
      stack, removing a significant amount of code from the critical path
      as a consequence.

Reviewed by:	Alfred Perlstein <bright@wintelcom.net>, Peter Wemm <peter@netplex.com.au>
1999-11-19 22:47:19 +00:00
Poul-Henning Kamp 2996376ab5 Use LIST_FOREACH to traverse the allproc list.
Submitted by:   Jake Burkholder jake@checker.org
1999-11-19 21:34:50 +00:00
Matthew Dillon cd906fe3de Optimize two cases in the MP locking code. First, it is not necessary
to use a locked cmpexg when unlocking a lock that we already hold, since
    nobody else can touch the lock while we hold it.  Second, it is not
    necessary to use a locked cmpexg when locking a lock that we already
    hold, for the same reason.  These changes will allow MP locks to be used
    recursively without impacting performance.

    Modify two procedures that are called only by assembly and are already
    NOPROF entries to pass a critical argument in %edx instead of on the
    stack, removing a significant amount of code from the critical path
    as a consequence.

Reviewed by:	Alfred Perlstein <bright@wintelcom.net>, Peter Wemm <peter@netplex.com.au>
1999-11-19 16:49:30 +00:00
Julian Elischer 2045179917 fix braino.. line misplaced. 1999-11-19 09:19:44 +00:00
Julian Elischer 6822ccd6e7 protect some more operations with splimp() under Netgraph. 1999-11-19 05:37:37 +00:00
Peter Wemm 4add59312e Hack: comment out the pull-in of src/sys/../share/mk/bsd.kern.mk as
that breaks if you try and compile a kernel before building world, as
is presently required to get past the signal changes.   I don't
particularly like doing this, but at least it will mean that a 'make world'
will activate the gcc 2.95.2-specific option in bsd.kern.mk.
1999-11-18 09:54:11 +00:00
Peter Wemm cde35e1a3d If we have found pci devices via pci_cfgopen(), but don't find a
host->pci bridge specifically, then add a pcib0 device on the motherboard
for the pci bus to hang off.

Requested by:  Anders Andersson <anders@sanyusan.se>
Obtained from: dfr
1999-11-18 08:58:37 +00:00
Peter Wemm 4e250a4b87 Fix some -Wunused warnings 1999-11-18 08:43:58 +00:00
Peter Wemm 394c467708 Fix some warnings. 1999-11-18 08:41:53 +00:00
Peter Wemm 4a6eb2cc6c Fix a warning. 1999-11-18 08:39:02 +00:00
Peter Wemm f14f25d086 Touch up the make_dev() usage to hopefully make it work and fix warnings. 1999-11-18 08:36:42 +00:00
Peter Wemm 609d21b734 Fix some warnings. 1999-11-18 08:32:02 +00:00
Archie Cobbs 48e9417499 Add option NETGRAPH_KSOCKET. 1999-11-16 23:30:05 +00:00
Nick Hibma 7c74d2682c Typo 1999-11-16 22:02:16 +00:00
Yoshihiro Takahashi 89875c851f Fixed to compile bs driver with gcc 2.95.2. 1999-11-16 12:28:28 +00:00
David E. O'Brien fe3f39d6d5 Removed the asm version of conv(). This is should be faster in its new
C form.  See src/sys/i386/isa/sound/audio.c rev.1.23

Submitted by:	bde
1999-11-15 23:27:40 +00:00
David E. O'Brien 15cc94620c Fix __asm__ clobber list abuses. 1999-11-15 23:20:56 +00:00
Luoqi Chen e870e9b278 Segment registers can be read(write) to(from) memory locations as well as
general registers.
1999-11-15 19:45:19 +00:00
Eivind Eklund 2c582f0fc6 Fix case where vnode could be unlocked twice. Untested; bug found by code
reading.

Reviewed by:	phk
1999-11-14 17:33:40 +00:00
David E. O'Brien dfe41fc832 Fix clobbers so that GENERIC may compile with GCC 2.95.2.
Historically, the documentation of extended asm was lacking, namely you
should NOT specify the same register as an input, and a clobber.
If the register is clobbered, it should be specified as an output as well,
e.g., by linking input and output through the "number" notation.
(Beware of lvalues, some local variables needed...)

URL:http://egcs.cygnus.com/faq.html

In versions up to egcs-1.1.1, the compiler did not even warn about it,
but it was liable to output bad code. Newer egcs are pickier and simply
refuse to swallow such code.

Note, since *addr changes, it needs to be an output operand.
We might be excessive in saying that all memory has changed.

Obtained from:	OpenBSD
		w/extra thanks to Marc Espie <Marc.Espie@liafa.jussieu.fr>
1999-11-14 03:36:34 +00:00