Commit Graph

2336 Commits

Author SHA1 Message Date
n_hibma
c4c0aca572 1) Add AKS USB-HASP 0.6
2) Rename Lucent -> Epson
   (Undoes previous commit, Mike agrees)
1999-04-08 23:13:17 +00:00
msmith
1ee563c71e Add the Lucent USS-720 ISD Smart Cable. 1999-04-08 20:50:51 +00:00
gibbs
de16b337d5 Correct an invalid (and unused) #define in 93cx6.c
Freeze the transaction queue for any type of scsi status other than "okay".
1999-04-07 23:02:45 +00:00
gibbs
a1b3f1572f Improve bt_cmd() so that it has a better chance of working when there
are pending I/O transactions.  It is not clear that is works 100% of
the time under SMP, but since the bt_cmds() that are sent after other
CPUs are started are not critical, the driver will function until I
can figure out why this is the case.
1999-04-07 23:01:43 +00:00
gibbs
40a8ff6ee5 Beef up the error handling routine to handle more errors.
Compensate for a bug in the AdvanSys firmware where a valid queue
full condition can be reported via a different error code.
1999-04-07 22:59:12 +00:00
n_hibma
248c7f5396 Added macro logprintf 1999-04-07 17:07:07 +00:00
n_hibma
172c870545 fix typo 1999-04-06 23:09:58 +00:00
wpaul
7703b10169 Remove teensy-weensy bit of debug code that crept in.
Oh, I forgot to mention: this driver also works on FreeBSD/alpha (big
thanks to Andrew Gallatin). And there is a 2.2.x version available for
those who stubbornly refuse to upgrade.
1999-04-06 22:56:21 +00:00
phk
bc289e7b88 failled spell-check 1999-04-06 21:15:18 +00:00
wpaul
0848cf3290 Add driver support for gigabit ethernet adapters based on the Alteon
Networks Tigon 1 and Tigon 2 chipsets. There are a _lot_ of OEM'ed
gigabit ethernet adapters out there which use the Alteon chipset so
this driver covers a fair amount of hardware. I know that it works with
the Alteon AceNIC, 3Com 3c985 and Netgear GA620, however it should also
work with the DEC/Compaq EtherWORKS 1000, Silicon Graphics Gigabit
ethernet board, NEC Gigabit Ethernet board and maybe even the IBM and
and Sun boards. The Netgear board is the cheapest (~$350US) but still
yields fairly good performance.

Support is provided for jumbo frames with all adapters (just set the
MTU to something larger than 1500 bytes), as well as hardware multicast
filtering and vlan tagging (in conjunction with the vlan support in
-current, which I should merge into -stable soon). There are some hooks
for checksum offload support, but they're turned off for now since
FreeBSD doesn't have an officially sanctioned way to support checksum
offloading (yet).

I have not added the 'device ti0' entry to GENERIC since the driver
with all the firmware compiled in is quite large, and it doesn't really
fit into the category of generic hardware.
1999-04-06 17:08:31 +00:00
peter
ccd3191cd0 Use reference counted PHOLD/PRELE rather than the P_PHYSIO flag. 1999-04-06 03:06:51 +00:00
n_hibma
a1fd749409 1) Add the defines for the Mass Storage class
2) Add comments
	3) Add UE_DIR to replace the querying of UE_IN directly
1999-04-05 17:23:54 +00:00
n_hibma
495c3cdf3c change wrong names in prototypes (pipe to dev) 1999-04-05 17:19:48 +00:00
n_hibma
9aa2d86130 Add the defines for the Iomega Zip 100 drive 1999-04-05 17:12:46 +00:00
n_hibma
e64bcefc92 bugfix: initialise timeout for usbd_device_request as well.
moved statements around to reflect sequence in the struct, to make
	finding these discrepancies easier.
1999-04-05 17:01:52 +00:00
peter
00f4adf5c9 Make ppbus compile under egcs. I'm not sure about this casting-to-union-
-containing-the-type stuff, but gcc seemed to do it implicitly..
1999-04-05 15:43:11 +00:00
grog
7eb81fb1ff Add debug flag DEBUG_EXITFREE to log problems freeing memory on exit. 1999-04-05 04:03:45 +00:00
grog
7219232cce remove_plex: If we don't find the plex in a volume to which it
claims to belong, remove it anyway.
1999-04-05 04:02:59 +00:00
grog
d7a05d00ac free_vinum: Clean out bdevsw entry before unloading kld.
Repeatedly-tripped-over-by: Vallo Kallaste <vallo@matti.ee>

		When VINUMDEBUG is set, free any memory found still
		allocated.

		Only log errors if DEBUG_EXITFREE is set.
