Commit Graph

10659 Commits

Author SHA1 Message Date
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
thorpej fb2f3ce7e5 Regen; Add Level One vendor ID, and LXT-1001 10/100/1000 Ethernet
product ID.
2001-06-11 21:13:49 +00:00
thorpej ec5280c1ed Add Level One product ID, and LXT-1001 10/100/1000 Ethernet
product ID.
2001-06-11 21:12:29 +00:00
fredette 274629aa08 Added support for the VME `sc' SCSI board. Compiles,
but needs testers as the author doesn't actually have
the hardware.
2001-06-11 15:09:54 +00:00
pk b9e61207ff Add nolun/nosync quirk for "IBM CDRM00201 !F"
See PR#13031.
2001-06-11 13:58:18 +00:00
sato a2c4938b03 not set HPCFB_SWAP_BYTE 2001-06-11 09:36:44 +00:00
tron a4401a8e5d Regen from "pcidevs". 2001-06-11 06:36:51 +00:00
tron 6caf1041cb Add support for the D-Link DFE-530TX+. Patch supplied by
Gabriel Rosenkoetter in PR kern/13161.
2001-06-11 06:36:23 +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
gmcgarry 6fee8596c7 Packet includes CRC, so mark it in the mbuf header. Fixes the
"discarding oversize frame (len=1518)" problem.
2001-06-10 21:53:08 +00:00
ragge 01c6253206 Only use b_proc if B_PHYS is set. 2001-06-10 18:41:27 +00:00
tron d29b7bb88c Regen from "usbdevs". 2001-06-10 13:10:46 +00:00
tron 8a6a34f18e Add Philips PCA646VC PC Camera. 2001-06-10 13:10:25 +00:00
tsubai 5a051092e4 Rename ofb_softc to ofbus_softc. (XXX Is this good name?) 2001-06-10 11:36:03 +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
bjh21 810a0b00f4 dtide is MI now. 2001-06-09 13:51:49 +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
bjh21 e609865bbc Correct reference to dtide.c, and don't bother with the "channel" locator to
dtide, since ata provides that anyway.
2001-06-08 22:33:59 +00:00
bjh21 ca2047f7c6 Adapt the dtide driver to the MI podulebus framework, and move it to its new
home.  It still doesn't actually work, but that's a SMOP.
2001-06-08 20:13:24 +00:00
bjh21 837afd713e Regen 2001-06-08 20:09:07 +00:00
bjh21 e918a481e5 Move D.T. Software to their rightful place in the list, and correct the product
ID for their IDE interface.  I've no idea where 0x00ae came from.
2001-06-08 20:08:35 +00:00
mrg 054673b07c #endif /* takes no argument */ 2001-06-08 12:51:17 +00:00
enami 578730c551 Initialize sc->sc_anegticks to 5 on attach to prevent panic due to
assertion failure.
2001-06-08 07:09:40 +00:00
simonb e5bd00e48d For ports that wire up pciide in compatibility mode, have
them define __HAVE_PCIIDE_MACHDEP_COMPAT_INTR_ESTABLISH
in pci_machdep.h and pciide_map_compat_intr() only calls
pciide_machdep_compat_intr_establish() if that preprocessor
define exists.

Ports that don't need to do this no longer need to supply a
dummy function.
2001-06-08 04:48:54 +00:00
matt ef047f21f8 Add multiple inclusion protection. Define prototypes for openfirm
routines used in cdevsw.
2001-06-08 00:19:17 +00:00
mrg 59024512bd LKM friendly: move ev_out32() to netbsd32 specific code; add an ev_out32 hook. 2001-06-07 17:52:52 +00:00
briggs 7a3a78cfa3 Compile on sandpoint. 2001-06-07 16:48:09 +00:00
bouyer df4739c8cb Set TI_OPMODE_1_DMA_ACTIVE only if hardware assisted checksum isn't used
(FreeBSD does it this way). My Tigon II works with hardware assisted checksum
now.
2001-06-07 14:35:58 +00:00
enami 85fb541842 Fix typo; print sc->aue_intr_errs instead of sc->aue_rx_errs when
reporting interrupt errors.
2001-06-07 10:55:15 +00:00
leo 72510eee6d Make the WDC_{ATA|ATAPI}_NOSTREAM flags settable through configuration
options. Needed on the Atari Milan.
2001-06-07 06:33:48 +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
uch 03e1c3aa16 implement HPCFB_SWAP_BYTE. 2001-06-05 17:29:12 +00:00
uch b596bfa2d0 add vc_reverse flag to struct video_chip. 2001-06-05 15:02:40 +00:00
uch a4221d6b08 change behavior of cmap_work_alloc(). 2001-06-05 15:02:12 +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
thorpej c619444a71 Use the DL10019 media routines on the DL10019 and DL10022 (a change
I forgot to commit long ago).
2001-06-05 02:27:02 +00:00
ragge cae5d5a796 Lock the kernel lock at interrupt enter. 2001-06-04 21:31:28 +00:00
mrg 46762d3560 fix lint exposed by GCC 3.0 20010604 (prerelease). 2001-06-04 20:56:51 +00:00
uch 859a6a49b2 ANSI KNF. 2001-06-04 18:59:31 +00:00
jdolecek 07677cc805 Use back the 'u'&037 form - since it's CTRL-u, it's more readable that way
Use \007 instead of symbolic constant, since that's what is more often used.
Pointed out by Robert Elz.
2001-06-04 09:45:03 +00:00
augustss 147c9186b5 Remove overly paranoid test (and not in the spec either). From OpenBSD. 2001-06-04 06:01:40 +00:00
augustss d7079b251e Regen. 2001-06-04 06:00:43 +00:00
augustss db2a5598b4 Add the Logitech iFeel mouse.
(Now that's a weird device, perhaps I'll write a driver for the vibration
feedback.)
2001-06-04 06:00:20 +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
jhawk 4cfd2cf1d0 s/printf/DPRINTF/ for kern/13101. 2001-06-03 23:52:51 +00:00
jdolecek dccf11ae11 cngetsn(): cosmetic only - use '\025' instead 'u'&037, and '\b' instead '\007' 2001-06-03 17:56:10 +00:00
ragge 056e20f2cc Need to get the kernel lock when entering by interrupts. 2001-06-03 15:15:02 +00:00
lukem 461a7daf74 fix comment 2001-06-03 14:29:42 +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 4e7cb03446 Differentiate between a DL10019 and a DL10022 (they have slight
MII differences).
2001-06-03 04:52:28 +00:00
thorpej 37368cb858 Use the correct bitbang ops on the DL10022 (oops!). 2001-06-03 04:39:52 +00:00
thorpej cc3002d53b Clarify a historical comment. 2001-06-03 03:55:10 +00:00
thorpej f75e45c854 In ti_init2(), use a simpler, more obvious, and correct MTU
calculation to give the firmware.
2001-06-03 03:46:43 +00:00
thorpej f2b9a1f3cc Replace a bunch of home-grown Ethernet related constants with
ones defined in <net/if_ether.h>
2001-06-03 03:29:44 +00:00
thorpej 9987ee5249 Driver for the Broadcom BCM5201/BCM5202 "Mini-Theta" Ethernet
PHYs.  This is also the same PHY core as in the 3Com 3c905C.
The PHY is documented in the 3c905C manual.
2001-06-02 21:42:10 +00:00
thorpej 424f7a1e65 Make PHY matching all table-driven. 2001-06-02 21:39:38 +00:00
bjh21 947699688a Create hcscreg.h, and put a couple of magic numbers in there. 2001-06-02 20:13:50 +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
bjh21 fd7e9d6d32 Clean up hcsc_match: Don't check the manufacturer ID, since podule IDs are
unique anyway.  Do check whether the description starts with "SCSI", since
HCCS used the same ID for their IDE podule.
2001-06-02 12:07:34 +00:00
bjh21 e9ff9b9d73 Enable disconnect/reselect (now that it works) and parity checking. 2001-06-02 11:43:40 +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
thorpej 33a6994da1 Driver for Broadcom BCM5400-family Gig-E PHYs. Programming
information gleaned from FreeBSD.
2001-06-01 16:49:59 +00:00
haya 1331bcc296 cardbusvar.h is divided into two files: cardbusvar.h and cardbusreg.h. 2001-06-01 10:30:37 +00:00
bouyer 88f3192778 Fix typo in sddump() which caused core dumps to fail with ENXIO. 2001-06-01 08:39:54 +00:00
simonb b3e7ecfd97 Delete the XXX'd includes of <dev/isa/isavar.h> and <sys/kernel.h>.
These aren't needed.  Tested on i386 and alpha.
2001-06-01 00:38:31 +00:00
tron 264d7e1264 Install "dev/scsipi/scsipi_cd.h" again because it is e.g. used by the
CD player include in version 2.x of the "kdemultimedia" package.
2001-05-31 21:54:07 +00:00
thorpej 996df042df Add support for the DP83815 MacPHYTER internal PHY to the DP83843 PHYTER
driver, since for our purposes, they are compatible.
2001-05-31 20:30:21 +00:00
thorpej 1042f830e5 Regen; added several more PHYs. 2001-05-31 19:41:07 +00:00
thorpej 0c94166e28 Add several additional PHYs. 2001-05-31 19:40:33 +00:00
thorpej f752c7d328 On the Gig PHYTER, For whatever reason, the 10baseT-related bits of the
BMSR are wired to 0, yet the PHY supports 10baseT.  So, to get around
this, we test the ANAR 10baseT bits after a PHY reset.  These bits are
set according to input pin 180.  If we see the 10baseT ANAR bits set,
we fake them in the BMSR so that we can actually autonegotiate 10baseT.
2001-05-31 18:47:22 +00:00
thorpej 2128d9199a Enable frobbing the 1000baseT control register on Gig-E PHYs,
used for hard-wiring master mode, and for advertising the 1000baseT
media options during autonegotiation.
2001-05-31 18:44:48 +00:00
thorpej 628a67ab31 Add a driver for the NatSemi DP83891 and DP83861 Gig PHYTER
10/100/1000 PHYs.
2001-05-31 16:06:58 +00:00
thorpej ea1aed7db2 Make the number of ticks between auto-negotiation tries PHY-specific,
and default every PHY to 5 seconds (what we used before).  If we find
Gig-E media on a PHY, bump it to 10 seconds, since it can take 5
seconds just to negotiate a Gig-E link.
2001-05-31 16:02:29 +00:00
ad f4afeda420 Reduce the delay when polling so that dumps go faster. 2001-05-31 11:31:43 +00:00
haya 4d3b32a658 Cosmetic change. 2001-05-31 08:33:40 +00:00
thorpej ad090e7062 Regen; added NatSemi DP83891. 2001-05-31 03:32:38 +00:00
thorpej 3ae72855b1 Add product ID for the NatSemi DP83891 1000baseTX PHY. 2001-05-31 03:32:20 +00:00
thorpej 9f63d3cd86 Typo in last. 2001-05-31 03:07:14 +00:00
thorpej f07f44812d The 1000baseT CR and SR are overlapped with the 100base-T2 CR and SR.
Note this in a comment.  Add the 1000baseT CR and SR bits.
2001-05-31 03:06:46 +00:00
nisimura e7c225d7b2 Regen; product IDs for IDT RC32334 and RC32332 systeml controllers. 2001-05-31 01:13:33 +00:00
nisimura 811d8d9102 Add product IDs for IDT RC32234 and RC32334 system controllers. 2001-05-31 01:10:34 +00:00
bouyer 3fccfbf68d Uninitialised variables, from Krister Walfridsson: in umass_scsipi_request()
initialize cmd before using it. Now that it's initialised earlier, use it
instead of xs->cmd
2001-05-30 20:31:39 +00:00
bouyer 6973b27309 Uninitialised variable (from Krister Walfridsson): in acard_chip_map()
drop compatchan and use the real channel number instead.
2001-05-30 20:30:02 +00:00
bouyer 708bb529d3 uninitialised variable (from Krister Walfridsson):
in st_cmprss(), init flags to 0 (never changed, but this should change soon
anyway, for ATAPI tapes support)
2001-05-30 20:28:17 +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
haya f591dd2f9d Cosmetic change. 2001-05-30 09:21:47 +00:00
chs ffcbc851a0 fix some problems in sddump() with uninitialized variables. 2001-05-29 01:02:39 +00:00
bjh21 c5260261ba Use the pseudo-DMA facilities of the HCCS SCSI podule. Code largely derived
from the pc532 "ncr" driver.

This gets me up to 300 KB/s from /dev/rsd0a on my A310.  I think
bus_space_{read,write}_multi_1 and copy{in,out} are the bottlenecks now.
2001-05-28 22:54:10 +00:00
tshiozak 83da433ada fix for UX96 (and all Yamaha specific devices, hopefully).
- fix how to get endpoint addresses.
  - fix allocate count of pipes.
  - add necessary null checks for asymmetry jacks.
2001-05-28 20:52:06 +00:00
tshiozak 5505749bb1 add new device; Yamaha UX96 USB MIDI I/F. 2001-05-28 18:28:04 +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
thorpej ebf9e47c26 Add quirks for the Algorithmics P-5064 on-board 21143, and a way to
get the Ethernet address from it (they don't have an SROM).

XXX The latter should be replaced with devprops when they exist.
2001-05-27 21:00:33 +00:00
ragge 667dd41596 Remove ethernet CRC on received packets. 2001-05-27 19:36:06 +00:00
thorpej 47745a094d Add support for the Algorithmics ISA floppy controller. 2001-05-27 18:16:21 +00:00
thorpej ce289cc293 Handle non-contiguous BARs. Needed to be able to configure e.g.
IDE and USB on a PIIX3.
2001-05-27 17:50:40 +00:00
bjh21 cbea766fd0 Add hcsc. 2001-05-26 23:02:06 +00:00
bjh21 5cc459efcc Quick hack of a driver for the HCCS 8-bit SCSI podule, based on the Oak driver.
Tested to the extent that it finds my disc.
2001-05-26 23:01:19 +00:00
bjh21 ebf4596009 regen 2001-05-26 21:48:31 +00:00
bjh21 eb6eb503f1 Fix typo in last commit. 2001-05-26 21:48:21 +00:00
bjh21 7b0faa44c9 regen 2001-05-26 21:47:30 +00:00
bjh21 d5ecc6c516 Add the 8-bit podules I got at Wakefield (except the A3000 Nexus,
which seems not to work).
2001-05-26 21:47:09 +00:00
ragge 41faed1386 Use cdev_decl() instead of local prototyping. 2001-05-26 21:24:38 +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
bjh21 ab0637016a Support NCR5380_USE_BUS_SPACE.
Add comments explaining the card a bit (and how badly we support it).
Add in-core RCSID.
2001-05-26 20:53:53 +00:00
bjh21 bab53421c4 "oak" is now MI. 2001-05-26 17:50:30 +00:00
bjh21 c7a388d937 Turn "oak" into an MI podulebus driver. Tested on my new A310. 2001-05-26 17:49:46 +00:00
bjh21 f0ebb6c5a8 Add a comment about acemidi. 2001-05-26 17:47:45 +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
tshiozak 5b51f5ebe2 fix forgotten/malformed initialization of some variables.
(pointed out by Krister Walfridsson.)
2001-05-25 19:33:36 +00:00
hannken 339a9c8de2 Fix two typos in the BYTE_ORDER != LITTLE_ENDIAN case. 2001-05-25 08:54:40 +00:00
itojun 6229248ec0 minor style 2001-05-24 08:12:28 +00:00
itojun 85efd7edb1 correct multicast filter handling. without this, we cannot run IPv6 on an*. 2001-05-24 08:06:04 +00:00
petrov 9d59ae231c adjust fas register fields names 2001-05-23 18:32:26 +00:00
bouyer a98b728b88 Call scsipi_channel_thaw() after scsipi_done() so that command ordering
is preserved.
2001-05-23 15:51:32 +00:00
bouyer 72b4ba8aed In scsipi_channel_thaw(), if the count drops to 0, call scsipi_run_queue(). 2001-05-23 15:50:32 +00:00
chs fae4d6d720 fix typo in previous revision so that the scsi code compiles again. 2001-05-23 02:16:19 +00:00
fvdl 24b32e8f08 Add missing definitions for hw checksumming. 2001-05-23 00:56:58 +00:00
mjacob d298a26243 Add back in (again) ISPASYNC_LIP and ISPASYNC_LOOP_RESET async
notifications. Let each platform set policy as to what to do
with these.
2001-05-22 19:32:41 +00:00
mjacob b9eb902304 Make SDRETRIES an option you can dig out of opt_scsi.h.
Add SD_IO_TIMEOUT (an option in opt_scsi.h) also, which defaults to the
normal 60 * 1000 timeout for normal read/write commamds. This allows you
to shorten or lengthen the timeout as needed.
2001-05-22 18:59:57 +00:00
mjacob 38f6ada8b6 Add SDRETRIES and SD_IO_TIMEOUT option for sd. 2001-05-22 18:58:15 +00:00
thorpej 607b14bf7b Add mii_bitbang attribute to gsip, pointed out by Andrew Gillham. 2001-05-22 16:58:23 +00:00
thorpej a888f6ef73 If the cache line size in the BHLC register is not configured,
then clear the MRL/MRM/MWI command-ok flags when attaching a
device.
2001-05-22 16:10:44 +00:00
soren 79859fb138 Regen. 2001-05-22 16:07:56 +00:00
thorpej 6e2bc5b352 Enable the PCI MWI command for memory writes on the i82558 and
higher.
2001-05-22 16:05:01 +00:00
soren b16ba1d8cd Add i82562ET id. 2001-05-22 16:04:27 +00:00
thorpej 188e0d6625 Some changes from the new FreeBSD `fxp' driver:
- Add some additional config block bits for the i82558/i82559.
- Change the config block template to only fill in the must-be-one
  reserved bits, leave fxp_init() to fill in all the important things.
