39042 Commits

Author SHA1 Message Date
jdp
5360158df2 Shake hands with GDB a little bit earlier so that it is possible to
debug the init functions.

Submitted by:	dfr
1999-07-03 23:54:02 +00:00
n_hibma
59faa57fca Add the semi-official Bulk protocol id 'P' 1999-07-03 22:19:41 +00:00
imp
dd9032408f Latest updating changes for softupdates, inetd and newsysconfig. 1999-07-03 22:15:43 +00:00
jdp
32460a339d Update pathnames for new location of soft-updates sources. 1999-07-03 21:34:05 +00:00
jdp
52fde42501 Update comment for new location of soft-updates sources. 1999-07-03 21:31:00 +00:00
jdp
72c3c087ef Remove the soft-updates sources from their original location. They
have been repository-copied to "src/sys/contrib/softupdates".
1999-07-03 21:26:34 +00:00
mjacob
2d5908293e Make the change similar to that suggested by Nick Hibma to avoid divide by
zero traps. I actually can't believe that this compiler is *sooooo* stupid
that it did a divide when there was 1024L*1024L instead of a right shift by
20. When we get quad type modifiers in kernel printf we can change to this
too (to avoid overflow on > terabyte disk sizes).
1999-07-03 21:14:45 +00:00
peter
28a5174c43 printf int/dev_t (pointer) warning 1999-07-03 21:03:56 +00:00
peter
0c747eafde Delete stray static prototype. 1999-07-03 21:02:09 +00:00
peter
b5f8a8174d Stop rfork(0) from panicing. (oops!!)
Submitted by:	Peter Holm <peter@holm.cc>
1999-07-03 20:58:44 +00:00
peter
e5f4c63f13 Eliminate a bunch of #include "pci.h" and #if NPCI > 0 around entire
files.  config will leave the whole file out if configured to do so.
1999-07-03 20:17:08 +00:00
imp
7afdd102ca Improve compatibility with other systems by changing the default
behavior slightly.

If machine/bus.h is included, but neither bus_memio.h nor bus_pio.h
are included, then behave as if both were included.

This won't change existing drivers, all of which include one or more
of bus_{p,mem}io.h, but will allow drivers from other systems to come
over with fewer changes.  I freely admit that this might not be
optimal for some drivers, but those drivers can be optimized for
FreeBSD after the initial bringup happens.

Without the change, there is a bug that preclude drivers from
compiling with strange warning/errors.

I've been running this here for a while now w/o ill effects.

Reviewed by: gibbs
Not objected to by: bde, arch@ list.
1999-07-03 20:14:08 +00:00
n_hibma
ea38793462 Remove bogus argument to LIST_HEAD_INITIALIZER 1999-07-03 20:04:53 +00:00
peter
be406231c5 Delete special handling for 'device-driver' suffix, it's not used in
the kernel source now.
1999-07-03 19:22:52 +00:00
peter
060339e52c Delete the 'device-driver' suffix. It's been meaningless for a long time.
On the VAX, it used to be used for special compilation to avoid the
optimizer which would mess with memory mapped devices etc.  These days
we use 'volatile'.
1999-07-03 19:19:34 +00:00
peter
93cec9300e Only have the pci component compiled if pci is specified at config.
Remove #if NPCI > 0 as a result.
1999-07-03 18:34:04 +00:00
peter
0a72bd402e Move bt_isa.c to the cpu-independent isa section. 1999-07-03 18:26:25 +00:00
peter
05cb15a7d4 Fix warnings in last commit (dev_t is not an int, and not even int
compatable in arg lists on the Alpha)
1999-07-03 17:40:31 +00:00
peter
6bf98e7293 A minor tweak to shut up gcc (on the Alpha) for two (false) warnings.
How it can think that something that is initialized at declaration can
be used while uninitialized is beyond me.
1999-07-03 16:29:32 +00:00
dt
70ccb43727 Don't ignore weak symbols.
EGCS assign weak symbols to inline functions it couldn't inline (e.g. virtual
inline functions), template functions, etc. Omitting them result in quite bogus
profile.

Weak symbols created by __weak_reference are not really problem.

Caught by:	Ilya Segalovich <iseg@comptek.ru>
1999-07-03 12:30:04 +00:00
des
1e1f8ed63c Reverse the FTP_PASSIVE_MODE check, so it checks for "is not NO" rather
than "is YES".
1999-07-03 10:10:50 +00:00
kato
ff830804c6 Added copyright.
Pointed out by:	yokota
1999-07-03 08:50:45 +00:00
kato
23d33e12e7 Removed unused files. 1999-07-03 08:45:16 +00:00
kato
a4c978543a Moved LCD controle routine for certain models of EPSON laptops into
suitable place.