1999-04-05 04:02:09 +00:00
mjacob
1fc628cd57 Make firmware revision a triple. Clean up some FC init stuff for
board versions with no BIOS. Separate mailbox interrupts from
IOCB interrupts. Read OUTMAILBOX5 while RISC_INT is active- not
after you clear it (potential race condition). Clear out older broken
BIG_ENDIAN goop. Don't negotiate narrow/async for LVD busses at startup
if already in LVD mode. Note usage of presumptive 1040C revision. For
all the LIP, PDB Changed, Loop UP/DOWN async events, mark fw state
as unknown as well as marking the need to do a getpdb on targets- after
a LIP for certain the f/w has to do PRLI/PLOGI for all targets again
and marking f/w state as unknown gives us a fighting chance to (start
to) hold up for that to complete.
1999-04-04 02:28:29 +00:00
mjacob
a058eb55c5 oops on this last 1999-04-04 02:22:42 +00:00
mjacob
46d9d78941 F/W revisions now a tuple (not a duple). Fix pre-CAM code. 1999-04-04 01:35:03 +00:00
mjacob
30d56c86c6 Fix for pre-CAM kernels (again). Turn back on fast posting. 1999-04-04 01:34:06 +00:00
mjacob
4f9be955d3 Remove incorrect BIG_ENDIAN defines and substitute in the SBus only macros
that will SBusify an isp header or the lun/target portions of a request IOCB-
and have these only valid iff __sparc__ (no non-sparc SBus machine that *I*
know about).
1999-04-04 01:32:09 +00:00
mjacob
4e1fcc131a Change f/w revision to major,minor,micro version. Add in ISP1040C definition. 1999-04-04 01:26:08 +00:00
mjacob
4fee0e4f25 roll ISP1040 and ISP2100 f/w to latest release 1999-04-04 01:20:25 +00:00
mjacob
ae55ec5c4d Read the board revision and trim cache line size back from 16 to 1
for early revision 2100 boards. Make sure to turn ROM off for these
boards.
1999-04-04 01:14:02 +00:00
n_hibma
3339395160 added vision camera 1999-03-31 23:53:48 +00:00
nsayer
a319323dd6 Add support for bridging to if_tx.c
PR:		10534
Submitted by:	nsayer
1999-03-31 13:50:52 +00:00
grog
271303fae5 Destaticize some variables to allow checking on them when exiting. 1999-03-31 08:43:12 +00:00
grog
c97de30901 daemonq_return request: Clean up request queue and free all memory
before returning to die.
1999-03-31 08:42:52 +00:00
grog
c6dd405652 free_drive: free the drive free list if it has one. 1999-03-31 08:42:04 +00:00
grog
9099a42364 vinumattach: Remove some really old, dead cruft.
free_vinum:	Wait for daemon to stop by checking the
		vinum_conf.flags & VF_DAEMONOPEN.

vinum_modevent:
		When compiled with VINUMDEBUG, check if we have
		forgotten to free any memory, and log an error if we
		have.

vinumopen:	Allow open of an empty subdisk (otherwise we can't
		initialize it).
1999-03-31 08:41:18 +00:00
nsayer
808e2fca86 SX ISA cards are only 32k wide in 8 bit mode (which is the only
mode supported by the manufacturer).

PR:		6255
Submitted by:	nsayer
1999-03-30 21:22:39 +00:00
phk
94e37f09bf Organize the various modes (CISCO/AUTO/DEMAND/LEASED) a little bit better,
centralize the code.

Remember to call TLF/TLS on the hardware in CISCO mode.
1999-03-30 13:28:23 +00:00
sos
5e62c4f092 Make ISA only systems compile again.. 1999-03-30 13:09:47 +00:00
grog
f2d3153813 Add flag VF_CREATED 1999-03-30 05:01:42 +00:00
grog
b5143f0779 Change the lengths of many ioctl parameters, which occasionally caused
EFAULTS due to sloppy programming.
1999-03-30 05:01:23 +00:00
grog
26fa5a4ce2 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

VINUM_<object>CONFIG: return ENXIO rather than EFAULT if an object
doesn't exist.
1999-03-30 05:01:06 +00:00
grog
b8802e1e36 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