- On the i82558/i82559, we can use "Receive Long Frames" rather than
  "Save Bad Frames" to support the VLAN MTU.
- Use 802.3x flow control on the i82558/i82559.  This is all handled
  transparently by the hardware.  When in promiscuous mode, allow
  wire-watchers to see the flow control frames.
- Use the Extended TxCB format on the i82558/i82559.  This places two
  Transmit Buffer Descriptors directly in the TxCB, which should cover
  the vast majority of packets transmitted.  This saves PCI transactions
  that would otherwise be required to fetch the TBD list.

With the tansmit queue length changes from yesterday, this gets us up to
11.5MB/s TCP transmit speed, out of an absolute maximum of 12MB/s possible
on a 100Mb/s link.
2001-05-22 15:29:30 +00:00
bouyer 2a604875d6 Remove one extra byte from scsipi_mode_select; pointed out by Juergen
Hannken-Illjes.
2001-05-22 15:14:24 +00:00
augustss e25bf167a1 Regen. 2001-05-22 10:43:15 +00:00
augustss f43e2c6ba1 Add Scanjet 4300. 2001-05-22 10:38:56 +00:00
thorpej a5a03e13dd Report 82558, 82559, etc. based on chip revision. Also, remember which
revsion we have for feature enables later.
2001-05-22 01:23:25 +00:00
jhawk 4af61a686a oops. Make it compile. 2001-05-22 00:43:12 +00:00
jhawk b5805fa0c8 Sigh. Regen correctly. 2001-05-22 00:41:52 +00:00
thorpej 611e112566 A little slight cleanup. 2001-05-22 00:27:01 +00:00
jhawk 7a31dfa328 Supoprt the IOGEAR/ATEN UC-232A, which uses the Prolific 2303.
Make this the "PRODUCT_PL2303" because it's actually id 0x2303
and change the old PRODUCT_PL2303 to PRODUCT_RSAQ.
2001-05-22 00:18:03 +00:00
thorpej fb4607ec45 Add some additional register definitions, from FreeBSD. 2001-05-22 00:07:32 +00:00
thorpej 0064d69faf Re-arrange the transmit control data somewhat so that we can
use the extended TxCB format (that change will happen later).
2001-05-21 23:58:44 +00:00
minoura 92d92b1cb2 Correct an easy mistake in initializing gain registers.
This will fix the L-R imbalance.
Suggested by Ryo HAYASAKA <ryoh@jaist.ac.jp>.
2001-05-21 23:55:04 +00:00
thorpej 65ac078927 Sigh, typo in last. 2001-05-21 23:21:27 +00:00
thorpej 00f922fa70 Change NTXSEGS from 16 to 8, and the TXQUEUE len from 128 to 256. Also
increase the number of Rx buffers from 64 to 128.

