Commit Graph

19259 Commits

Author SHA1 Message Date
shin
9b27aa3fec #This is a null commit to give correct description for the previous change.
#Please forget the strange log message of the previous commit .

IPv6 multicast routing.
  kernel IPv6 multicast routing support.
  pim6 dense mode daemon
  pim6 sparse mode daemon
  netstat support of IPv6 multicast routing statistics

  Merging to the current and testing with other existing multicast routers
  is done by Tatsuya Jinmei <jinmei@kame.net>, who writes and maintainances
  the base code in KAME distribution.

  Make world check and kernel build check was also successful.

Obtained from: KAME project
2000-01-28 12:17:49 +00:00
bde
e79d76144b Fixed a memory leak for slices with an (unsupported) bad sector table.
Broken in: rev.1.80.
2000-01-28 11:51:08 +00:00
bde
17f54b4408 Add ${DEBUG_FLAGS} to CFLAGS in bsd.kmod.mk, not in scattered module
makefiles.  Bad examples in fxp/Makefile keep getting copied to new
makefiles.
2000-01-28 11:26:46 +00:00
n_hibma
f9bed91ed9 Regen. 2000-01-28 10:31:12 +00:00
n_hibma
0ea7dddb88 Correct the entry for the Kodak DC290.
Submitted By:	Oliver Fromme <olli@dorifer.heim3.tu-clausthal.de>
2000-01-28 10:26:29 +00:00
bde
dff980d98b 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
sos
f1a70ea24f Oops, fix compile error due to the new way of storing the transfer mode. 2000-01-28 08:03:21 +00:00
kato
8d31907972 Merged with sys/i386/conf/GENERIC rev 1.238. 2000-01-28 07:15:23 +00:00
imp
9d11326d86 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
shin
f8e48f511e Sorry I didn't commit these files at the commit just a few minutes before.
(IPv6 multicast routing)
I think I mistakenly touched TAB and the last arg sys/netinet6 to
the cvs commit changed to sys/netinet6/in6_proto.c.
2000-01-28 05:27:14 +00:00
shin
417b54f8df IPv6 multicast routing.
kernel IPv6 multicast routing support.
  pim6 dense mode daemon
  pim6 sparse mode daemon
  netstat support of IPv6 multicast routing statistics

  Merging to the current and testing with other existing multicast routers
  is done by Tatsuya Jinmei <jinmei@kame.net>, who writes and maintainances
  the base code in KAME distribution.

  Make world check and kernel build check was also successful.
2000-01-28 05:10:56 +00:00
gallatin
b223e32eee Add support for detection of the ESS 1688 found on my Dell Latitude LM 2000-01-28 04:28:11 +00:00
dg
fab6f30ed1 Fixed sign and overflow bugs that caused the allocation size of the kernel
malloc region (kmem_map) to be wrong and semi-random on systems with more
than 1GB of RAM. This is not a complete fix, but is sufficient for
machines with 4GB or less of memory. A complete fix will require some
changes to the getenv stuff so that 64bit values can be passed around.

NOT FIXED: machines with more than 4GB of RAM (e.g. some large Alphas)
since we're still using ints to hold some of the values.

Reviewed by:	bde
2000-01-28 04:04:58 +00:00
dcs
1413d2c5ed Implement a machine-independent (word size-independent) FICL_TRUE. 2000-01-28 03:59:12 +00:00
dcs
22631e4b23 ANS Forth for logical not is 0=, not invert. Replace wrong usage. 2000-01-28 03:41:39 +00:00
dcs
675514383d Add testmain.o to CLEANFILES. 2000-01-28 03:07:25 +00:00
dcs
da94ddfd7a Try my hand again at removing ugly testmain target. 2000-01-28 02:40:23 +00:00
archie
219d3e4583 When an attempt to install a line discipline fails, check for
known KLD's that might support it, and load the KLD if found.
Currently the list includes SLIPDISC, PPPDISC, and NETGRAPHDISC.
2000-01-28 02:22:22 +00:00
wpaul
10d6a2ddbb Fix a bug in the uhci driver that breaks large bulk IN transfers. The
uhci_check_intr() routine needs to be more careful about deciding when
the end of a transfer has been detected.

This allows me to remove the nasty workaround code from if_aue and if_cue.
Receive performance is now much better for these adapters (500KB/sec
vs. 350KB/sec).

Also removed unused KUE_CUTOFF define from if_kuereg.h.

Submitted by: Lennart Augustsson
Reviewed by: n_hibma
2000-01-28 02:15:31 +00:00
nyan
a6ded040ef Merge from sys/i386/conf/GENERIC revision 1.231, 1.232 and 1.235. 2000-01-28 01:07:48 +00:00
nyan
165ca7ea33 Merge from sys/conf/files.i386 revision 1.301. 2000-01-28 01:05:08 +00:00
n_hibma
d9cd3d7688 The values for OHCI_HALTED and OHCI_TOGGLECARRY were reversed. 2000-01-28 00:03:45 +00:00
brian
3f0a670dfa Redo the intrq.c idea as
int family_enqueue(sa_family_t, struct mbuf *);
2000-01-27 23:37:39 +00:00
n_hibma
5674e93381 Move the defines to the right location.
Add a DIAGNOSTIC when closing interrupt pipes.