vinum_scandisk: increment drive use count when we find a good one.
1999-03-30 05:00:19 +00:00
grog
9de432ea42 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>

Remove unused (and braindead) functions volume_index, plex_index,
sd_index and drive_index.

Add a flag VF_CREATED for volumes.  VF_NEWBORN was being used in two
capacities, and they clashed, my Lord, they clashed.

find_object: restructure the search loop as a result of the change in
variable use.

Decrement object use count in the remove_<object> functions, not in
the free_<object> functions, which are often called with partially
initialized (and uncounted) objects.
1999-03-30 04:59:59 +00:00
grog
8898795c47 Revise use of the vinum_conf variables drives_used, subdisks_used,
plexes_used and volumes_used.  Now these fields are only informative,
and the <object>_allocated count is used for searches, etc.  This also
required checking the object state before doing things with the
presumed object.

Problems-reported-by: Kiril Mitev <kiril@ideaglobal.com>
1999-03-30 04:59:32 +00:00
yokota
2889bac5f8 Make the splash screen alternate "fade out" and "fade in" action at
regular intervals, when the module is used as a screen saver.

Submitted by: asami
1999-03-29 15:13:53 +00:00
sos
880ba5fc8e Fix bug in the Promise code that resultet in PIO always being selected. 1999-03-29 14:24:42 +00:00
sos
9062e0e85d Fourth update to the new ATA/ATAPI driver:
Well, better late than newer, but things has been hectic
around here, sorry for the long delay.

DMA support has been added to the ATA disk driver.
This only works on Intel PIIX3/4, Acer Aladdin and Promise controllers.
The promise support works without the BIOS on the board,
and timing modes are set to support up to UDMA speed. This
solves the problems with having more than one promise controller
in the same system.
There is support for "generic" DMA, that might work on other
controllers, but now you have been warned :)
More chipset specific code will come soon, I have to find testers
with the approbiate HW, more on that when I have it ready.

The system now uses its own major numbers, please run MAKEDEV
with the devices you need (ad?, acd?, afd?, ast?).
For now the disk driver will also attach to the old wd major
so one can at least boot without this step, but be warned, this
will eventually go away. The bootblocks will have to be changed
before one can boot directly from an "ad" device though.

Fixed problems:

    All known hang problems should be solved
	The probe code has been sligthly changed, this should solve
	the reports I have lying around (I hope).

    Hangs when accessing ata & atapi device on the same channel simultaniously.
	A real braino in ata_start caused this, fixed.

As usual USE AT YOUR OWN RISK!!, this is still pre alpha level code.
Especially the DMA support can hose your disk real bad if anything
goes wrong, agaiin you have been warned :)

But please tell me how it works for you!

Enjoy!

-Søren
1999-03-28 18:57:20 +00:00
grog
728125008b Add definition LongJmp for longjmp if -DVINUMDEBUG.
Change some comment texts
1999-03-28 08:55:04 +00:00
grog
fc2a161810 set_sd_state: Handle sd_empty correctly. In particular, require
force to bring a subdisk of a RAID-5 plex out of this
		state.

update_plex_state:  Rewrite yet again.
1999-03-28 08:54:48 +00:00
grog
599432167f Put some \ns in some log messages. 1999-03-28 08:54:25 +00:00
grog
124f33bf0d Add function LongJmp which checks the parameters before calling
longjmp.  I suspect that the occasional double panic may be the result
of incorrect parameters to longjmp.  This happens, of course, like the
entire file, only with -DVINUMDEBUG.
1999-03-28 08:54:03 +00:00
grog
a3698a7bf4 Remove longjmp declaration. 1999-03-28 08:53:46 +00:00
grog
5ff03966cd Add declaration for forceup () (in vinumstate.c)
Add declarations for setjmp, cmd_buf and longjmp.
1999-03-28 08:53:23 +00:00
grog
501fb36a78 Remove longjmp declaration.
give_sd_to_plex: Don't set Raid-5 subdisk state here.

config_subdisk: handle the name parameter correctly when the subdisk
		was referenced in a previous plex definition.  The
		name parameter must come first.

		Handle autosizing relatively correctly.  There is
		still a danger of losing drive space if problems
		occur with an autosized subdisk.

		Set state to empty, not up, when complete.  This also
		solves a nagging problem about enforcing the need to
		initialize RAID-5 plexes.

