Commit Graph

2314 Commits

Author SHA1 Message Date
thorpej ee9070cc5a Add a long-needed register descripton file for the i8259 PIC.
This was taken from the PIIX4 manual, and thus doesn't have all
the legacy crap (relative to "modern" ISA PICs, anyway), so if
you have a real i8259 manual, fill in some more bits.
2001-06-21 03:43:43 +00:00
uwe 35e011d31b Convert to use cnmagic(9). Unifdef DDB and DDB_BREAK_CHAR.
While I'm here, s/ungetc/readahead/ in com_common_* because that's
what it _really_ is, "ungetc" is a very confusing name.
2001-06-20 03:07:25 +00:00
wiz ac951736bc `response', not `responce' 2001-06-19 13:45:52 +00:00
wiz f3f6c5b675 `accessible' only has one `a'. 2001-06-19 12:52:20 +00:00
jdolecek a7d6a8f2f1 The ifa is needed for CCITT&&LLC case, provide it in that case 2001-06-19 07:19:35 +00:00
thorpej 62224968e1 Add support for the Adaptec AIC-6915 10/100 Ethernet. This is
a 64-bit PCI chip, available in 1, 2, and 4 port models.
2001-06-18 22:05:35 +00:00
onoe 319ea4a342 make it compilable: delete unused variable 'ifa' from lance_ioctl() 2001-06-18 13:47:18 +00:00
jdolecek e65b619faa Convert to use ether_ioctl() for SIOCSIFADDR and SIOCSIFFLAGS. 2001-06-18 11:06:26 +00:00
jdolecek adaaf11f9f make pckbc_slot_names[], pckbc_portcmd const 2001-06-17 16:15:41 +00:00
thorpej 4c49d6fa2a Split the Tx and Rx interrupt routines into separate functions,
and add some (optional) event counters.
2001-06-15 22:16:00 +00:00
itojun 4d51fe368b change the meaning of ifnet.if_lastchange to meet RFC1573 ifLastChange.
follows BSD/OS practice and ucd-snmp code (FreeBSD does it for specific
interfaces only).

was: if_lastchange get updated on every packet transmission/receipt.
now: if_lastchange get updated when IFF_UP is changed.
2001-06-14 05:44:23 +00:00
bjh21 6acf237023 Use the new generic mechanism for forcing polling on a SCSI interface, rather
than doing it ourselves.
2001-06-13 18:27:27 +00:00
bjh21 4bc5a3b295 Add explicit support for IDE and SCSI adaptors which don't support interrupts.
On such adaptors, all transfers are done in polling mode.

OK'ed by Manuel on tech-kern.
2001-06-13 18:17:38 +00:00
wiz c03a48d64f withough -> without 2001-06-13 10:45:57 +00:00
thorpej 015345c74b Don't need INET or NS includes here. 2001-06-12 22:32:51 +00:00
thorpej 9988acd41e Don't need INET or NS includes here. 2001-06-12 22:28:15 +00:00
bjh21 18e8d752f6 No need to pull in INET or NS headers -- that's all done by ether_ioctl() now. 2001-06-12 20:53:39 +00:00
wiz 0a600be867 receive, not recieve 2001-06-12 15:17:10 +00:00
wiz 2a8c778f1b retrieve, not retreive 2001-06-12 14:59:27 +00:00
wiz b50f28c38a underrun, not underun 2001-06-12 11:48:51 +00:00
bjh21 33afab3251 Add a short-circuit return from wdcprobe for IDE controllers without pullup
resistors, which return the last value written to the bus on a read.  This
makes detecting empty channels on my HCCS and D.T. Software IDE interfaces
rather faster.
2001-06-11 21:18:36 +00:00
wiz 40ac848024 Fix various misspellings of compatible/compatibility. 2001-06-11 01:50:48 +00:00
wiz 0a3b1c29a1 transceiver, not transciever. 2001-06-11 01:19:53 +00:00
ad bfac43a1c8 Centralise the geometry fudge. 2001-06-10 10:48:42 +00:00
ad 5f1286dfb9 Don't make assumptions about the contents of the system drive table. 2001-06-10 10:34:44 +00:00
scw 737763fde7 Forgot to commit this as part of the mvme68k evcnt(9) changes. 2001-06-10 08:27:42 +00:00
briggs acf06d2e27 If the adapter is returning a selection timeout, then we should be
returning XS_SELTIMEOUT, not XS_TIMEOUT.  Pointed out by Andrew Doran.
2001-06-09 18:08:20 +00:00
briggs 8c948a0386 Patches from takashi.yamamoto@bigfoot.com in kern/13139.
- Set XS_TIMEOUT on a selection timeout condition.
- Do not bother to call AscStartChip() in AscResetChipAndScsiBus()--
  just clear the chip status.
- Make sure address is word-aligned in AscWriteLramByte().