Insert splx(s) which were left out with iso pipes (non-functional yet) and
in a DIAGNOSTIC.
2000-01-27 23:25:58 +00:00
n_hibma
64633582ac Add umass.c 2000-01-27 23:19:14 +00:00
obrien
3050fca7ad Bump __FreeBSD_version and __FreeBSD_cc_version due to the C++ ABI change
in GCC 2.95.2 from -fvtable-thunks to -fno-vtable-thunks by default.
2000-01-27 23:12:38 +00:00
archie
bb21b7f267 Include ddb/db_sysctl.c when compiling with 'options DDB'. 2000-01-27 22:29:19 +00:00
archie
3e5a94e2ab Add a new sysctl "debug.enter_debugger" (when the kernel is compiled
with 'options DDB').  Setting this to `ddb' or `gdb' breaks into the
kernel debugger in the corresponding mode.  This mechanism has proven
very useful at Whistle for setting breakpoints, etc., while doing
remote serial line kernel debugging.

Obtained from:	Whistle source tree
2000-01-27 22:27:34 +00:00
jhb
372aab7cb7 Add the new cdldr CD bootstrap loader. This patch includes the following:
- Fix btxldr to preserve a NULL bootinfo pointer when it copies the kernel
  arguments.
- Add the cdldr bootstrap program.  This program is tacked onto the
  beginning of the standard 3rd stage boot loader (/boot/loader) to form
  the CD boot loader (/boot/cdboot).  When a CD is booted, the cdboot file
  is copied into memory instead and executed.  The cdldr stub emulates the
  environment normally provided by boot2 and then starts the loader.  This
  booting method does not emulate a floppy drive, but boots directly off of
  the CD.  This should fix the problems some BIOS's have with emulating a
  2.88 MB floppy image.
- Add support to the loader to recognize that it has been booted by cdldr
  instead of boot2 and use a simpler method of extracting the BIOS boot
  device.
2000-01-27 21:21:01 +00:00
jhb
30f3b614b3 Fix brokenness introduced with the PAGING conditional variable. The value
of %cr0 wasn't reloaded into %eax before being modified to turn protected
mode off if PAGING was not defined.  The result was that the processor did
not exit protected mode, so when it tried to jump to segment 0x0 in the
next instruction to clear the prefetch cache like one should when leaving
protected mode, it actually tried to jump to a null selector, causing a
GPF.
2000-01-27 21:06:13 +00:00
asmodai
85c0bf5218 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
sos
0dd4bc7de0 Add sysctl oid hw.atamodes to set the transfermodes online. 2000-01-27 19:00:51 +00:00
sos
eaf345be5e remove the ATA_16BIT_ONLY options, its now automatic. 2000-01-27 18:53:41 +00:00
asmodai
f9e6dff4fc 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
nyan
d75f204b28 Supported non-512 bytes/sector format.
PR:		misc/12992
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata) and
		Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
Reviewed by:	Dmitrij Tejblum <tejblum@arc.hq.cti.ru>
2000-01-27 14:43:07 +00:00
peter
e3e26fd9df Move if_tun back to the common section now that it works on the Alpha.
Tested by:	make world
2000-01-27 13:42:42 +00:00
yokota
e626ea866f Add more PCI VGA graphics card descriptions.
PR: 10095, 15299, 13850, 16356
Submitted by:  Alex Zepeda, Vladimir Kushnir, Alex Vasylenko, Alex.
Obtained from: XFree86 and NetBSD
2000-01-27 12:02:06 +00:00
shin
2ef83ec04a Added ip6_forwarding check when prefix related ioctl is called.
(prefix related ioctl should only be called on router,
because host use dynamic address and prefix configuration mechanism,
and those prefix are managed separately with ones whih are assined
manually.)
2000-01-27 10:04:28 +00:00
bde
88cf0ffda8 Quick fix for stack overflow when there are more than about 25 slices.
Using recursion to traverse the recursive data structure for extended
partitions was never good, but when slice support was implemented in
1995, the recursion worked for the default maximum number of slices
(32), and standard fdisk utilities didn't support creating more than
the default number.  Even then, corrupt extended partitions could
cause endless recursion, because we attempt to check all slices, even
ones which we don't turn into devices.

