Commit graph

49457 commits

Author SHA1 Message Date
Warner Losh 1e4742f217 Almost make loading work. This is a checkpoint. With these change we
can almost kldload this.  More work is ncessary, but I wanted to
checkpoint this now.
2000-06-18 05:25:30 +00:00
Warner Losh b24d8193fe Add oldcard, pccard, pcic and sn modules to the build. 2000-06-18 05:20:26 +00:00
Matt Jacob 56aef50302 Clean up firmware load issues and remove darn near all config options.
Force alphas to prefer mem mapping as the default.

Basically, we have a pointer to a function which we can call which will
return us a pointer to firmware for the card we have. We call this function
(if it's non-NULL) with the address of our mdvec f/w pointer.

The way this works is that if ispfw (as a module or a static) is loaded,
it initializes the pointer in isp_pci, so we can call into to it to fetch
a pointer to a f/w set.

If ispfw is MOD_UNLOADed, it's retained a pointer to our mdvec f/w pointers,
which then get zeroed out so we don't have any references to data that's
now gone from kernel memory. Removing the f/w saves ~360KBytes.

Alas, there is no autounload mechanism that works for is here.
2000-06-18 05:18:55 +00:00
Matt Jacob 67bf0f9cc3 Remove all but one (ISP_TARGET_MODE) option for isp. 2000-06-18 05:15:01 +00:00
Warner Losh 660e6453d4 Preliminary commit of oldcard module. This might not work, but will.
This should allow one to load oldcard or newcard for testing.  Please
let me know if this doesn't work.  Don't load this and either of pcic
or pccard.  I've not tried it, but I suspect bad things will happen.
2000-06-18 05:08:57 +00:00
Matt Jacob 24e83068e7 add ispfw module 2000-06-18 05:08:36 +00:00
Matt Jacob f4b90f9d1c add if_wx module 2000-06-18 05:08:28 +00:00
Matt Jacob 1249f27c63 Add if_wx && ispfw modules 2000-06-18 05:08:11 +00:00
Warner Losh 265be3e08a Add new functions. Also add comments to existing functions. These
are needed for the pccard changes I've just committed.
2000-06-18 05:02:09 +00:00
Matt Jacob 526539764e Removing this bulky one large f/w file. This f/w is now in dev/ispfw. 2000-06-18 04:59:47 +00:00
Warner Losh 6cd40f893b o Implement some compatibility functions for NEWCARD compat. This is
incomplete, but will eventually allow the same drivers to function
  with both oldcard and newcard.
o Remove include of opt_bus.h.  It isn't needed and gets in the way of
  module building.
2000-06-18 04:59:39 +00:00
Matt Jacob fb1d37adcd Once we have firmware running (if isp_reset) and this is the first time
through, establish what our LUN width is. Unfortunately, we can't ask
the f/w. If we loaded the f/w, we'll now assume we have expanded LUNs
(SCCLUN for fibre channel, just plain 32 LUN for SCSI). If we didn't
load firmware, assume 8 LUNs for SCSI and 1 LUN for Fibre Channel. We
have to assume only one LUN for Fibre Channel because the LUN setting
in Request Queue entries is in different places whether we have SCCLUN
firmware or not, so the only LUN guaranteed to work for both is LUN 0.

Clean up the rest of isp.c so that ISP2100_SCCLUN defines aren't used-
instead use run time determinants based upon isp->isp_maxluns.

After starting firmware, delay 500us to give it a chance to get rolling.

Fix the interrupt service routine to check for both isr && sema being zero
before thinking this was a spurious interrupt.  Following the manuals,
allow for both Mailbox as well as Queue Reponse type interrupts for regular
SCSI.
2000-06-18 04:56:17 +00:00
Matt Jacob 2ad50ca5f4 Remove all ISP2100_SCCLUN define protected code and replace it with
runtime checks.
2000-06-18 04:50:26 +00:00
Matt Jacob 2133e16f18 Remove all ISP2100_SCCLUN define based code and replace it with runtime
comparisons against the tag isp_maxluns- if > 16, we're SCCLUN based.

On initial regular SCSI startup, disable auto-disconnect.
2000-06-18 04:48:28 +00:00
Matt Jacob be44b164d0 Roll platform minor number. Force definition of SCSI_ISP_FABRIC
(we always support fabric now). Remove SCCLUN definition (we always
support SCCLUN now, if we load the f/w). Add typedef definition of an
external firmware fetch function.
2000-06-18 04:47:12 +00:00
Matt Jacob 5e09512c51 Roll core minor version. Set ISP_MAX_LUNS to be off of new isp_maxluns
tag in softc.
2000-06-18 04:45:51 +00:00
Matt Jacob d22fcb6b75 add "disable autodisconnect" flags 2000-06-18 04:44:41 +00:00
Warner Losh e6e799d2bc Make pcic compile again with newcard 2000-06-18 04:44:40 +00:00
Matt Jacob 22e83dac1e cleanup i_int_X vs. uint_X definitions 2000-06-18 04:43:55 +00:00
Warner Losh bd1c6cf298 Build sn as a module 2000-06-18 04:43:29 +00:00
Matt Jacob ee9fc94ca5 add MBOX_GET_RESOURCE_COUNT command 2000-06-18 04:41:14 +00:00
Matt Jacob aae4f8bb77 Add in (separate files for different board's firmware) new files for ispfw
loadable module.
2000-06-18 04:37:44 +00:00
Matt Jacob fb75f116db Fix breakage where we never were attaching SES devices because inq_len
was not being set > 0.
2000-06-18 04:19:08 +00:00
David Nugent 6b13b96dad Fix obvious braino in assignment statement. usermod -g should work again.
PR:		17877
Submitted by:	pius@zyan.com
2000-06-18 02:48:56 +00:00
Bill Fumerola 976a1c9106 Reorder the "prob" section in the output of list/show so it can be copy/pasted
into add without problems.

The previous commit had the other half of this original patch which handled
tcpflags/tcpflgs confusion in output/input.
2000-06-18 02:48:19 +00:00
David Nugent c4e667b9d7 Be a little more strict about handling command line args. This allows user and
group names like 'help' 'mod' 'user' 'group' etc. to work correctly without
requiring the -n style invocation.
PR:		misc/17069
2000-06-18 02:39:17 +00:00
David Nugent 25fa020ea5 Fix a long-standing bug in the rename case previously masked by another bug
just fixed in .db file updating.
2000-06-18 02:18:15 +00:00
David Nugent f52bcb0a5c Second and hopefully final fix to .db sync when renaming a user; we must run
a full reindex in this case to remove the old record. #ifdef -u capability
since this is available on FreeBSD only.
PR: bin/16418
Problem pointed out by:	Masachika ISHIZUKA <ishizuka@ish.org>
2000-06-18 02:16:07 +00:00
Matt Jacob 74c7cee09a Add wx and ispfw loadable module defaults. 2000-06-17 23:09:51 +00:00
Peter Wemm c46d792d58 Deal with quoted arguments. This hack parser uses whitespace to delimit
fields, not lex/yacc grammar so it is not an exact match but should be
close enough for most cases.
Deal with 'port?', 'irq?' style specifications.  These are parsed as
seperate values in lex/yacc in config(8) but tripped up this helper tool.
2000-06-17 20:10:55 +00:00
Wilko Bulte 86e7756c4f Clarify (I hope..) what a hose is. One gets used to DEC (nee, CPQ) speak
all too easily.

Submitted by: Alec Wolman
2000-06-17 20:04:03 +00:00
Cameron Grant fa5e422d98 replace a line erroneously removed in 1.28, should fix xmms
make buf_clear handle unaligned lengths
2000-06-17 19:29:40 +00:00
Peter Wemm 7ebe1c3acf Use while (<>) instead of while(<STDIN>) so that perl will automagically
deal with filename arguments.  It is amazing how much you forget over time.

Thanks to the people that reminded me this.  I knew there was an easy way
that didn't involve messing with $argv, filehandles, etc, but just could
not remember - all of my books are on the opposite side of the planet..
2000-06-17 19:06:13 +00:00
Yoshihiro Takahashi c04eccbd1e - Moved "hint" informations to GENERIC.hints.
- Cosmetic changes.
2000-06-17 14:46:20 +00:00
Josef Karthauser 141d77b8cb Switch over to using the new fflagstostr and strtofflags library calls. 2000-06-17 14:19:33 +00:00
Josef Karthauser 0a266c86a2 Make a note of fflagstostr and strtofflags in the 'see also' section. 2000-06-17 14:03:34 +00:00
Josef Karthauser c5bb91d1b2 Add strtofflags and fflagstostr to libc. 2000-06-17 11:55:57 +00:00
Josef Karthauser 8c7bdc130e Modify strtofflags so that it returns a malloced string instead of a
pointer to a static buffer.
2000-06-17 11:09:24 +00:00
David E. O'Brien 7684b08b56 Add back "NO_MODULES" as using ``make -DMODULES_WITH_WORLD'' in the
kernel build dir doesn't really say what your intentions are.
2000-06-17 10:56:15 +00:00
David E. O'Brien f94a3783cf If "MODULES_WITH_WORLD" is defined, sys/modules will be built with the
world as was our old way, rather than when building a kernel.

Some people do not like the new way, and the release building still assumes
modules are built with the world.
2000-06-17 10:51:56 +00:00
John Baldwin 1ddb0ab555 Add support for emulating the RDMSR and WRMSR instructions into BTX. In
theory, this should allow the K7V Athlon motherboard to boot ok with boot
virus protection enabled.  However, I have no hardware to test this.  It
shouldn't break anything though. :)

Prodded by:	Kelly Yancey <kbyanc@posi.net>
2000-06-17 06:45:40 +00:00
KATO Takenori 2d43b347ec Merged from sys/isa/syscons_isa.c revision 1.13. 2000-06-17 04:54:50 +00:00
KATO Takenori 869f0b9b22 bs, olpt, pckbd are static limited devices. 2000-06-17 03:58:06 +00:00
Josef Karthauser d502d9ac46 The "def" arg for fflagstostr is too specialized for ls. The caller
can easily translate from "" to whatever it wants to print if no
flags are set.  (ls prints "-" and mtree prints "none".)

Suggested by:	bde
2000-06-17 01:43:56 +00:00
Josef Karthauser b81eeaf0a6 Return of the evil file flags! The {s|g}etflags functions were
renamed to {s|g}etflagsbyname, which received objections.   They're
now called strtofflags (string to file flags) and fflagstostr (file
flags to string).

Suggested by:	bde
2000-06-17 01:28:13 +00:00
Ruslan Ermilov b766604065 - Improved passive mode FTP support by aliasing 229 replies.
- Stricter checking of PORT/EPRT/227/229 messages format.
- Moved all security checks into one place.
2000-06-16 20:36:16 +00:00
Bill Paul b106252c19 Implement SIOCSIFLLADDR, which allows you to change the link-level
address on an interface. This basically allows you to do what my
little setmac module/utility does via ifconfig. This involves the
following changes:

socket.h: define SIOCSIFLLADDR
if.c: add support for SIOCSIFLLADDR, which resets the values in
      the arpcom struct and sockaddr_dl for the specified interface.
      Note that if the interface is already up, we need to down/up
      it in order to program the underlying hardware's receive filter.
ifconfig.c: add lladdr command
ifconfig.8: document lladdr command

You can now force the MAC address on any ethernet interface to be
whatever you want. (The change is not sticky across reboots of course:
we don't actually reprogram the EEPROM or anything.) Actually, you
can reprogram the MAC address on other kinds of interfaces too; this
shouldn't be ethernet-specific (though at the moment it's limited to
6 bytes of address data).

Nobody ran up to me and said "this is the politically correct way to
do this!" so I don't want to hear any complaints from people who think
I could have done it more elegantly. Consider yourselves lucky I didn't
do it by having ifconfig tread all over /dev/kmem.
2000-06-16 20:14:43 +00:00
Satoshi Asami 8f76bcf052 Add a few directories that were shared by a lot of ports: section 3
of perl man pages and site_perl directories for alpha and i386 in /usr/local,
and share/aclocal and share/doc/ja in /usr/local and /usr/X11R6.

Reviewed by:	the ports list
Approved by:	steve (alpha part)
2000-06-16 19:08:19 +00:00
KATO Takenori 339d78c806 Merged from sys/conf/Makefile.i386 revisions 1.192 and 1.193. 2000-06-16 16:36:50 +00:00
Poul-Henning Kamp 7c50d77218 Revert part of my bioops change which implemented panic(8). 2000-06-16 14:32:13 +00:00