Commit Graph

2635 Commits

Author SHA1 Message Date
tron
92ca7a2bc8 Apply changes provided by Thilo Manske in PR kern/16118:
1. Fix setting of nominal fan speeds with ENVSYS_STREINFO.
2. Treat Winbond 83781D specially because it has a programmable divisor for
   FAN3 unlike generic devices.
3. Set nominal RPMs.
4. Fix a typo in the code for setting FAN3's divisor for W83782 type
   hardware monitors.
2002-03-30 13:37:41 +00:00
martin
e14f4779db Avoid duplicate expensive lookups by passing a pointer to the call
descriptor/a pointer to the layer 3 state directly to driver functions,
instead of their ID/index.
2002-03-30 11:15:41 +00:00
martin
f5e2c967fc Split BRI attaching into two phases, so lower layer drivers can get their
BRI identifier and L3 driver state early on, then finish initializing and
announce the controller to userland when it's ready.
2002-03-29 20:29:53 +00:00
matt
8a30192c27 Correct a comment and cleanup slightly how the local ethernet is programmed
into the chip.
2002-03-29 00:00:10 +00:00
bouyer
da0cf38ed5 In wdcintr(), it !WDCF_IRQ_WAIT, read the status register anyway to clear a
possible pending interrupt. This should avoid the interrupt loop described
in PR kern/15841.
It is safe to read status here, because if we're not waiting for an interrupt
we have no command pending, so the device should be idle.
2002-03-28 22:51:58 +00:00
onoe
45a8f0749c Fix to work Symbol firmware card, which cannot be initialized more than once.
Tested with 3Com 3CRWE737A and Intel Pro/Wireless 2011.
2002-03-27 08:01:22 +00:00
chs
150665fbb1 91C96 has the same chip ID as 91C94, list both in attach output. PR 11413. 2002-03-27 07:50:54 +00:00
martin
ebd73ccd11 After Jason Thorpe explained to me how it is supposed to work, implement
(de)activate for pcmcia cards.
Implement detach/(de)activate for PCI cards.
Clean up internal state (free call-descriptors) if a controller is
detached while it has open connections.
2002-03-27 07:39:35 +00:00
chs
23825982c3 add support for SMC 9332DST. 2002-03-26 07:57:16 +00:00
chs
99b5d17961 move some prototypes from tulip.c to tulipvar.h so they can
be used by bus-specific code.
2002-03-26 07:41:40 +00:00
martin
0db68b667b Now that we have all pieces in place (and enough granularity to specify
B-channel and D-channel drivers separately) split the Fritz!PCI card
driver out of the isic driver.

The new device is called "ifpci" and uses the same D-channel driver as the
isic devices, but has it's own B-channel driver.
2002-03-25 16:39:52 +00:00
martin
909e313a80 Remove a leftover from the BRI registry at layer 2.
Initialize layer 2's idea of it's BRI id after attaching.
2002-03-25 14:44:46 +00:00
martin
a994533d0a Make pcmcia cards detach properly.
Notify userland of attaching/detaching cards.
This partly fixes PR 15951.
2002-03-25 12:07:33 +00:00
dbj
ea44522489 changes from Warner Losh to read firmware version for non prism2 cards 2002-03-25 09:10:54 +00:00
martin
8a2d9422bd Fix confusion about the return value from the internal MI probe routine.
Make the ISA probe actually (silently) fail if no card is found.

XXX - need to aquire the SBUS variant of this card some day or have
Jaromir find an MCA one.
2002-03-25 09:08:09 +00:00
martin
0bc69b6498 Now that we have all the pieces of the puzzle available start to unriddle
and move them in their proper places.