The recursion has succumbed to creeping features.  The stack requirements
for each level had grown to 204 bytes on i386's.  Most of the growth was
caused by adding a 64-byte copy of the DOSpartition table to each frame.
The kernel stack size has shrunk to about 5K on i386's.  Most of the
shrinkage was caused by the growth of `struct sigacts' by 2388 bytes
to support 128 signals.

Linux fdisk (a 1997 version at least) can now create 60 slices (4 standard
ones, 56 for logical drives within extended partitions, and it seems to
be leaving room to map the 4 BSD partitions on my test drive), and Linux
(2.2.29 and 2.3.35 at least) now reports all these slices at boot time.

The fix limits the recursion to 16 levels (4 + 16 slices) and recovers
32 bytes per level caused by gcc pessimizing for space.  Switching to
a static buffer doesn't cause any problems due to recursion, since the
buffer is not passed down.  Using a static buffer is wrong in general
because it requires the giant lock to protect it.  However, this problem
is small compared with using a static buffer for dsname().  We sometimes
neglect to copy the result of dsname() before sleeping.

Also fixed slice names when we find more than MAX_SLICES (32) slices.
The number of the last slice found was not passed passed recursively.
The limit on the recursion now prevents finding more than 32 slices
with a standard extended partition data structure anyway.
2000-01-27 05:11:29 +00:00
archie
f966bf838f Add control message ASCII conversion for this node type. 2000-01-27 01:32:53 +00:00
mckusick
b5a8876127 Add soft updates to the set of things being tagged. Syntax cleanup. 2000-01-27 01:22:06 +00:00
dillon
860c8411e1 Fix catastrophic bug in NQNFS related to UDP mounts. The 'nqhost'
struct contains a major union for which lph_slp was being initialized
    only for TCP connections, but accessed for all types of connections
    leading to a crash.  Also, a conditional controlling an nfs_slplock()
    call contained an improper paren grouping, causing a second crash in
    the UDP case.

    The nqhost structure has been reorganized and lph_slp has been made a
    normal structural field rather then a union field, and properly
    initialized for all connection types.

Approved by: jkh
2000-01-26 20:51:29 +00:00
cg
c54637f284 handle simplex devices right 2000-01-26 20:27:45 +00:00
rwatson
4f34910f07 A few more touchups:
- clean up unneeded AFS ID type
- Add Coda, NTFS, NWFS ACL types
- Add acl_dup() prototype
- Remove acl_calc_mask, which belongs in the editing library
- Introduce posix1e.3, a man page introducing POSIX.1e library calls
  (more man pages to follow)
2000-01-26 16:15:48 +00:00
peter
b498317a66 Re-add vpo. I've just re-tested this in a 'make world' on a December
vintage system, well before the ppbus changes.  When I called it an
"example" module, I meant as an example for the rest of the ppbus client
drivers, not that it was worthless.  I'll mail my 5.8MB world.log to
anybody who doesn't believe me.

Wrongly accused by:	obrien
2000-01-26 15:15:50 +00:00
kato
8e057fffb8 Synced with sys/i386/isa/isa_compat.h and pcaudio.c revisions 1.26 and
1.58, respectively.
2000-01-26 11:23:51 +00:00
kato
c5a78336fe Synced with sys/i386/isa/npx.c rev 1.79. 2000-01-26 11:16:14 +00:00
n_hibma
7e6dc45292 Properly teardown the allocated and initialised stuff when an error
occurs (OHCIwas already done for UHCI).

Get rid of the usbus variable. It is confusing.

Align uhci_pci.c and ohci_pci.c again.
2000-01-26 10:52:27 +00:00
bde
9fec7300da Improved English in the messages printed by diskerr().
Fixed some formatting bugs.
2000-01-26 10:28:23 +00:00
n_hibma
64cda4e365 Don't set ivars until we checked the return value from device_add_child. 2000-01-26 10:27:12 +00:00
n_hibma
4a29dd1cc9 Add comments 2000-01-26 08:46:41 +00:00
rwatson
bca585a108 Minor fixes to library interface to improve POSIX.1e compliance. This
adds _np to a couple of function prototypes that provided more broad/useful
interfaces than POSIX.1e interfaces included.

Also, move from using a heuristic to identify POSIX.1e-semantic ACLs to
using different ACL types for non-POSIX.1e ACLs.  This should clean up the
existing fuzzy logic that determined when acl_sort() should be applied
before kernel submission.
2000-01-26 04:19:38 +00:00
obrien
994e477fcd Remove `vpo' with a vengeance -- "EXAMPLE" modules have *NO* business
being hooked up to the build system, *COMPILABLE WORKING* modules do.