Tested on my adv (AdvanSys ABP-9xxUA) with CRW8424S and UMAX SuperVista S-12.
Earlier versions of the system would get stuck trying to recover from error
conditions when the CD-RW drive was in heavy use.  I have not seen that
behavior with these small patches.
2001-06-09 17:18:21 +00:00
tsutsui 14f1650c62 Remove unused members from SCSI command block structure. 2001-06-09 13:43:02 +00:00
tsutsui 9cd36c6539 Fix an uninitialized variable in #ifdef DIAGNOSTIC.
Pointed out by soda.
2001-06-09 12:59:50 +00:00
thorpej ff5871412e Correct the receive mode mask in the RXCMD register. 2001-06-07 05:19:26 +00:00
thorpej 025decbccb Don't clear a callout on a scsipi_xfer that has been scsipi_done()'d. 2001-06-07 03:44:00 +00:00
soren 26603afde8 Update URL to documentation PDF. 2001-06-06 22:11:42 +00:00
tsutsui 15f8692183 Make some functions __inline. 2001-06-05 12:42:44 +00:00
thorpej 8ee014b439 Handle the DL10022 case. 2001-06-05 02:31:16 +00:00
mrg 46762d3560 fix lint exposed by GCC 3.0 20010604 (prerelease). 2001-06-04 20:56:51 +00:00
toshii 13aba87bcb Don't pass nonpositive repeat count to CSR_*_MULTI_2.
Should fix kern/13092.
2001-06-04 03:34:47 +00:00
tsutsui bcdd082840 Add a driver for the Initio INIC-940/950 PCI SCSI controllers.
Based on OpenBSD's iha driver, and modified some structures by me.

Tested on arc, i386 and macppc.
2001-06-03 13:43:45 +00:00
thorpej 37368cb858 Use the correct bitbang ops on the DL10022 (oops!). 2001-06-03 04:39:52 +00:00
thorpej ca4d373730 Implement support for IP/TCP/UDP checksum offloading provided by
network interfaces.  This works by pre-computing the pseudo-header
checksum and caching it, delaying the actual checksum to ip_output()
if the hardware cannot perform the sum for us.  In-bound checksums
can either be fully-checked by hardware, or summed up for final
verification by software.  This method was modeled after how this
is done in FreeBSD, although the code is significantly different in
most places.

We don't delay checksums for IPv6/TCP, but we do take advantage of the
cached pseudo-header checksum.

Note: hardware-assisted checksumming defaults to "off".  It is
enabled with ifconfig(8).  See the manual page for details.

Implement hardware-assisted checksumming on the DP83820 Gigabit Ethernet,
3c90xB/3c90xC 10/100 Ethernet, and Alteon Tigon/Tigon2 Gigabit Ethernet.
2001-06-02 16:17:06 +00:00
toshii 9590a56496 Use bus_space_{read,write}_multi_stream_2 where available. 2001-06-02 15:49:16 +00:00
thorpej 2da55b9a39 Define some extra configuration block bits used on the i82550 (a.k.a.
PRO 100/S), including the extended RFA format.  Don't hard-code the
RFA size to allow us to use the extended format in the future.
2001-06-02 01:04:01 +00:00
jdolecek f6af05f407 Back the last revision off, upon Bill Sommerfeld's request 2001-06-02 00:46:00 +00:00
jdolecek 5dbe622e77 When polling, raise priority level to tty, to block keyboard interrupts
when the system is "warm", i.e. interrupts are not blocked anymore.
This seems to be necessary on my PS/2 Model 70 keyboard - without this,
system ends up in endless loop calling the keyboard intr routine if a key
is pressed when polling. This _may_ be just specific to level-triggered
interrupts PS/2 MCA uses, though it's more likely it's just the way the
particular keyboard controller works.

Discussed on tech-kern@.
2001-06-02 00:01:04 +00:00
lukem d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
mrg c13e3a6693 use _KERNEL_OPT 2001-05-30 11:40:35 +00:00
onoe a62b5c1e2e add a comment why IFF_PROMISC is handled separately for SIOCSIFFLAGS:
Handle special case for IFF_PROMISC.  If only IFF_PROMISC
	flag is changed, do not call an_init() to avoid initiating
	reassociation to another access point.  It is really
	helpful for tcpdump(8).
2001-05-28 00:46:35 +00:00
bjh21 6d8a82ebc2 Use bus_space on arm26.
Update the comment to match list of bus_space-using ports.
Delete oak from list of drivers that need converting.
2001-05-26 20:55:48 +00:00
mjacob c9de53f96e Create a kernel thread for Fibre Channel cards. This is the new
way of doing business- modulo some startup spasms and peculiarities
of the way kthreads are started (*after* configuration, weird) and
some strangeness with the freeze/thaw code, what now happens is
that any of Loop Down, LIP, Loop Reset or Port Datbase or Name
Server Database Changed ASYNC events cause the queues to freeze
for this channel.  The arrival of a Loop UP is not relevant.

What *is* relevant is that the Port Datbase or Name Server Changed
async event indicate that it's okay to go and (re)evaluate the
state of the FC link and (re)probe local loop and fabric membership.
We have a kthread do this because it's *sooooo* much nicer to be
able to sleep while doing the 130-250 mailbox commands it'll take
to re-evaluate things.

When the state is well known again, we can unfreeze the channel
queues.  Then, as commands start arriving, we simply can start them
or bounce them with XS_SELTIMEOUT (if the device in question has
gone away).  Previously, we did lazy evaluation, which meant that
if a change occurred, we would wait until the very *next* command
to go rebuild stuff.

The reason this is not sensible is:

 a) Even with sleeping, you can hang up your system because you might be
 making some poor stat(2) call pay the price of re-evaluating the whole
 fabric.

 b) If we ever really want to get to dynamic attachment/detachment, we
 should find out sooner, rather than later, where things get to.

Split off ispminphys_1020 from ispminphys- a 1020 has a 24 bit limit-
not anything newer.

Re-enable LIPs and Loop Resets as async events- this allows the outer
layer to set policy about them.

Roll platform major && minor. Remove bogus waitq (no longer used).
Remove callout entry in softc (no longer used). Define some shorthands
for channels. Clean up a variety of cruft left over from the
thorpej_scsipi changeover.
2001-05-25 21:45:55 +00:00
hannken 339a9c8de2 Fix two typos in the BYTE_ORDER != LITTLE_ENDIAN case. 2001-05-25 08:54:40 +00:00