These mirror some performance tweaks made to the sip(4) driver.
2001-05-21 22:20:31 +00:00
thorpej afdab0cab8 The ICH3 also has the Resume Bug. 2001-05-21 22:12:08 +00:00
thorpej a0f9e3c6fb Regen; add ICH3 network controller IDs. 2001-05-21 22:11:31 +00:00
thorpej 6b51adfbff Add ICH3 network controller IDs. 2001-05-21 22:11:06 +00:00
thorpej d84e2452ea Fix non-fatal typo -- CB_NOP -> CU_NOP in the ICH work-around (they
have the same value).
2001-05-21 21:49:51 +00:00
thorpej b4538a0165 The 82801BA built-in Ethernet has a bug which requires us to
issue a NOP before a CU_RESUME when in 10baseT mode.  Handle
this.
2001-05-21 21:47:52 +00:00
thorpej e7a0ef6145 ANSI'ify. 2001-05-21 20:59:38 +00:00
jhawk ecb3a30463 add $NetBSD$ 2001-05-21 20:47:13 +00:00
mjacob 3462fe5d99 Remove reference to adapter_q in scsipi structure. Comment about the
usage of channel_q.
2001-05-21 15:50:46 +00:00
ichiro 598241f757 add product COREGA FEther-PCC-TXF
kern/11357 and report from goro@venus.dti.ne.jp
2001-05-21 13:48:25 +00:00
ichiro fd7d5008e8 regen 2001-05-21 13:45:10 +00:00
ichiro 4108bc4645 add product COREGA FEther PCC-TXF 2001-05-21 13:44:48 +00:00
christos 2ed6d9dbf7 PR/12991: Dave Huang: DVD ioctls don't work because we send the wrong size
CDB (16 instead of 12).
2001-05-20 21:07:58 +00:00
bjh21 86e12294cd Add Multi-media/Ethernet card from Irlam. 2001-05-20 21:07:06 +00:00
bjh21 65165c3deb 16-bit podules I acquired at Wakefield:
- Added SJ Research Nexus
 - Note HCCS use same ID for IDE and SCSI cards
 - Update Castle EtherSCSI entry