Not `make' tested by:	Peter
2000-01-26 02:05:16 +00:00
msmith
c7f9f55626 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
brian
1d67bbf0a1 Don't use ATM on the alpha - it #errors out.
Pointed out by: jdp
2000-01-26 01:08:03 +00:00
obrien
9ed45b0d46 if_tun is out of here -- it can come back with it stops breaking the
Alpha build.
2000-01-26 00:47:45 +00:00
dfr
d3464c1302 The ppc driver has moved to sys/isa. 2000-01-25 22:26:44 +00:00
dfr
e21d6d6ca6 Get the ppc driver from sys/isa instead of sys/i386/isa. 2000-01-25 22:25:52 +00:00
dfr
17a2aa68ca Make this lot build on alpha. 2000-01-25 22:23:48 +00:00
dfr
7fef19bf38 * Don't use ivars to access resources, bus_set/get_resource is much better.
* First approximation of making this work on alpha (not working yet).
2000-01-25 22:21:45 +00:00
dfr
9b25272548 Convert pca driver to newbus and add PnP ids. 2000-01-25 21:58:43 +00:00
dfr
4825204b37 Use device_printf() instead of device_print_prettyname(). 2000-01-25 21:39:20 +00:00
mjacob
0ca52ef8b9 Because we added 4 bytes to the inquiry data size, we need to
rev the CAM revision too. Tsk.
Submitted by:	ken@freebsd.org
2000-01-25 21:24:52 +00:00
sos
b5f4230b55 Retry a bit more agressively on the atapi identify.
Try to support older systems reporting irq0 for the first channels.

Support sharing of the std interrupts (says peter :) )

Dont use READ_CD on normal data reads (2048 bytes), too many old drives
doesn't support this command even if the std says "shall" :(, but still
use READ_CD on all other blocksizes.

Add the geometry to the ad probe, its still usefull.
2000-01-25 20:14:51 +00:00
peter
c1eb1e6c01 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
n_hibma
97f54a6227 Add usbd_clear_endpoint_toggle(pipe) function.
This is needed to implement a asynchronous callback for clear endpoint
stall, needed for the umass driver.
2000-01-25 18:40:39 +00:00
n_hibma
54e504ae5d Correct subroutine names in DPRINTF 2000-01-25 18:37:58 +00:00
mjacob
1e8980cde6 Redo the SHORT INQUIRY length stuff to be a bit cleaner.
Obtained from:gibbs@freebsd.org
2000-01-25 18:25:22 +00:00
dillon
fd8bf79164 The swapdev_vp changes made to rip out the swap specfs interaction
also broke diskless swapping.  Moving the swapdev_vp initialization
    to more commonly run code solves the problem.

PR: kern/16165
Additional testing by: David Gilbert <dgilbert@velocet.ca>
2000-01-25 17:49:12 +00:00
ken
810f78cd6f When autosense fails, make sure we retry the command.
PR:		kern/15975
Submitted by:	Carl Mascott <cmascott@world.std.com>, n_hibma
2000-01-25 17:45:02 +00:00
mjacob
88ca73a427 Propagate sense data through from SIM (if there) and mark the CTIO
that there's sense to send with status (if the SIM does it), and
then clear any pending contingent allegiance state for this initiator
if the SIM actually did send the sense data.

Widen MAX_INITITATORS to 256- that's still not quite right, but will
accomodate the widest Fibre Channel support in FreeBSD now.

Obtained from:(partially) gibbs@freebsd.org
2000-01-25 17:42:27 +00:00
mjacob
ac6d799efd Propagate sense data through from SIM (if there) and mark the CTIO
that there's sense to send with status (if the SIM does it).
Reviewed by:	gibbs@freebsd.org
2000-01-25 17:39:09 +00:00
mjacob
456e741298 Go for the gusto and do the full 256 bytes for inquiry data.
Obtained from:gibbs@freebsd.org
2000-01-25 17:37:02 +00:00
peter
3176716b49 Always leave SP_DCEN on (monitor DCD). Otherwise the firmware *really*
does ignore DCD.  Even TIOCMGET cannot read DCD as the firmware doesn't
report it.  This has pretty interesting effects for ppp(8) which runs
in clocal mode and polls carrier (!).  (Specialix's linux driver does
this too)

Also update the firmware to 3.0.6 for the SX cards, as apparently there
was a problem with floating (disconnected) DCD pins causing stray carrier
transitions, especially at port open time.

It seems to work here, and carrier loss is detected nearly immediately
rather than having to wait for a LQR timeout (a few minutes) before ppp(8)
gives up.

DCD problem noted by: nsayer
2000-01-25 16:45:54 +00:00
bde
f521345792 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
bde
59f42795e8 Don't follow null pointers if we somehow have a null devswitch entry
despite having a non-null cn_tab entry.  This case now works the same
as if there is no physical console, except i/o at the kernel printf
level may still work.  This frees drivers of physical console drivers
from the responsibility of attaching the device no matter what.
2000-01-25 09:20:08 +00:00
bde
9fe8ef8eba 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
bde
2d72ea0422 Removed ssc and su. 2000-01-25 08:46:15 +00:00
mjacob
888adf2a33 put things in place for jumbograms 2000-01-25 06:09:53 +00:00
mjacob
8cd8c3184d define jumbo packet size 2000-01-25 04:11:33 +00:00
archie
a8773de4fe Reserve a major number for /dev/skip, used by the "security/skip" port. 2000-01-25 02:11:02 +00:00
shin
2dec7cab29 Avoid m_len and m_pkthdr.len inconsistency when changing m_len
for an mbuf whose M_PKTHDR is set.

PR: related to kern/15175
Reviewed by: archie
2000-01-25 01:26:47 +00:00
shin
3dd6ac3283 Fix the bug that IPv4 ttl is not initialized when AF_INET6 socket is used
for IPv4 communication.(IPv4 mapped IPv6 addr.)
Also removed IPv6 hoplimit initialization because it is alway done at
tcp_output.

Confirmed by: Bernd Walter <ticso@cicely5.cicely.de>
2000-01-25 01:05:18 +00:00
sos
8ebb100647 General cleanup.
Dont be so verbose in the probe, only ONE line printed now, to get more
info boot verbose. Centralise most printf's in ata-all & ata-dma to use
the ata_printf function, it saves alot of codelines.

Repeat the identify command if drive fails the first.

Protect the timeout functions with splbio.

Dont update the transfer details before we are sure the transfer
succeded, this way they are proberly retried on errors.

Move the handling of next_writeable to userland.

Use the READ_CD command to read CD's. That enables us to read _anything_
via the normal read/write interface. This kindof obsoletes the READAUDIO
ioctl, but we keep that for now.
2000-01-24 20:45:24 +00:00
brian
26fcba4c5a Move the *intrq variables into net/intrq.c and unconditionally
include this in all kernels.  Declare some const *intrq_present
variables that can be checked by a module prior to using *intrq
to queue data.

Make the if_tun module capable of processing atm, ip, ip6, ipx,
natm and netatalk packets when TUNSIFHEAD is ioctl()d on.

Review not required by: freebsd-hackers
2000-01-24 20:39:02 +00:00
wpaul
d46e1313de Add support for DM9102A boards with Davicom DM9801 HomePNA PHYs. 2000-01-24 17:19:37 +00:00
peter
0053820449 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
kato
d2024f75c9 Merged from sys/i386/conf/GENERIC rev 1.236. 2000-01-24 14:02:34 +00:00
roger
1405ac9364 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
roger
e5aaa91ca5 Update to driver 2.07
Update i2c code to build on FreeBSD 3.x and 4.x machines.
Added GPIO audio values for the Askey/Dynalink TV card talken from postings on the V4L mailing list.
Update Australian Channel Set. Submitted by John Birrell <jb@cimlogic.com.au>
Add new Channel Set for France. Submitted by Daniel Dagneaux <dagneaux@lure.u-psud.fr>
2000-01-24 14:00:21 +00:00
kato
7898f6d9d6 Synced with sys/i386/isa/isa_compat.h rev 1.25. 2000-01-24 13:58:18 +00:00
kato
f2f2130c16 Synced with files.i386. 2000-01-24 13:56:57 +00:00
yokota
c98556c7b7 Fix a bug exposed by the previous commit. Do not use scp->font_size,
if the screen is in a graphics mode

Reported by: Maxim Sobolev <sobomax@altavista.net>
2000-01-24 13:44:39 +00:00
bde
5ac10ba7c8 Fixed some style bugs (mainly ones associated with the bogus name
condev_t for a non-typedef).
2000-01-24 11:48:11 +00:00
n_hibma
5bef12b54e The previous fix for the USB ugen device set configuration ioctl()
has a slight error, and returns EIO way too often.

PR:		16315
Submitted by:  Louis Mamakos <louie@TransSys.COM>
2000-01-24 10:23:57 +00:00
dfr
f0daab572f Add a workaround to which allows alphas to reserve a port range which
doesn't conflict with the parallel port on my miata (0x3bc..0x3bf).
The right solution will be to reserve two port ranges in vga, 0x3b0..0x3ba
and 0x3c0..0x3ca.

Reviewed by: yokota
2000-01-24 09:22:51 +00:00
ru
8976fc6f89 Notify user processes about interface's MTU change.
Reviewed by:	wollman, freebsd-net
2000-01-24 08:53:39 +00:00
peter
16f4eb83c1 Remove some no-op "port ?" and "irq ?" declarations. 2000-01-24 08:52:29 +00:00
peter
148cc5b79c Remove a no-op "port ?" declaration. 2000-01-24 08:51:16 +00:00
peter
e9cca2953d Remove a bunch of no-op "port ?" and "irq ?" declarations. 2000-01-24 08:49:24 +00:00
kato
782470b16b Return ENXIO on error.
Submitted by:	n_hibma
2000-01-24 08:20:54 +00:00
peter
7023b084df 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
bde
df8760b455 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
d10f128836 Remove isa compat shims for si. 2000-01-24 08:13:53 +00:00
peter
0bbdc5307e Activate the newbusified version of si. 2000-01-24 08:12:40 +00:00
peter
8df9215e54 Ack! I totally botched the pci probe routine which resulted in it trying
to match everything else *but* a specialix pci card. *blush*.
2000-01-24 08:11:10 +00:00
peter
eecb860927 A bit more newbusification of si. This still isn't quite finished.
Split out the bus attachments so the impact of the bus xxxvar.h files
with the inline macros for the ivars are confined to one file each.
2000-01-24 07:24:02 +00:00
imp
739bfd2efc Fix plug and play support:
o Cut out the probed stuff.  We no longer need it since newbus implicitly
  checks for this (likely bt can be changed as well in this way).
o Add preliminary support for unload.  Untested because aha doesn't yet
  support identify and there are some interactions with PnP that I've
  not yet worked out.

With this I can boot the AHA-1542CP FW F.0.  All the aha resources
appear to be picked up via pnp now.
2000-01-24 07:08:40 +00:00
bde
385dc4c1f7 Removed bogus quotes and unmangled related contractions.
"ktrace(1) syscall trace" -> "ktrace(1)".
2000-01-24 05:38:55 +00:00
peter
1f56e7164c Initial attempt at newbusification of the specialix si/xio/sx driver.
The files were repo copied from their original location and are part
way towards being portable.
This should unbreak the EISA support in the driver.
I have not updated files* yet as I'm not quite finished.
2000-01-23 22:51:49 +00:00
peter
fb5d4fa843 Fix some warnings. 2000-01-23 19:27:11 +00:00
peter
6588369b69 remove "extern int cold" from SPLUSBCHECK - it causes a heap of warnings. 2000-01-23 19:26:16 +00:00
peter
71c7f2956d Fix a warning in DIAGNOSTIC code. 2000-01-23 19:25:29 +00:00
peter
d89df495ff Sync NEWCARD a bit with GENERIC. Remove trailing '0' on unwired devices. 2000-01-23 18:31:19 +00:00
peter
f4c5b4ed2c 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
8582d01fec Remove #if 0'ed reference to isa_device->id_alive 2000-01-23 18:21:20 +00:00
peter
e238f1c84f A minimal update to the device wiring code so that it looks at the
dynamic resource tables rather than relying on a duplicated cam-specific
table generated by config(8) in ioconf.c.  This was a major holdup to
getting loader / userconfig driven configuration of scsi wiring.
2000-01-23 18:03:38 +00:00
n_hibma
744b2db779 Check whether we can change config at all. If any of the endpoints
has been opened, we should not allow configuration changes as endpoint
descriptors might disappear.

PR:	16256, 16168
2000-01-23 15:48:29 +00:00
bp
0f32b2a255 Backout previous commit. It was a mistake. 2000-01-23 15:47:46 +00:00
peter
535c8837a5 oops, nearly forgot to commit the addition of ppbus_if.m to the list. 2000-01-23 15:42:44 +00:00
n_hibma
46612cf2e7 Zap the vnodes for the control endpoint as well. 2000-01-23 15:42:08 +00:00
peter
6542b31f77 Add an example vpo module. I don't have a zip drive to test it, but it
behaves the normal way when loaded at runtime versus being statically
compiled.  (normal == print garbage on the printer :-).
2000-01-23 15:26:15 +00:00
n_hibma
b675bb30c4 Return ENXIO on error, not 0. Seems to have been skipped when converting
to newbus.

Reviewed by:	bde
2000-01-23 15:11:15 +00:00
bp
530d15757a Replace non obvious number with SPECNAMELEN constant.
Reviewed by:	phk
2000-01-23 14:58:53 +00:00
phk
56d1c048ef Add a couple of strategic sysctls for monitoring.
In the rather obscure case of hardpps(), use a type-II PLL if the external
signal is phase locked, but a FLL if it isn't.
2000-01-23 14:52:37 +00:00
peter
dbf4e19087 Drop 'at ppbus?' and trailing '0' from ppbus children. 2000-01-23 14:47:58 +00:00
peter
e3d364f103 Drop 'at ppbus?' and the trailing '0' from the ppbus children. 2000-01-23 14:46:20 +00:00
peter
6ac7d76dbc Some newbus-inspired tidy-ups. Use device_identify() rather than scanning
the resource table to locate children.  The 'at ppbus?' can go again.
Remove a few #if Nxxx > 0' type things, config arranges this for us.
Move the newbus method glue next to the DRIVER_MODULE() stuff so we
don't need extra prototypes.
Don't set device descriptions until after the possibility of the probe
returning an error.
Remove all cdevsw_add() calls, all the drivers that did this also use
make_dev() correctly, so it's not required.
A couple of other minor nits.
2000-01-23 14:41:04 +00:00
peter
805920b490 I missed some trailing digits in a comment.
Submitted by:	asmodai
2000-01-23 14:34:38 +00:00
n_hibma
e6184773ef Get rid of some debugging cruft. 2000-01-23 13:56:58 +00:00
peter
bd4781a52d Note the PnP id's for the NMX2210 next to the id's where they are used.
The pnpbios doesn't supply a description in the case we've seen so
supply one.
2000-01-23 13:17:03 +00:00
groudier
69d6cb63b3 Add 53C895A and 53C1510D device description to the ncr chip table. 2000-01-23 12:27:49 +00:00
peter
816e2438e4 Bump configvers.h as a precaution. Although existing config files will
work unmodified still, new config files won't work on the old ones.
2000-01-23 12:24:48 +00:00
peter
e33b0631fe Update GENERIC/SIMOS to leave out the useless trailing digit in pci
and other unwired devices.
2000-01-23 12:22:25 +00:00
peter
7028fa1315 Remove useless trailing digit from pci and other unwired devices. 2000-01-23 12:20:09 +00:00
peter
e4603c69b9 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
38391cb38a 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
e8782df8c9 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
brian
9c022a2fe0 Hmm, don't compile in INET6, IPX or NETATALK support for the
moment :-(  I think we need some sort of stub variable and a
``is this queue available'' flag.
2000-01-23 10:41:48 +00:00
mdodd
aacbc50c12 Fix a bug in the last commit. >> 4 instead of >> 8. *bap*
Fix a long-standing bug where I used a 'break;' instead of a 'continue;';
you had to have multiple ISA boards in non-PnP mode with an 'unknown' board
with a lower MAC address to find this one.  Since I have 4 3c5x9 boards
in my test box I was somewhat confused when this happened. :)

Make the messages printed by ep_isa_identify() a little more consistent;
we'll only see them in verbose boot mode but it makes me feel better if
they look nice.
2000-01-23 08:46:21 +00:00
mdodd
48769ea871 Add the ID for the 3c509-TPC.
Also, while I'm here, add a mechanism to catch unknown board IDs that
are likely to be 3c509s and allow them to be attached.

PR:		kern/16304
Submitted by:	Kelly Yancey <kbyanc@posi.net>
2000-01-23 08:23:38 +00:00
tanimura
5ecc620e52 The pointer of the serial FIFO in the DSP seems to make an error
upon starting/stopping the DSP. Correct the pointer in addition
to clearing the FIFO.
2000-01-23 07:04:02 +00:00
imp
7ea182a93a Add the two wireless pccard nics. 2000-01-23 04:29:17 +00:00
bp
fc532071c9 Allow if_ef driver to be compiled into kernel. 2000-01-23 03:35:11 +00:00
mjacob
f014209ceb Correctly put the place to mark EOP where we actually do the packet
transmission- this handles the odd and rare case of a list terminating
with a zero length mbuf.
2000-01-23 03:19:49 +00:00
mjacob
a441dee903 add PREVIOUS index macro for transmit side 2000-01-23 03:18:14 +00:00
mjacob
adb19118c1 Remove some debugging code, replace one line that had spaces with tabs,
and fix a silly botch for reinit.
2000-01-23 02:07:31 +00:00
mjacob
6bf9d8db26 Get rid of the WX_XMIT_SMALL code- we've fixed that problem. Restructure
the receive code so that it correctly chains receive descriptors together
and handles the case that only a part of a packet is done at the time
we get here.
2000-01-23 01:49:11 +00:00
brian
fb25843f9a Support INET6, NETATALK and IPX as well as INET. 2000-01-23 01:47:59 +00:00
brian
a186cbef4e Implement TUN[GS]IFHEAD ioctls. Passing a non-zero int to TUNSIFHEAD
tells that tun unit to prepend a four byte address family to packets
queued for tunread() and to expect a four byte address family at the
front of data received by tunwrite().

We queue any protocol received from the interface for tunread(), but
only accept INET, INET6, IPX and NETATALK from tunwrite().  There is
support for Xerox's NS stuff, but AFAICT config(8) doesn't ever
define NS.
2000-01-23 01:47:12 +00:00
mjacob
2611eb5bc0 Add a pointer in the softc that will point to partially received packet.
Set up index increments for receive descriptors based on whether
the PADDED_CELL define is set.
2000-01-23 01:41:17 +00:00
mjacob
06afe28009 Add in a define for the optimal cache line size. 2000-01-23 01:39:13 +00:00
hosokawa
022a337755 Don't execute MAC address initialization for non-pccard sn devices. 2000-01-22 17:24:16 +00:00
mjacob
0798c26225 Clean up some of the SAF-TE matching code. Add
a few missing newlines in printouts.
2000-01-21 21:14:42 +00:00
mjacob
a95eb8d83c There seems to be some problems, particularly on alpha, with
FAST POSTING enabled for parallel SCSI. Be sure about things
and disable it for now.
2000-01-21 20:54:22 +00:00
wilko
13ab50b3d1 updated comments 2000-01-21 20:19:18 +00:00
dillon
cacb1b6d5f Fix a deadlock between msync(..., MS_INVALIDATE) and vm_fault. The
invalidation code cannot wait for paging to complete while holding a
    vnode lock, so we don't wait.  Instead we simply allow the lower level
    code to simply block on any busy pages it encounters.  I think Yahoo
    may be the only entity in the entire world that actually uses this
    msync feature :-).

Bug reported by:  Paul Saab <paul@mu.org>
2000-01-21 20:17:01 +00:00
nyan
9d2bd66eba - Merge from sys/i386/conf/GENERIC rev 1.224, 1.225 and 1.226.
- Reorder network interfaces.
2000-01-21 13:22:07 +00:00
n_hibma
154c09625c Add ID for the AMD-756 OHCI controller 2000-01-21 10:46:29 +00:00
hosokawa
cdccd2138a Added support for hex-encoded MAC address of Megahertz X-Jack Ethernet Card
Reviewed by:	Warner Losh <imp@village.org>
2000-01-21 09:05:49 +00:00
imp
72c8ff7d8a Fix the style bugs in the style bugs fix. The style bug fix made the
new function inconsistant with the rest of this file.  The spelling
and grammer fixes were good and remain.
2000-01-21 06:57:52 +00:00
hosokawa
7ce7351da1 Propagate MAC address in CIS tupple to dev/ed/ driver.
Many ed-based Ethernet PC-cards can't get correct MAC address without
this patch.

Submitted by: Takanori Watanabe <takawata@shidahara1.planet.sci.kobe-u.ac.jp>
Reviewed by: Warner Losh <imp@village.org>
2000-01-21 03:08:46 +00:00
green
c6da76a1a6 Fix style bugs in the last commit. 2000-01-21 02:52:54 +00:00
archie
5d28703a16 Remove definition of the unimplemented "control" hook. 2000-01-21 01:39:40 +00:00
brian
b5a9af645e Add a new TUNSIFPID ioctl to update the tun_pid (recorded in
tunopen) with the current pid.
2000-01-21 00:31:43 +00:00
n_hibma
ac7818da20 Add support for DEVICE_SUSPEND, DEVICE_RESUME and DEVICE_SHUTDOWN
methods for USB devices.

However: with none of the devices I have here suspend seems to work
properly.  This is probably a bug in uhci_power which I still have to
look at.

Prodded and pushed by:  Christopher Masto <chris@netmonger.net>
2000-01-20 22:24:35 +00:00
n_hibma
c5a17a034f Remove duplicate include 2000-01-20 22:05:30 +00:00
n_hibma
1b6a1333f6 Properly remove interrupts if initialisation fails. 2000-01-20 21:36:07 +00:00
wpaul
b5ac56c339 Fix test for deciding when a bulk IN transfer got truncated. I thought
I fixed this last night, but apparently I only applied the patch to the
copy of the code in /dev/brain0.
2000-01-20 19:57:43 +00:00
imp
f6db7985c4 bdeize last commit:
o Remove opt_dontuse.h and ifdef PROCFS

Subitted by: bde, peter
2000-01-20 17:03:53 +00:00
gallatin
e5fa3c588c Make devices behind PPBs work on DS10s (and any other single pchip tsunamis)
I was wagering on DEC being elegant & numbering PCI buses normally on
machines with one pchip.  It looks like they went with consistent -- buses
behind ppbs begin with bus 2.
2000-01-20 16:49:18 +00:00
kato
e65ad563e9 Synced with the sc driver in the sys/dev/syscons directory.
Submitted by:	yokota
2000-01-20 15:16:49 +00:00
yokota
abbbd5cfea - Add some comment from bde on the keyboard interrupt.
- Fix obsolete comments.
2000-01-20 13:32:53 +00:00
yokota
3701b00fac Do not explicitly create empty option files; they are taken
care of by bsd.kmod.mk.

Pointed out by: bde
2000-01-20 13:25:18 +00:00
yokota
697f77edf9 Do not include `ukbd.h'; it's not used.
Pointed out by: bde
2000-01-20 13:24:28 +00:00
yokota
ce752f8d1a Unconditionally define sc_paste(). 2000-01-20 13:23:03 +00:00
yokota
630186d4d8 Fix wrong usage of FONT_NONE. It was not meant to be set in
scp->font_size in the first place.  It is redundant now and is
removed.