Submitted by:	yokota
1999-07-03 08:44:32 +00:00
kato
e386828d08 Sync with sys/i386/i386/machdep.c revision 1.349. 1999-07-03 08:31:32 +00:00
phk
b44eacea56 Be more informative and try to ask the user in some instances if we can't
figure out the root device.
1999-07-03 08:24:00 +00:00
phk
1d20b72ec5 Bail after 5 attempts to read very noisy signals. 1999-07-03 08:23:00 +00:00
phk
88fd41ff5b Warn about drivers which take over other drivers cdevsw entries, but still
grant them squatters right.
1999-07-03 08:22:30 +00:00
kato
eb89e8de9b Sync with sys/i386/conf/majors.i386 revision 1.78. 1999-07-03 08:18:27 +00:00
kato
8e401c5fd4 Sync with sys/i386/conf/Makefile.i386 revision 1.157. 1999-07-03 08:17:40 +00:00
bde
9a448e1653 Fixed regression of $Id$ to "from: $Header$" in previous commit.
The `from:' was already corrupted by expansion of $Header$ in in
rev.1.1; rev.1.2 replaced it by $Id$.  Put $Id$ in the usual place
this time.
1999-07-03 06:48:02 +00:00
alc
29ea153b13 An SMP-specific change: Add the lock prefix to RMW operations
on ipending.
1999-07-03 06:33:48 +00:00
mharo
b6270032c1 wcd -> acd
Submitted by:	 Ruslan Ermilov <ru@ucb.crimea.ua>
1999-07-03 05:42:38 +00:00
green
73343338eb sys/buf.h needs to have included sys/systm.h for spl prototypes. 1999-07-03 04:56:57 +00:00
green
ec9b09edeb It's really mP6.
:)
1999-07-03 01:56:58 +00:00
mjacob
27c7b98382 Well, don't try and probe 65535 luns- things just don't really work well
when this happens. Limit to 16 luns for the 2100/2200 for now.
1999-07-03 01:44:05 +00:00
msmith
c6401b83c6 Bump maxusers to 32 to match the i386.
Remove the gzip pseudo-device, since the Alpha never did a.out.
Add the 'wb' driver since it is supported.
1999-07-03 01:35:51 +00:00
grog
ed93915465 Add definitions for simplified config commands
Change definition of sflag

Reported-by:	Johan Karlsson <k@numeri.campus.luth.se>
		Doug <Doug@gorean.org>
		green

World-broken-by:	grog
Pointy-hat-passed-to:	grog
1999-07-02 23:57:45 +00:00
mjacob
d6b6f6217d Remove pre-CAM code. Add in getenv_int calls for variables isp_mem_map,
isp_io_map, isp_no_fwload, isp_fwload, isp_no_nvram, isp_fcduplex
which are all bitmaps of isp instances that should or shouldn't
map memory space, I/O space, not load f/w, load f/w, ignore nvram,
not ignore nvarm, set full duplex mode. Also have an isp_seed value
that we can use to generate a pseudo seed for a synthetic WWN.
Other minor cosmetic cleanup. Add in support for the Qlogic ISP
2200. Very important change where we actually check now to see
whether we were successful in mapping request and response queues
(and fibre channel scratch space).
1999-07-02 23:18:03 +00:00
mjacob
6f32038c30 Remove all pre-CAM code. Fix breakage for SCCLUN when it is in fact
ISP2100_SCCLUN. Make changes for how ISPASYNC_PDB_CHANGE_COMPLETE
is now ISPASYNC_PDB_CHANGED. Add in ISPASYNC_FABRIC_DEV case.
1999-07-02 23:12:58 +00:00
mjacob
20edd70b1f Merge defunct isp_freebsd_cam.h into this file. Do some appropriate
changes like rolling minor revision levels and defines where we now
do default WWN seeding in the platform files.
1999-07-02 23:10:34 +00:00
mjacob
1c323f5567 Roll revision levels. Add support for the Qlogic 2200 (warn about
not having SCSI_ISP_SCCLUN config defined if we don't have f/w for
the 2200- it's resident firmware uses SCCLUN (65535 luns)). Change
the way the default LoopID is gathered (it's now a platform specific
define so that some attempt at a synthetic WWN can be made in case
NVRAM isn't readable).

Change initialization of options a bit- don't use ADISC. Set
FullDuplex mode if config options tells us to do so. Do not use
FULL_LOGIN after LIP- it's the right thing to do but it causes too
much loop disruption (Loop Resets). Sanity check some default
values. Redo construction of port and node WWNs based upon what we
have- if we have 2 in the top nibble, we can have distinct port
and node WWNs. Clean up some SCCLUN related code that we obviously
had never compiled (:-(). Audit commands coming int ispscsicmd and
don't throw commands at Fibre devices that do not have Class 3
service parameters TARGET ROLE defined.

Clean up f/w initialization a bit. Add Fabric support (or at least
the first blush of it). Whew - way too much to describe here.
Basically, after a LIP, hang out until we see a Loop Up or a Port
DataBase Change async event, then see if we're on a Fabric
(GET_PORT_NAME of FL_PORT_ID). If we are, try and scan the fabric
controller for fabric devices using the GetAllNext SNS subcommand.
As we find devices, announce them to the outer layer. Try and do
some guard code for broken (Brocade) SNS servers (that get stuck
in loops- gotta maybe do this a different way using the GP_ID3 cmd
instead).  Then do a scan of the lower (local loop) ids using a
GET_PORT_NAME to see if the f/w has logged into anything at that
loop id. If so, then do a GET_PORT_DATABASE command.  Do this scan
into a local database. At this point we can say the loop is 'Ready'.
After this, we merge our local loop port database with our stored
port database- in a as yet to be really fully exercised fashion we
try and follow the logic of something having moved around. The
first time we see something at a Loop ID, we fix it, for the purpose
of this system instance, at that Loop ID. If things shift around
so it ends up somewhere else, we still keep it at this Loop ID (our
'Target') but use the new (moved) Loop ID when we actually throw
commands at it. Check for insane cases of different Loop IDs both
claiming to have the same WWN- if that happens, invalidate both.
Notify the outer layer of devices that have arrived and devices
that have gone away. *Finally*, when this is done, search the
softc's database of Fabric devices and perform logout/login actions.
The Qlogic f/w maintains logout/login for all local loop devices.
We have to maintain logout/login for fabric devices- total PITA.
Expect to see this area undergo more change over time.
1999-07-02 23:06:38 +00:00
msmith
a3f36742ce Mention the Rise MP6, list merged items. There are probably a pile more
changes that need to be listed here.
1999-07-02 23:04:28 +00:00
mjacob
858e488283 Roll revision levels. Move DEFAULT_LOOPID definition to platform files.
Change some fcp parameter structures such that we can get the portid
(24 bit value), get both node and port WWN, know whether we're on a fabric
or not, note whether we've ever seen the loop up, and note the current
state of the loop.

Replace the isp_pdb_t structure in fcparams with a reduced cost structure
that maintains a static relationship to 'Target', but can have the actual
loop ID used change (in case, post LIP, we discover things have moved
around). This also retains portid and node/port WWNs.  This array gets
larger if we have fabric support compiled in.

Note special loop IDs that are invariate for this device- FL_PORT_ID
(0x7e) which tells us if there's a fabric controller present, FC_PORT_ID
and FC_SNS_ID (fabric controller port and fabric SNS server port). We don't
use the latter two for anything. IDs above FC_SNS_ID up through 255 are
available for mapping fabric devices to 'target' ids.

Add in a config define to set FC full duplex mode. Add in a define to
recognize the Qlogic 2200 boards. Add comments about ISPCTL commands.
Add and change some ISPASYNC enumes.
1999-07-02 22:46:31 +00:00
jkh
09d2fcf7ce Eliminate some varargs abuse. 1999-07-02 22:36:14 +00:00
mjacob
f83d767929 Add in SNS and Fabric login/logout commands. Clean up ICBOPT defines.
Remove INVALID_PDB_OPTIONS defines. Define generic SNS request and
response structures and the bare minimum GAN and GP3 subcommands.
1999-07-02 22:31:11 +00:00
mjacob
2ccc70b276 This file is now obsolete. 1999-07-02 22:26:10 +00:00
billf
36415d9fe3 Remove unused variable.
Approved By:	phk
1999-07-02 20:46:03 +00:00
msmith
2b045d409d Document the hw.physmem tunable. (There should be arch-specific tunable
help sections.)
1999-07-02 20:38:05 +00:00
msmith
070bfcfed0 Lightly overhaul the memory sizing code again.
- The kernel environment variable 'hw.physmem' can be used to set the
   amount of physical memory space, based at 0, that FreeBSD will use.
   Any memory detected over this limit is ignored.  Documentation for
   this is available under 'help set tunables' in the loader.

 - In the case where system memory size can't be accurately determined,
   hw.physmem is used as a best-guess memory size, but speculative
   probing will be used to determine actual memory size if any of the
   guesses or hints are 16M or more.

 - If RB_VERBOSE, we list the memory regions as we test them.

 - The compile-time option MAXMEM supplies a default value for
   'hw.physmem'.
1999-07-02 20:33:32 +00:00