config_plex:    handle the name parameter correctly when the plex
		was referenced in a previous volume definition.  The
		name parameter must come first.

		Handle initial state better.

update_plex_config:
		Calculate the trim factor for RAID-5 plexes correctly.

		Set the number of down subdisks correctly when reading
		from disk config.
1999-03-28 08:53:02 +00:00
grog
f3fbfe0edd Remove longjmp declaration.
free_vinum:	Put a timeout on waiting for the daemon to die.
1999-03-28 08:52:33 +00:00
grog
c006cfc50c Add 'referenced' states to subdisks and plexes. 1999-03-28 08:52:11 +00:00
n_hibma
e2b230d44f Cleaning up of code, remove unneeded cruft and make
code more compact.
1999-03-27 23:08:44 +00:00
mjacob
40320db789 Annoying little nigglet- apparently *some* Qlogic temporarily ignore
settings you've just sent them and return random values if you follow
the set by a get. This causes problems when you latter run a Tag-enabled
command when you've command tagged mode off.
1999-03-26 00:33:13 +00:00
mjacob
8ebf9cf797 enable 1080 LVD support 1999-03-25 22:53:56 +00:00
mjacob
da1b5baebb Add in 1080 LVD support and some basis also for the 1240. The port database
printout is now enabled.
1999-03-25 22:52:45 +00:00
mjacob
e212be64fc roll internal tag level 1999-03-25 19:53:54 +00:00
mjacob
d750559380 roll internal tag level 1999-03-25 19:47:33 +00:00
n_hibma
2fe9db772f Added a number of device names: Konica, Microsoft, Macally 1999-03-24 07:46:53 +00:00
peter
bea296e258 Update Specialix download microcode for the transputer based serial host
cards from the 3.0-beta to 3.0.4 release.

Submitted-by:  Nick Sayer <nsayer@quack.kfu.com>
PR: 10674
1999-03-24 02:49:43 +00:00
grog
e0f182bce9 Correct the text of an obscure error message. 1999-03-24 00:43:05 +00:00
n_hibma
74d25b5f6c Check whether the PIRQD enable bit is set in LegSup and if not, set it.
On my PIIX4 chip rev 1 this is required. Have not had any complaints from
other people so it might be a problem with this stepping.
1999-03-23 21:37:45 +00:00
n_hibma
5e983c5c53 1) clean up debugging output
2) remove erroneous querying of PCI LegSup register while it should be
   fetched from PCI config space
3) change name of define for this register
1999-03-23 21:35:57 +00:00
gibbs
3112c76ae0 Fix a typo.
PR: 10722
Submitted by:	Chris Costello <chris@holly.dyndns.org>
1999-03-23 07:27:38 +00:00
gibbs
e931681bc2 Add support for the 3950U2B controller.
Recognize aic7895 controllers that have been "acquired" by a RAIDPort
card as normal aic7895s.

Recognize the aic7815 Raid Parity/Memory controller chip and notify
the user that it's RAID functionality will be ignored.
1999-03-23 07:26:41 +00:00
gibbs
dfe6ad9e92 Use TCL_CHANNEL/SCSI_ID/etc. macros in more locations.
Don't mess with the IRQMS bit in the host control register unless
we are an aic7770 chip.

Use calling context to determine if the card is already paused when
we update the target message request bit field in controller scratch
ram.  Looking at the paused bit in the HCNTRL register opened up a
race condition.

Insert delays in the target message request update routine as a temporary
work around for what looks like a chip bug.  I'm still investigating this
one.

Fix the Abort/Abort Tag/BDR handler to pull its message from the message
buffer in our softc instead of attempting to get it from a register on
the controller.  The message is never recorded by the controller in the
new message scheme.

Don't rely on having an SCB when a BDR occurs.  We can issue these during
invalid reconnects to.

Fix a few cases where we were restarting the sequencer but then still
falling out of a switch statement to unpause the sequencer again.
This could cause us to mess up sequencer state if it generated another
pausing interrupt between the time of the restart and unpause.

Kill the 'transceiver settle' loop during card initialization.  I
failed to realize that a controller that is not connected to any
cables will never settle or enable the SCSI transceivers at all.
The correct solution is to monitor the IOERR interrupt which indicates
that the transceiver state has changed (UW<->LVD).