Found by: bde
2000-01-20 13:21:47 +00:00
nyan
8732157b07 Fixed typo. 2000-01-20 12:37:06 +00:00
kato
b149cc0a07 Synced with sys/isa/sio.c rev 1.285. 2000-01-20 08:37:54 +00:00
kato
40c8b7d407 Synced with sys/i386/i386/userconfig.c rev 1.169. 2000-01-20 08:35:32 +00:00
kato
b8cfd16cdf Synced with sys/i386/conf/GENERIC rev 1.230. 2000-01-20 08:34:40 +00:00
jasone
cec957051d Back out the previous spl change, since it opens a race window.
Reviewed by:	alfred, dillon, peter
2000-01-20 08:15:13 +00:00
jasone
918817c6dd Track libc_r addition of semaphores implementation.
Approved by:	jkh
2000-01-20 07:55:42 +00:00
wpaul
9408134d9b Regen. 2000-01-20 07:39:19 +00:00
wpaul
d5c9bbfbf2 More USB ethernet tweaks:
- Sync ohci, uhci and usbdi modules with NetBSD in order to obtain the
  following improvements:
        o New USBD_NO_TSLEEP flag can be used in place of UQ_NO_TSLEEP
          quirk. This allows drivers to specify busy waiting only for
          certain transfers (namely control transfers for reading/writing
          registers and stuff).
        o New USBD_FORCE_SHORT_XFER flag can be used to deal with
          devices like the ADMtek Pegasus that sense the end of bulk OUT
          transfers in a special way (if a transfer is exactly a multiple
          of 64 bytes in size, you need to send an extra empty packet
          to terminate the transfer).
        o usbd_open_pipe_intr() now accepts an interval argument which
          can be used to change the rate at which the interrupt callback
          routine is invoked. Specifying USBD_DEFAULT_INTERVAL uses the
          value specified in the device's config data, but drivers can
          override it if needed.
