21368 Commits

Author SHA1 Message Date
wpaul
6077857dc7 Apply patch supplied by John Hood <jhood@sitaranetworks.com> to fix problems
with LEDs on some cards being stomped on when clearing the "jabber disable"
bit. Using DC_SETBIT() has an unwanted side effect of setting a write enable
bit in the watchdog timer register which we really want to be cleared when
we do a write.
2000-08-01 19:34:13 +00:00
roberto
aab96ffa41 Change __FreeBSD_Version into the proper __FreeBSD_version.
Submitted by:	Alain.Thivillon@hsc.fr (Alain Thivillon) (for ip_fil.c)
2000-08-01 17:14:38 +00:00
roberto
3d4cf3c369 Fix the lockmgr panic everyone is seeing at shutdown time.
vput assumes curproc is the lock holder, but it's not true in this case.

Thanks a lot Luoqi !

Submitted by:	luoqi
Tested by:	phk
2000-08-01 14:15:07 +00:00
mjacob
c0c2363472 Add in macros && masks so that mailbox command errors can be
selectively printed/supressed in isp_mboxcmd.
2000-08-01 06:55:08 +00:00
mjacob
8836b07cf6 Major whacking for core version 2.0. A major motivator for 2.0 and these
changes is that there's now a Solaris port of this driver, so some things
in the core version had to change (not much, but some).

In order, from the top.....:

A lot of error strings are gathered in one place at the head of the file.
This caused me to rewrite them to look consistent (with respect to
things like 'Port 0x%' and 'Target %d' and 'Loop ID 0x%x'.

The major mailbox function, isp_mboxcmd, now takes a third argument,
which is a mask that selectively says whether mailbox command failures
will be logged. This will substantially reduce a lot of spurious noise
from the driver.

At the first run through isp_reset we used to try and get the current
running firmware's revision by issuing a mailbox command. This would
invariably fail on alpha's with anything but a Qlogic 1040 since SRM
doesn't *start* the f/w on these cards. Instead, we now see whether we're
sitting ROM state before trying to get a running BIOS loaded f/w version.

All CFGPRINTF/PRINTF/IDPRINTF macros have been replaced with calls to
isp_prt. There are seperate print levels that can be independently
set (see ispvar.h), which include debugging, etc.

All SYS_DELAY macros are now USEC_DELAY macros. RQUEST_QUEUE_LEN and
RESULT_QUEUE_LEN now take ispsoftc as a parameter- the Fibre Channel
cards and the Ultra2/Ultra3 cards can have 16 bit request queue entry
indices, so we can make a 1024 entry index for them instead of the
256 entries we've had until now.

A major change it to fix isp_fclink_test to actually only wait the
delay of time specified in the microsecond argument being passed.
The problem has always been that a call to isp_mboxcmd to get he
current firmware state takes an unknown (sometimes long) amount of
time- this is if the firmware is busy doing PLOGIs while we ask
it what's up. So, up until now, the usdelay argument has been
a joke. The net effect has been that if you boot without being plugged
into a good loop or into a switch, you hang. Massively annonying, and
hard to fix because the actual time delta was impossible to know
from just guessing. Now, using the new GET_NANOTIME macros, a precise
and measured amount of USEC_DELAY calls are done so that only the
specified usecdelay is allowed to pass. This means that if the initial
startup of the firmware if followed by a call from isp_freebsd.c:isp_attach
to isp_control(isp, ISP_FCLINK_TEST, &tdelay) where tdelay is 2 * 1000000,
no more than two seconds will actually elapse before we leave concluding
that the cable is unhooked. Jeez. About time....

Change the ispscsicmd entry point to isp_start, and the XS_CMD_DONE
macro to a call to the platform supplied isp_done (sane naming).

Limit our size of request queue completions we'll look at at interrupt
time. Since we've increased the size of the Request Queue (and the
size of the Response Queue proportionally), let's not create an
interrupt stack overflow by having to keep a max completion list
(forw links are not an option because this is common code with
some platforms that don't have link space in their XS_T structures).
A limit of 32 is not unreasonable- I doubt there'd be even this many
request queue completions at a time- remember, most boards now use
fast posting for normal command completion instead of filling out
response queue entries.

In the isp_mboxcmd cleanup, also create an array of command
names so that "ABOUT FIRMWARE" can be printed instead of "CMD #8".

Remove the isp_lostcmd function- it's been deprecated for a while.
Remove isp_dumpregs- the ISP_DUMPREGS goes to the specific bus
register dump fucntion.

Various other cleanups.
2000-08-01 06:51:05 +00:00
mjacob
7bbd9bfadc Core version 2.0 rewrite. In this file we replace isp_tdebug with
isp_prt calls. We now use an argument to the  ISPCTL_FCLINK_TEST
call. We change all IDPRINTF macros to isp_prt calls. We add
the isp_prt function here.
2000-08-01 06:31:44 +00:00
mjacob
1da31893fa Core version 2.0 cleanup/rewrite. Things get rearranged and changed
quite a bit so that all of the ports have a similar set of required
macros/definitions (and in similar places in the isp_<platform>.h
file).

Some new macros/functions added- Mailbox Acquire/Relase macros,
NANOTIME macros, SNPRINTf and STRNCAT. MemoryBarrier beomes
MEMORYBARRIER with much stronger types.
2000-08-01 06:29:55 +00:00
mjacob
90bc592459 Remove isp_prtstst (now in case statement in isp.c). Remove
isp2100_fw_statename as an INLINE (now a function in isp.c). Remove
isp2100_pdb_statename (unused). Redo all ISP_SCSI_XFER_T as XS_T types.
Change all RQUEST_QUEUE_LEN/RESULT_QUEUE_LEN macros to take a parameter.
Add isp_print_bytes function.
2000-08-01 06:26:04 +00:00
mjacob
4900d339a1 Remove isp_tdebug. Change all PRINTF macros to the now common
isp_prt logging function.
2000-08-01 06:24:01 +00:00
mjacob
6bac7972dd Fix typo. Remove isp_tdebug (we'll use ISP_LOGTDEBUG2 in isp->isp_dblev
as a selector now). Change DFLT_CMD_CNT to a fixed amount for now.
2000-08-01 06:23:24 +00:00
mjacob
ae6e6fedab Add in lengths of SBus or PCI registers. 2000-08-01 06:21:21 +00:00
mjacob
add29bbf34 Rewrite for version 2.0. Some structural changes, but also
a substantial amount of commenting about what each platform
specific definitions are supposed to be.
2000-08-01 06:10:21 +00:00
mjacob
4c7c897ac9 Part of major rewrite for core version 2.0- clarification of
mdvec structure, removal of printf/CFGPRINTF in place of isp_prt
calls. Parameterization of RQUEST_QUEUE_LEN/RESULT_QUEUE_LEN.
2000-08-01 05:16:49 +00:00
cokane
2f444ea6dc Bring tdfx_pci.c in sync with some patches I have been testing. Adds better
stability for the Voodoo3/Banshee cards than there was before. Still has a
little way to go before it is completely fixed for those cards though.
2000-08-01 05:10:29 +00:00
jlemon
08a68c236b Back out rev 1.12; its not clear that this is the right thing to do,
and in any event, it wasn't done correctly in the first place.
2000-08-01 04:27:50 +00:00
nsayer
2b61c92449 Reverse the sense of the signed/unsigned formatting bit.
This dramatically cleans up playback quality, at least with mxaudio.
2000-08-01 04:18:15 +00:00
ache
cd67564f78 Back out opt_ipfilter.h creation I add recently and add -DIPFILTER=1
to CFLAGS instead
According to other sources, opt_ipfilter.h not supposed to be included for
modules
2000-08-01 00:44:42 +00:00
ache
8d0d1ec4f6 Replace nonexistent !defined(_LKM) by !defined(KLD_MODULE) 2000-08-01 00:40:32 +00:00
ache
1b638496dc Check IPFILTER (options IPFILTER generates) instead of NIPFILTER 2000-08-01 00:12:27 +00:00
ache
e457a93633 Fix prev. commit: NIPFILTER -> IPFILTER 2000-08-01 00:10:08 +00:00
ache
16cb133f9b Add missing '0' to FreeBSD_version test: 50011 -> 500011 2000-08-01 00:04:24 +00:00
ache
6692152318 Generate opt_ipfilter.h to fix 'make depend' 2000-07-31 23:58:38 +00:00
ache
31d77bcfb1 Nonexistent <sys/pfil.h> -> <net/pfil.h>
Kernel 'make depend' fails otherwise
2000-07-31 23:41:47 +00:00
ache
739d46b2ab Nonexistent "ipfilter.h" -> "opt_ipfilter.h"
Kernel 'make depend' fails otherwise
2000-07-31 23:35:08 +00:00
nsayer
ca266056f4 Add the module Makefile for the newly committed ESS solo sound driver.
It will be connected to the parent Makefile after more testing.
2000-07-31 17:22:30 +00:00
cg
fb1049d339 almost-there ess solo-1 driver, committed so people can tell me why it
doesn't generate irqs.
2000-07-31 16:17:40 +00:00
luoqi
c3d52a9a3e Handle write page faults (both write only or read-modify-write) as MI vm
write-only faults.  This would allow write-only mmapped regions to function
correctly.
2000-07-31 14:47:14 +00:00
sheldonh
c07b9583c6 Whitespace only:
Fix an overlong line and trailing whitespace that crept in, in the
previous commit.
2000-07-31 13:49:21 +00:00
darrenr
d18ce92d58 activate pfil_hooks and covert ipfilter to use it 2000-07-31 13:11:42 +00:00
n_hibma
cf7c041ce2 Support for the Panasonic / Matshita USB FDD.
Submitted by:		SAKIYAMA Nobuo <sakichan@lares.dti.ne.jp>
PR:			kern/20300
2000-07-31 12:40:26 +00:00
alfred
36e9193ef5 mbstat should be a read-only sysctl.
Submitted by: Bosko Milekic <bmilekic@dsuper.net>
2000-07-31 09:24:32 +00:00
ps
7961d6fd99 Remove unnecessary call to splnet when setting an accept filter
since we are already at splnet.
2000-07-31 08:23:43 +00:00
cg
0c173f44b3 add suspend/resume for yamaha chips
Submitted by:	Ira L Cooper <ira@MIT.EDU>
2000-07-30 21:15:35 +00:00
phk
c4e079d075 Allow use of TSC even if APM is compiled in but disabled. 2000-07-30 21:05:22 +00:00
cg
8bfb4dc90b fix a potential local DoS attack 2000-07-30 19:38:26 +00:00
cg
9446f7ff16 fix a bug where opening /dev/dsp twice resulted in it being busy until reboot 2000-07-30 19:36:13 +00:00
steve
2b5e1f727b Spell the word 'limited' with only one 't'. 2000-07-30 17:54:34 +00:00
nyan
a020d75805 Merged from sys/dev/syscons/scterm-sc.c revisions from 1.8 to 1.12. 2000-07-30 08:12:08 +00:00
nyan
d7fff2a15c Merged from sys/dev/syscons/syscons.c revision 1.344. 2000-07-30 07:59:19 +00:00
nyan
f772c8fd80 Merged from sys/boot/i386/btx/btx/btx.s revisions from 1.18 to 1.22. 2000-07-30 07:45:02 +00:00
cg
24f340732c do the ac97 init delay for all chips and increase it to 500ms 2000-07-30 02:33:37 +00:00
peter
09f2cc343d Regen. (Fix SYS_exit) 2000-07-29 10:07:38 +00:00
peter
2acd9c62a7 Sigh. Fix SYS_exit problems. I misunderstood the significance of these
trailing options.
2000-07-29 10:05:25 +00:00
ps
7588cd1d2a Remove this file incase of further confusion. 2000-07-29 04:09:07 +00:00
obrien
6b1c00b251 Move RAID controllers to the same position as in i386 GENERIC. 2000-07-29 02:13:42 +00:00
obrien
44130dcae1 Revert previous commit. Not all RAID controllers are SCSI. 2000-07-29 02:12:44 +00:00
obrien
0c8f766fe2 Move the RAID controllers next to the SCSI controllers. 2000-07-29 02:00:28 +00:00
nsayer
7d8d00c304 Make the bridge_refresh operation automatic when ethernet interfaces
are attached or detached.
2000-07-29 02:00:12 +00:00
obrien
ff7cd1f740 Add the RAID controller that are known to work (or did on last test).
Reviewed by: 	msmith
2000-07-29 01:59:32 +00:00
obrien
bce65d4ea4 Comment out ncr' as sym' handles all that `ncr' does.
(only commented out to make it easy for people to find it that really
 wants it.)

Asked for by:	Peter
2000-07-29 01:31:09 +00:00