Modify the aic7xxx assembler to properly echo input when stdin is not
a tty.
1999-03-23 07:24:29 +00:00
grog
f524bcb395 Change the definition of VINUM_STARTCONFIG to take an int write parameter. 1999-03-23 04:50:40 +00:00
grog
99b474593e Add flag VF_FORCECONFIG for use by the config_drive and friends. 1999-03-23 04:49:32 +00:00
grog
f27a5330c1 vinum_start:
remove the splbio() around the call to launch read requests.

launch_requests:
  Move the splbio() protection outside the entire launch_loop.  The
  previous location was causing problems with IDE drives, where the
  call to the strategy routine often did not complete until after
  complete_rqe deallocated the request structure.

Solution-independently-found-by: Russell Neeper <r-neeper@tamu.edu>
Problem-reported-by: Vallo Kallaste <vallo@matti.ee>
		     John Saunders <john@nlc.net.au>
		     Bernd Walter <ticso@cicely.de> (maybe)
1999-03-23 04:49:08 +00:00
grog
2a17c06595 VINUM_STARTCONFIG:
Pass the 'data' parameter to start_config, which uses it as the
  parameter 'force.
1999-03-23 04:48:31 +00:00
grog
666fbd25e9 init_drive:
Check for partition types FS_VINUM and FS_UNUSED.  Accept both, but
  complain about FS_UNUSED.  At a later date, only FS_VINUM will be
  accepted.

Threatened-since: over a year
1999-03-23 04:48:05 +00:00
grog
31a186136d Change the declaration of start_config. 1999-03-23 04:47:33 +00:00
grog
fad86b58e4 start_config:
Add a flag `force' (VF_FORCECONFIG) to force name changes of
  existing drives.
config_drive:
  If the drive already has a vinum label, and name doesn't match the
  specified drive, do it anyway if the 'force' flag is specified.
finish_config:
  Reset the `force' flag.

Continually-tripped-over-by:  Karl Pielorz <kpielorz@tdx.co.uk>

give_sd_to_drive:
  If the drive is down, take the subdisk down and don't try to fix
  things.

update_plex_config:
  Don't try to update the config parameters of a plex which isn't
  fully configured (state plex_init or plex_unallocated).

  Correctly calculate the amount to trim off a striped or RAID-5 plex
  whose size is not a multiple of the stripe size.
1999-03-23 04:47:09 +00:00
n_hibma
acbe2b49be Cosmetical changes. 1999-03-22 19:58:59 +00:00
n_hibma
14b4156fdf Implementation of the keyboard driver.
Done by: Kazutaka YOKOTA <yokota@zodiac.mech.utsunomiya-u.ac.jp>
1999-03-22 19:55:30 +00:00
n_hibma
2988bfb936 Moved timeout initialisation a bit earlier in the process. The
untimeout function triggered panics once in a while.
1999-03-22 19:52:28 +00:00
wes
04cf1f5338 Turn on PCI bus mastering in driver attach routine
to avoid hanging the system if the BIOS has not
initialized the interface.

PR:		10150
Reviewed by:	dg
1999-03-20 04:51:25 +00:00
grog
e88ccd2db1 Define two superdevices for vinum(8), depending on whether they are
compiled with or without debugging support.  This enables us to catch
(fatal) mismatches between the kernel and userland.

Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG.  They did
essentially the same thing.

Add VINUM_BIGDRIVE for pretending we have macho hardware.
1999-03-19 07:19:52 +00:00
grog
0aafc00816 VolState: return an enum volumestate, not a (non-existent) enum volstate.
Strangely, neither gcc nor EGCS noticed this bug.

Eagle-eyed by: arno@heho.snv.jussieu.fr (Arno J. Klaassen)
1999-03-19 07:17:05 +00:00
grog
ca3cc12652 Perform all of vinumstrategy at splbio. This doesn't appear
necessary, but might explain some weird problems that some people have
been getting.
1999-03-19 07:15:24 +00:00
grog
0d7fe43c55 Use microtime, not getmicrotime, to note the times in the malloc and
free histories.
1999-03-19 07:14:18 +00:00
grog
3ee7660ddf Add debug flags DEBUG_BIGDRIVE, designed for testing only. It
pretends that each drive is 100 times as large as it really is.  Not
for use at home.

Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG.  They did
essentially the same thing.
1999-03-19 07:13:31 +00:00
grog
039959b573 Coalesce flags VINUM_DISKCONFIG and VINUM_READING_CONFIG. They did
essentially the same thing.