- Change if_aue to use USBD_FORCE_SHORT_XFER for packet transmissions.
- Change if_aue, if_kue and if_cue to use USBD_NO_TSLEEP for all
  control transfers. We no longer force the non-tsleep hack for
  bulk transfers since these are done asynchronously anyway.
- Removed quirk entry fiddling from if_aue and if_kue since we don't
  need it anymore now that we have the USBD_NO_TSLEEP flag.
- Tweak ulpt, uhid, ums and ukbd drivers to use the new arg to
  usbd_open_pipe_intr().
- Add a flag to the softc struct in the ethernet drivers to indicate
  when a device has been detached, and use this flag to perform
  tests to prevent the drivers from trying to do control transfers
  if this is the case. This is necessary because calling if_detach()
  with INET6 enabled will eventually result in a call to the driver's
  ioctl() routine to delete the multicast groups on the interface,
  which will result in attempts to perform control transfers. (It's
  possible this also happens even without INET6 support enabled.) This
  is pointless since we know that if the detach method has been called,
  the hardware has been unplugged.
- Changed watchdog timeout routines to just call the driver init routines
  to initialize the device states without trying to close and re-open the
  pipes. This is partly because we don't want to frob things at interrupt
  context, but also because this doesn't seem to work right and I don't
  want to panic the system just because a USB device may have stopped
  responding.