2001-05-20 20:40:19 +00:00
ichiro cb675810e0 add more comment about firmware of EVAL-CARD. 2001-05-20 13:14:54 +00:00
ichiro c13971f816 chenge chip and card identity,
print RF-chipset, Medium Access Controller(MAC) and CARD-identity
2001-05-20 12:57:57 +00:00
ichiro 309a9b433c delete RCS Id from pcmciadevs rev 1.128 2001-05-20 10:47:50 +00:00
ichiro 3b35709de7 make compile again
(fix warning : missing white space after `#define....)
2001-05-20 09:54:47 +00:00
ichiro a2dd9d529f regen 2001-05-20 09:16:14 +00:00
ichiro caed7fa236 add vendorID National Instruments
add productID PCMCIA-GPIB
2001-05-20 09:15:54 +00:00
soren 281f1795a4 Add TI 1410 to yc_chipsets[]. 2001-05-19 19:46:08 +00:00
tsutsui 3d863329cc space/TAB cosmetics 2001-05-19 12:04:07 +00:00
is 5c9dc5b0d0 When abusing structs to describe on-wire (or in-hardware) data structures,
they need to be packed. (Without this, breaks on at least m68k.)
2001-05-18 21:11:43 +00:00
enami e4334b830d Don't capitalize the word sync or async. It's inconsistient with other
messages.
2001-05-18 16:25:07 +00:00
enami d5338ae90e Regen. 2001-05-18 15:35:49 +00:00
enami 679f6a1a54 Add product IDs of internal devices found in NEC VRC4173 and vendor/product
ID of MediaQ MQ200.
2001-05-18 15:35:19 +00:00
bouyer 8aa2f73d43 Enable tagged queuing again; should work now with scsipi_base rev 1.42 2001-05-18 12:57:42 +00:00
bouyer 8b5bf22895 Workaround for broken drives (explained to me by Chris G. Demetriou):
some devices can't handle tag number larger than some values and always
reject commands with QUEUE FULL if the tag number is larger than this.
Under some circonstances the scsipi system may not decrease periph_openings
(as a workaround of other odd behavior) and we may end up requeuing the command
with a hight tag value again, and the driver could loop on this.
Workaround: in case of queue full, decrease periph_openings to
min(periph_active - 1, periph_openings - 1) so that, after some iteration,
periph_openings is less than the max tag value acceptable by the device.

Solves the problem with tagged queuing on ncr53c9x for me.
2001-05-18 12:56:28 +00:00
fredette d76bcda838 Fixed some typos, removed unused asm() labels. Removed
the DMA map creation, now the bus glue does this.
2001-05-18 12:51:58 +00:00
drochner 3df4a7a4a8 do this console device lookup thing the right way this time
(This "dev" argument to the console functions is nonsense - nothing
should depend on it.)
2001-05-18 11:49:21 +00:00
jhawk 4601552595 Regen 2001-05-18 06:14:40 +00:00
jhawk 6f032f45b3 Support the Socket EA pcmcia ethernet (ne). It's ooooold. 2001-05-18 06:05:52 +00:00
thorpej f1f78293df - Add some instrumentation which can be enabled by defining
SIP_EVENT_COUNTERS.
- Decrease SIP_NTXSEGS to 8 and increase SIP_TXQUEUELEN to 256.
  This gives us 256 transmit jobs with only twice the descriptor
  memory footprint.  This prevents stalling transmissions due to
  lack of transmit jobs under heavy load.
- Increase SIP_NRXDESC to 128 so we don't run out of receive descriptors
  under extreme load.
- As recommended by the manual, leave one descriptor in the transmit ring
  with OWN clear to prevent wrap-around.
- Even though the manual claims that driver software must initialize
  TXDP if there are no pending transmissions when a new transmission
  is to be initialized, doing so causes serious performance degredation
  on the DP83820 under heavy load.  Not initializing TXDP also increases
  performance on the DP83815.

All of this gets us up to ~90Mb/s on both the DP83820 and DP83815 when
connected to a 100base network.
2001-05-18 04:38:30 +00:00
thorpej dbdf3820d8 Add a driver for the National Semiconductor DP83820 Gigabit Ethernet
chip.  This is found on the NetGear GA-622 and Asante FriendlyNet
GigaNIX.
2001-05-18 02:03:53 +00:00
bouyer 7ddcb8122d SDEV_DB -> SCSIPI_DB 2001-05-17 20:02:56 +00:00
drochner bc8eda57c9 increase the delay after PHY reset - it seems that mii register accesses
can fail if attempted too soon after reset
2001-05-17 19:00:18 +00:00
drochner 199e9f8164 regen 2001-05-17 17:39:30 +00:00
drochner 10aff2d3f0 argh - the OUI of PMC-Sierra is 00-e0-04, according to IEEE.
They managed to mess it up in a new way.
2001-05-17 17:39:00 +00:00
drochner c1f451f54d regen 2001-05-17 17:37:01 +00:00
drochner 2e9334d53e add some stuff I got between my fingers 2001-05-17 17:36:30 +00:00
drochner c1617a9b13 check PCI subsystem ID for a SMC9432BTX1 or SMC9432FTX and tell the common
driver about their media support (BNC and 100FX, respectively)
2001-05-17 17:35:13 +00:00
drochner 323adb5a41 support BNC interfaces (serial mode) as on the SMC9432BTX and 100FX
on the SMC9432FTX
2001-05-17 17:32:47 +00:00
drochner 1ea0cb1ea4 support the fiber output of the PHY device, enabled if the MIIF_HAVEFIBER
flag is passed in from the board driver
2001-05-17 17:29:54 +00:00
drochner 002851041c re-enable mii_flags in attach args - I've found a use for it: tell the
PHY which support it that a fiber interface is present
2001-05-17 17:28:21 +00:00
ichiro 0fcd8f3c7f regen 2001-05-17 13:15:47 +00:00
ichiro 8f8e3e808f add products
Intel PRO/Wireless 2011 LAN PC Card
2001-05-17 13:14:19 +00:00
drochner 5e1115908d Revert previous change; this breaks for the old controllers which 1.6
should help for. Instead, weaken the "echo" test: don't insist in
getting the same value back which was written.
2001-05-17 10:48:39 +00:00
scw d1bc67e029 In osiop_scsidone(), call scsipi_done() even for polled operations.
This fixes a `hang' on shutdown when the `Synchronise Cache' command
is sent to a disk. (It uses polled mode because it is called from inside
a shutdown hook).
2001-05-17 10:35:30 +00:00
jmc c2b5ec5220 Add a few nits. Hubs seem problematic on resets sometimes.
Also, make sure fwohci can detach cleanly (for cardbus).
2001-05-17 05:30:37 +00:00
chs bcc2ce4f8c give sunkbd and sunms a "poll" routine. 2001-05-17 02:24:00 +00:00
mjacob 90cabee3fb Per helpful suggestion from LukeM- make INLINE usage consistent (and
use correct __inline format).
2001-05-16 21:41:52 +00:00
jdolecek 8e532c1ad1 Make sure to allocate big enough mbuf data area before elevating
interrupt priority, to avoid allocating additional mbufs on
splsched(). Move some other misc bits out of splched()-guarded
section. This should make the code a bit more friendly wrt e.g.
clock interrupts. Sligh performance improvement was observed with
this change (like 1-2% on slow machine), even.

This also fixes ancient kern/2478 by Bill Sommerfeld.
2001-05-16 20:30:52 +00:00
ichiro 8a78799bf4 support BUFFALO AirStation WLI-PCM-S11
this card are PRISM2.5 card.
2001-05-16 14:33:21 +00:00
ad c6da2452c0 Put back /usr/include/dev/tc/sticreg.h. 2001-05-16 13:48:52 +00:00
ichiro 25221c413e regen 2001-05-16 12:57:55 +00:00
ichiro 4c575cc65b add product
BUFFALO AirStation 11Mbps WLAN Card
2001-05-16 12:57:27 +00:00
tsubai eef5fa50d3 Big-endian support. 2001-05-16 10:45:36 +00:00
ichiro 15833cae3b add prism chip identity, Prism2 with SST flush. 2001-05-16 07:53:28 +00:00
lukem ff47810d07 fix previous delint 2001-05-16 06:29:01 +00:00
lukem c15945130c delint: remove unnecessary assignment to same objection (hidden in #define) 2001-05-16 04:50:11 +00:00
lukem be493349d2 delint: zero sized array initalisation is a gccism 2001-05-16 04:39:03 +00:00
lukem 927097774a delint: remove volatile from fxp_mdi_read() decl 2001-05-16 04:20:55 +00:00
mjacob b81e69fa8e beginning basic 2300 infrstructure support 2001-05-16 03:58:34 +00:00
mjacob 9f2c2c7a8c Keep up with the Joneses.... further synchronization for the eventual
implementation in NetBSD for target mode.
2001-05-16 03:58:03 +00:00
mjacob 73eba1a839 Long overdue- put locks on the usage of the mailbox command stuff. This
keeps us from stomping on ourselves.

Say we're in the middle of re-evaluating a loop (and sleeping) when a
command completes, or a timer refires, and this *other* thread decides
*it* wants to start re-evaluating the loop. Bad news.

We have to be a bit careful- if we can't acquire the MBOX semaphore at
interrupt level, we will simulate a host interface error. This is a bit
of a temp workaround. There's some work underway driven by a NetBSD
commercial user that will try and force most mailbox stuff into a
part A/part B interrupt driven model.
2001-05-16 03:55:15 +00:00
mjacob a1dd9d78ee It's 'role None', not 'role No'.
Also, pay attention to the difference in the ISPASYNC_CHANGE_NOTIFY
between loop and fabric changes.
2001-05-16 03:52:10 +00:00
ichiro 9a3074ffce cosmetic change.
change version format: <major>.<minor> variant <num>
2001-05-16 02:36:37 +00:00
matt 91d9961f24 Regen 2001-05-15 23:18:16 +00:00
matt 75d77bf185 Add OUI for PMC-Sierra. Add BCM5221 Phy. Add PM8351 Phy. 2001-05-15 23:17:48 +00:00
matt f5d9baae2f Note that extended status is in register 15 2001-05-15 23:16:40 +00:00
christos 6ae38c2f7a Try the kbc_auxtest if the random write/read to the aux port fails (it returns
0xfe on my gateway 2000 circa 1993). That should not affect broken controllers
that choke on the kbc_auxtest, because for those the write/read test succeeds.
2001-05-15 22:01:07 +00:00
thorpej c2ffdccb2b Regen; Add National Semiconductor DP83861 1000baseTX PHY. 2001-05-15 21:37:33 +00:00
thorpej 8fd542b023 Add National Semiconductor DP83861 1000baseTX PHY. 2001-05-15 21:37:04 +00:00
lukem d62b92e0f7 delint: () protect some macro args 2001-05-15 15:41:27 +00:00
lukem 889762fbcf delint: need ; between case label and } 2001-05-15 15:25:04 +00:00
lukem e3134697e1 delint: remove comments from macro args; confuses cpp/lint 2001-05-15 15:06:23 +00:00
lukem 09ba301f07 delint: () protect some macro args 2001-05-15 15:00:04 +00:00
lukem 9bef152bd7 delint: need ; between case label and } 2001-05-15 14:57:49 +00:00
lukem 0b6a1eb95a delint: () protect some macro args 2001-05-15 14:37:36 +00:00
lukem d3e16de232 delint: need ; between goto label and } 2001-05-15 14:30:24 +00:00
lukem b6b83e2ec3 delint; use MAX(sizeof(..),sizeof(..)) instead of max(...) for array size 2001-05-15 14:03:27 +00:00
lukem 13a9902fc6 delint: can't have an empty case item at the end of a switch; need a ; at least 2001-05-15 13:53:20 +00:00
ad ae0203ee27 Correct arguments to bus_dmamap_create(), and add a reset routine for the v3
interface.
2001-05-15 12:49:37 +00:00
ichiro 0071e88a8c fixed mistake.
major version and minor version were made reverse.
2001-05-15 11:45:50 +00:00
ichiro 08d33f4cc0 Fix indentation in recent commit. 2001-05-15 09:06:15 +00:00
ichiro 4afb07bd12 getting prism2 firm ver routine to wi_get_id().
if firm ver is more than 0.8c3, promiscuous mode is off.