Move the BRI registry from layer 2 (duh!) to layer 4, so active cards
(which don't have layer 3 or layer 2 in their driver). Remove all remaining
hard coded controller and driver types. Remove any arbitrary hard coded
limits, at least those that show up in the internal API.

This fixes PR 15950.
2002-03-24 20:35:43 +00:00
jdolecek
9977ae0589 ncr53c9x_attach(): if sc_rev is NCR53C90_86C01, set it to ESP100 once
the variant name is printed.
This fixes a problem that the card would be treated as ESP100 in
ncr53c9x_reset(), but not on couple other places (pointed out by
Andy Doran in private e-mail).

g/c now redundant case entry in ncr53c9x_reset()
2002-03-24 17:16:19 +00:00
bjh21
cc685cb13e __arm26__ -> acorn26. This has the advantage of actually being defined. 2002-03-24 15:52:33 +00:00
bjh21
a90a7a1ab7 Mention the DS2401 Silicon Serial Number. 2002-03-24 15:51:45 +00:00
itohy
78b5427b7e Add wait-for-ready code between setting MCE and changing data format,
which is required by OPL3-SA2 (YMF711) chip.
Fixes PR kern/14819.
2002-03-23 23:40:32 +00:00
gmcgarry
4c3affa3f6 Remove FreeBSD RCSID. 2002-03-23 03:40:24 +00:00
martin
9cea4a0ab0 Bring the daic driver into the new ISDN world order.
Enable active card support in the ISDN subsystem. (Had been disabled since
it couldn't be tested before.)
2002-03-22 09:54:15 +00:00
mjacob
d76d04685a Handle Port Unavailable the same as Port Logout (i.e., send a LIP).
Unconst pointer to f/w in the ispdv structure. Too many compilers get
unhappy over our walking the array. Make casts as appropriate so that
initialization in structure is still happy.

Limit length of fabric to 256. This will all go away soon.

Do a cleaner case of keeping multiple CPUs/threads from reading the
same response queue entries.
2002-03-22 02:34:05 +00:00
fredette
d564a038af Fixed a possible overflow bug in the timeout calculation. 2002-03-22 00:15:21 +00:00
itohy
a56d289043 I have Prism2 with 0.8.2 firmware, and have no problem
using WEP without promisc on the device.
2002-03-21 07:31:37 +00:00
thorpej
1a69060597 When getting the packet off the interface, make sure the payload is
aligned after the Ethernet header.

kern/15982, Hiroyuki Bessho <bsh@grotto.jp>
2002-03-20 17:42:23 +00:00
martin
e2c42aeaa8 Remove all knowledge about specific application (layer 4) drivers from
the generic layer 4 and layer 3 management system.

This should make the layer 4 driver API LKM clean - finaly.

Make the Fritz!PCI driver work again after resent changes (oops!),
noted by Frank Kardel (PR 15948) and Matthias Scheeler.
2002-03-17 20:54:04 +00:00
atatat
31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
martin
1e802e7eba Clean up the application (layer 4) driver vs. B channel driver interface.
One step further on the way to make layer 4 drivers LKMable.
2002-03-17 09:45:58 +00:00
dbj
28819987b7 don't set prism2 bit when WI_NIC_LUCENT is detected 2002-03-17 02:52:59 +00:00
chs
9846849435 in the TULIP_ROM_MB_21142_MII case of tlp_2114x_isv_tmsw_init(),
use "cp" instead of "ncp" as a temporary pointer into the SROM.
we still need the value of ncp here, it points to the next media block.
(update the copy of this code in tlp_21142_reset() just 'cause.)
this makes the BNC port on the Adaptec ANA-6911A work.
2002-03-16 17:38:35 +00:00
isaki
81b3e9fb81 Fix mis-increment bug in converter msm6258_ulinear8_to_adpcm().
This fix needs factor_denom.
2002-03-16 09:00:42 +00:00
martin
f4be3308da Psssst, don't tell anybody I commited this.
Add an ugly hack, #ifdef WI_AT_BIGENDIAN_BUS_HACK, to make the wi driver
access the underlying bus in big endian byte order.

This makes it possible to use this driver (probably one of the most
interesting ones) in the pcmcia slot of a stp4020 (nell) adapter at sbus. The
sparc ports bus_space_{read,write}_* macros do not provide a way to do this
cleanly now as they ignore the bus_space_tag_t parameter.

XXX - make bus_space_{read,write}_* on sparc do the right thing.
2002-03-15 13:15:36 +00:00
tsutsui
f54d57e135 Remove an arg name in prototype declaration. 2002-03-15 12:57:21 +00:00
chs
1ba402084f assume that 21143 SROM info blocks are in extended format (as the spec
requires), even if the bit to indicate this is not set.
this makes Phobos P430 4-port cards work.
2002-03-14 04:44:34 +00:00
ad
5d95c4499b Fix botch in previous. 2002-03-13 23:17:18 +00:00
ad
b89e39b91a Reorganise the wsfont stuff slightly so that multiple display adapters
with different bit/byte order requirements can co-exist happily.
2002-03-13 15:05:13 +00:00
uwe
a05702eaac Rework the driver to add EBus DMA support and improve APC DMA support.
Audio-related stuff is left almost intact.

* support audiocs at ebus playback and capture
    tested on krups and u5 (thanks, martin)
* make first attempt at supporting audiocs at sbus capture
* nb: full-duplex is not tested
* while here, fix CSAUDIO_MONITOR_MUTE to be of CSAUDIO_MONITOR_CLASS
    i.e. outputs.monitor.mute -> monitor.monitor.mute

Ok by pk, eeh.
2002-03-12 04:48:28 +00:00
ichiro
8596bfd754 fix 128bit WEP work with Prism2 Card.
from FreeBSD
2002-03-10 14:43:38 +00:00
itohy
d5f39a2d9c Add explicit support of OPL3-SA2 (YMF711).
Not well tested....
2002-03-10 13:57:10 +00:00
augustss
c93a7a4d14 Add a nic I don't really know much about, but it's used on my D-Link card. 2002-03-10 00:16:47 +00:00
thorpej
a180cee23b Pool deals fairly well with physical memory shortage, but it doesn't
deal with shortages of the VM maps where the backing pages are mapped
(usually kmem_map).  Try to deal with this:

* Group all information about the backend allocator for a pool in a
  separate structure.  The pool references this structure, rather than
  the individual fields.
* Change the pool_init() API accordingly, and adjust all callers.
* Link all pools using the same backend allocator on a list.
* The backend allocator is responsible for waiting for physical memory
  to become available, but will still fail if it cannot callocate KVA
  space for the pages.  If this happens, carefully drain all pools using
  the same backend allocator, so that some KVA space can be freed.
* Change pool_reclaim() to indicate if it actually succeeded in freeing
  some pages, and use that information to make draining easier and more
  efficient.
* Get rid of PR_URGENT.  There was only one use of it, and it could be
  dealt with by the caller.

From art@openbsd.org.
2002-03-08 20:48:27 +00:00
mjacob
1d228ae84c Disable RIO (reduced interrupt operation) for 2200 boards- it seemed like
it worked- but I ran into a case with a 2204 where commands were being lost
right and left. Best be safe.

For target mode, or things called if we call isp_handle_other response- note
that we might have dropped locks by changing the output pointer so we bail
from the loop. It's the responsibility of the entity dropping the lock to
make sure that we let the f/w know we've read thus far into the response
queue (else we begin processing the same entries again- blech!).
2002-03-07 00:14:04 +00:00
dbj
5c7e9abe49 return EINPROGRESS instead of EINVAL when trying to read
the results of an AP scan that is not finished
2002-03-06 14:41:39 +00:00
itohy
1990961dc9 Fix ADPCM playback/recording. 2002-03-06 07:12:02 +00:00
itojun
ac36f7cb2c bring in latest ALTQ from kjc. ALTQify some of the drivers. 2002-03-05 04:12:57 +00:00
simonb
64c7743a05 Don't "extern int cold;" - this is in <sys/kernel.h>. 2002-03-04 02:19:07 +00:00
dbj
47b3797fe7 Don't attempt to gather unrequested statistics.
Allow SIOCSWAVELAN with WI_RID_IFACE_STATS to request
an immediate statistics update.

We might in the future want to have SIOCGWAVELAN with
WI_RID_IFACE_STATS return an error if a statistics gathering is in
progress.  Then the caller could request fresh statistics and gather
them when they are done.  Instead, we currently just return whatever
statistics are available, which may be up to 60 seconds old.
2002-03-04 01:56:12 +00:00
dbj
e9d22f79b0 fix byte swapping when gathering statistics
this should complete the fix to pr 14385
AP scanning and statistic gathering should work on le hosts now
2002-03-04 01:33:17 +00:00
dbj
918b9d4dec correctly handle AP scanning result when there are no APs 2002-03-04 01:30:04 +00:00