- Fix aue_rxeof() to be a little smarter about detecting when a double
  transfer is needed. Unfortunately, the design of the chip makes it hard
  to get this exactly right. Hopefully, this will go away once either
  Nick or Lennart finds the bug in the uhci driver that makes this ugly
  hack necessary.
- Also sync usbdevs with NetBSD.
2000-01-20 07:38:33 +00:00
imp
4e884c480a When we are execing a setugid program, and we have a procfs filesystem
file open in one of the special file descriptors (0, 1, or 2), close
it before completing the exec.

Submitted by: nergal@idea.avet.com.pl
Constructive comments: deraadt@openbsd.org, sef, peter, jkh
2000-01-20 07:12:52 +00:00
rwatson
9f8d2f98a9 A few more style cleanups
Submitted by:	bde
2000-01-20 06:39:07 +00:00
jasone
271b33587d 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
msmith
469db80834 Add the pcdmx theatre lighting controller major number 2000-01-20 02:54:03 +00:00
jasone
ff778f6b27 Don't tsleep() while at splbio().
Correctly return EINPROGRESS from aio_error() even when an aio request
is still in the socket queue.

Submitted by:	Adrian Chadd <adrian@bofh.co.uk>
2000-01-20 01:59:58 +00:00
archie
ba86f900bf Fix an #ifdef that should have been and #ifndef.
Noticed by:	Hellmuth Michaelis <hm@hcs.de>
2000-01-20 01:49:45 +00:00
kato
f9060bc85d Port of the PC-98 ppc to the newbus system. 2000-01-20 00:58:49 +00:00
wpaul
28f55e3f8e Add support for the Davicom DM9102A 10/100 ethernet controller chip.
This is just to make sure we initialize the chip correctly: we need to
make the sure the port select bit in CSR6 is set properly so that we
use the internal PHY for 10/100 support. (The eval boards I have also
include an external HomePNA PHY, but I need to play with that more
before I can support it.)
2000-01-19 19:03:08 +00:00
jkh
67e9a9c57f Add parallel port clock driver.
Submitted by:	Sascha Schumann <sascha@schumann.cx>
2000-01-19 18:19:16 +00:00
jkh
d9684b5bfd 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
sos
0b63e1ef02 Quantify the calls to ad_attach and atapi_attach so that diskless
or atapiless kernels can be built.
2000-01-19 07:25:46 +00:00
rwatson
f2d8638a5c Fix bde'isms in acl/extattr syscall interface, renaming syscalls to
prettier (?) names, adding some const's around here, et al.

Reviewed by:	bde
2000-01-19 06:07:34 +00:00
rwatson
3a39a81644 Fix bde'isms in acl/extattr syscall interface, renaming syscalls to
prettier (?) names, adding some const's around here, et al.

Commit 2 out of 3.

Reviewed by:	bde
2000-01-19 06:02:31 +00:00
rwatson
e6adc4e6db Fix bde'isms in acl/extattr syscall interface, renaming syscalls to
prettier (?) names, adding some const's around here, et al.

Commit 1 out of 3.

Reviewed by:	bde
2000-01-19 06:01:07 +00:00
msmith
1cbf0ebcec Reference machine/param.h rather than the nonexistent
machine/machparam.h in a comment

PR:		kern/11178, kern/16128
2000-01-19 01:26:06 +00:00