typo WI_RID_STA_IDENEITY -> WI_RID_STA_IDENTITY
2001-05-15 09:01:27 +00:00
jmc 0aae41bf84 Clean up comment about unregistering callbacks 2001-05-15 06:54:07 +00:00
jmc c3967bca55 Various small changes.
Clean up one bug in a DPRINTF in arrs_input which could panic on some packets.
Gut the ack/response functionality and clean it up so all packets get checked
correctly and the abuf struct isn't used once the ab_cb has happened (there
still could be ack packets waiting to be processed at that time).
Finally, add some documentation explaining read/write/inreg and their
purpose/argument calling.
2001-05-15 06:52:30 +00:00
jmc d91da495a9 Back out last change until I get fwohci rototilled better for checking the ack bits. Makes things compile again. 2001-05-15 06:30:30 +00:00
ichiro caa399b739 WEP cannot be used when Prism2 Firm version is lower than 0.8.3.
Although WEP is used in Windows also in an old firm,
because WEP is processed by the windows driver side.
If Prism2 Firm version is more than 0.8.3, WEP does work without 'Promiscuous ON'.
2001-05-15 04:27:22 +00:00
kanaoka 4d4231d0e9 Add support for "Corega FEther CB-TXD".
kern/12709: from Yamashiro Jun <j99060@ie.u-ryukyu.ac.jp>.
2001-05-15 04:26:23 +00:00
kanaoka b003ab3d9c Regen. 2001-05-15 04:25:12 +00:00
kanaoka 0f5babc5cb Add product "Corega FEther CB-TXD". Modified from kern/12709.
from Yamashiro Jun <j99060@ie.u-ryukyu.ac.jp>.
2001-05-15 04:24:28 +00:00
ichiro 2970b99ac9 It enabled it to control roaming mode and authentication mode.
Roaming mode can change value into 'firm mode' and disable.
Authentication mode can change into 'Open System authentication'
and 'Shared Key Authentication' with Prism2 chip.

wi_get_id() was introduced in order that chip might judge automatically
whether it is Prism2 chip. Therefore, a pp_prism2 entry in
"struct wi_pcmcia_product" became unnecessary.
2001-05-15 04:14:06 +00:00
thorpej 38c798fe9f Encapsulate name declarations in macros in preparation for adding
conditionally-compiled code for the DP83820.
2001-05-15 03:06:21 +00:00
thorpej edfd12a9b1 Define the register/descriptor differences between the DP83815 and the
DP83820.  The DP83820 definitions are wrapped in #ifdef DP83820, since
there are enough differences that a single binary object would not be
able to efficiently drive both the DP83815 and DP83820.
2001-05-15 02:19:05 +00:00
thorpej bdb6ea6ecc Regen; added DP83820 Gigabit Ethernet chip. 2001-05-14 22:37:24 +00:00
thorpej 285931ff50 Add product ID for the National Semiconductor DP83820 Gigabit Ethernet
chip.
2001-05-14 22:36:06 +00:00