Reset flags at the right point at the end of configuration.  The
previous code disabled configuration saving at the end.
1999-03-19 07:10:19 +00:00
grog
eaa56945d5 free_vinum: don't change loop bounds for deleting drives while in the loop.
This solved a problem where 'vinum resetconfig' only reset half
	    the drives.

Reported-by:  Brad Knowles <blk@skynet.be>
	      Karl Pielorz <kpielorz@tdx.co.uk>

Change the super device.  We now have three super devices:

  1.  The normal superdevice used by vinum(8).
  2.  The superdevice used by vinum(8) when compiled with debug support.
  3.  The superdevice used by the daemon.

This method allows vinum(8) to determine debug mismatches.  Also check
correctly for the device type.  The old code did not check all bits of
the minor number.

  Reported-by: a cast of thousands, most recently by Brad Knowles
               <blk@skynet.be>.
1999-03-19 07:08:40 +00:00
grog
b32b7445f8 Modify to compile with egcs.
Prodded-by: obrien
1999-03-18 23:26:22 +00:00
luigi
be6e5ad345 MF22... add bridging support to the device drivers. Without this
bridging cannot work on -current/releng3!
1999-03-17 16:44:53 +00:00
mjacob
4563b08ab3 Prep for 1080/1240 support. Those fine h/w engineers at Qlogic
gave yet another internal register layout model for what is
*still* the same architecture. I hope they saved billyuns of gates
'coz otherwise this is *really* annoying.
1999-03-17 05:07:18 +00:00
mjacob
4921f37566 A wad of changes- prepping for 1080/1240 support (which caused a massive
thwank in register layout goop). A different mboxcmd approach. Some PDB change
infrastructure. Some better management of loopdown/loopup events (keep them
distinct from resource starvation for simq freeze/unfreeze actions).
1999-03-17 05:04:39 +00:00
julian
6bfe262c23 Submitted by: Matt Dillon <dillon@freebsd.org>
The old VN device broke in -4.x when the definition of B_PAGING
changed. This patch fixes this plus implements additional capabilities.
The new VN device can be backed by a file ( as per normal ), or it can
be directly backed by swap.

Due to dependencies in VM include files  (on opt_xxx options) the new
vn device cannot be a module yet. This will be fixed in a later commit.
This commit delimitted by tags {PRE,POST}_MATT_VNDEV
1999-03-14 09:20:01 +00:00
peter
737eef1bc9 Merge NetBSD 1.80->1.82 changes from vendor branch into mainline. 1999-03-14 08:32:52 +00:00
semenu
d1f7b2d7ee Implemented workaround for EPIC's Application Note 7-15 (concerning
chip int. and ext. clock synchronisation). Fixed workaround for
transmit threshold underrun. Added volatile keyword to CSR_READ_* and
CSR_WRITE_* macroses. Added DELAYs to eliminate randomness caused
by processor speed. Fixed all TXCON and RXCON registers to be accessed
only when chip is idle, as manual told. Changed epic_init_phy to
drop link by isolating and going loopback, should should force link
partner to restart autonegotiation.

PR: kern/10535,	kern/9742, kern/10575
Submitted by:	Peter Jeremy, David Greenman
1999-03-14 08:30:23 +00:00
grog
fd3e7331d2 deallocrqg: deallocate the correct object, also check that the object
is really in the chain.
1999-03-14 04:04:23 +00:00
phk
89369e3450 Reduce Bruce-filter verbosity. 1999-03-13 16:22:18 +00:00
joerg
5d7f7bd333 Make NDGBPORTS an official option. 1999-03-13 13:20:59 +00:00
peter
c732ae542a set if_snd.ifq_maxlen to something reasonable - note that if_de.c has
a wierd double-queue arrangement..  It always empties the if_snd queue
then puts the transmit packets into a different queue that is limited
by the number of TX descriptors and does it's own discards...
This should stop the boot-time XXX warning anyway.
1999-03-13 09:21:27 +00:00
grog
e47b3afeef Change prototype of vinum_inactive. 1999-03-13 07:46:34 +00:00
grog
0a228caafe Remove opencount from vinum_conf and struct vol, and disk index from
struct vol.

Add time to struct mc, remove KVA crud.

Add debug flags DEBUG_EOFINFO and DEBUG_MEMFREE.
1999-03-13 07:40:52 +00:00
grog
5f07112b3f Part of removing vol->opencount: now we just use a flag. 1999-03-13 07:39:17 +00:00