Commit Graph

74034 Commits

Author SHA1 Message Date
rumble
e837411407 Remove the static sq_trace array and make it per-device as
multiple seeq interfaces may exist. While here, add a few trace
actions, move the related macros into sqvar.h, and enhance the
sq_trace_dump output a bit.
2004-12-29 02:11:31 +00:00
dyoung
c75b3dae43 Remove some dead code. 2004-12-29 01:13:07 +00:00
dyoung
9bd9e3df21 Remove unused rtw_softc variables and some other dead code. 2004-12-29 01:11:24 +00:00
dyoung
c3b84ef737 I like the tlp/atw-style names for software descriptors, txsoft,
better than txctl.  Change from rtw_txctl/rtw_rxctl to
rtw_txsoft/rtw_rxsoft.  Change the descriptor blocks' names to
match: rtw_txctl_blk becomes rtw_txsoft_blk.  Change the member-name
prefixes for both software and hardware descriptors.
2004-12-29 01:06:52 +00:00
dyoung
d07caa7269 Consolidate variables related to the rx ring in sc_rxdesc_blk,
which is a struct rtw_rxdesc_blk.

Put a copy of the DMA tag and the DMA map into the rx- and tx-ring
blocks so that I don't have to pass them to subroutines all of the
time.
2004-12-29 00:21:37 +00:00
nathanw
96f80cede0 USB_DETACH(): Don't zero out sc->sc_pipe[i] after aborting the
pipe. This lets umass_disco() free the pipes and associated controller
state, rather than leaking 2-3 pipes per attach/detach cycle.
2004-12-28 23:35:21 +00:00
dyoung
f1fa0e7819 Add bpf(4) packet taps to rtw(4). Now you can tap DLT_EN10MB
(Ethernet II), DLT_IEEE802_11 (802.11), and DLT_IEEE802_11_RADIO
(radiotap + 802.11).
2004-12-28 22:30:07 +00:00
dyoung
88f91a4188 If defined(RTW_DEBUG), provide a sysctl (hw.rtw.rxbufs_limit) for
limiting the number of rx buffers an rtw may allocate.  Use this
sysctl to test the code that copes with buffer exhaustion.

Allocate at most RTW_RXQLEN rx buffers, stopping at the sysctl
limit.  Record in sc_nrxdesc how many were allocated, and put the
end-of-ring indication on sc_rxdesc[sc_nrxdesc - 1].  In rtw_init,
if no rx buffers could be allocated, log a complaint, clear
IFF_RUNNING, and exit with an error.

Many changes to accomodate a short rx ring, mainly of the "add a
rx-ring length argument" variety.  XXX I really should consolidate
all of the rx ring variables in one struct and pass that to the
rx-ring subroutines.

Bug fix: after calling MCLGET, use the (m->m_flags & M_EXT) idiom
to check for success, instead of m != NULL.

Bug fix: at the top of rtw_start, if IFF_RUNNING is not set, or
IFF_OACTIVE is, get out.
2004-12-28 22:21:15 +00:00
dyoung
05372fb8f4 Group receiver-related variables together: move sc_rxctl nearer to
sc_rxnext.

Add sc_nrxdesc, the number of receive descriptors that we are
actually able to use.  sc_nrxdesc will ordinarily equal RTW_RXQLEN.
If buffers are exhausted, sc_nrxdesc < RTW_RXQLEN.  My next commit
will change dev/ic/rtw.c to deal with buffer exhaustion.
2004-12-28 22:07:04 +00:00
christos
ef8015e649 - cleanup some debugging stuff.
- don't create the sysctl nodes if we don't have a synaptics pad.
2004-12-28 20:47:18 +00:00
joff
3a8922c4d8 descend into TS7200_flash_0x60660000 2004-12-28 16:19:41 +00:00
jmc
a6be320e8b Make sure all objects strip out the .eh_frame section and force libsa/etc to
also do this for their objects. Otherwise this creates bootblocks that
are too large w. binutils 2.15
2004-12-28 07:50:00 +00:00
jdolecek
477f876cd6 size_t police
pointed out by Jesse Off on source-changes@
2004-12-28 01:12:26 +00:00
thorpej
65e20d49a9 Use uint32_t casts, rather than Elf_Byte, in ELF_ST_BIND() and ELF_ST_TYPE()
so we don't get screwed by promotion rules (and makes nlist_elf32.ln build
again).
2004-12-28 00:07:31 +00:00
christos
fc969eb142 According to the ELF docs, ELF{32,64}_ST_{BIND,TYPE,INFO,VISIBILITY} are
parts of the public interface. Define them in terms of ELF_ST_*.
Add STN_UNDEF which is part of the public interface also.
2004-12-27 21:35:03 +00:00
dyoung
075143dca9 Use a table to convert the hardware's bit rates (0, 1, 2, 3) to
net80211 bit rates (2, 4, 11, 22).

Count input errors (if_ierrors++) for "DMA error/FIFO overflow"
and unknown bit rate.
2004-12-27 20:04:45 +00:00
dyoung
0da2ab9a37 Simplify the reset we do on a transmit timeout. Really, this could
be as simple as rtw_stop(, 0), rtw_init().
2004-12-27 19:49:16 +00:00
jdolecek
52c7db3883 change wget_utf8() to not require NUL-terminated string as input,
and adjust callers appropriately. cn_nameptr isn't NUL-terminated
for non-leaf components, so it's incorrect to assume it is always
NUL-terminated.

This fixes previous utf8-ization changes to not panic for cases
like 'echo */*/*.ps' in case the intermediate path components
are not in cache (yet).
2004-12-27 18:47:16 +00:00
jdolecek
2ce9f4516f change wget_utf8() to not require NUL-terminated string as input (added
'size' parameter), and adjust callers appropriately
2004-12-27 18:14:36 +00:00
reinoud
4501e21ecb Update generated files from pcidevs (ENE update) 2004-12-27 17:21:46 +00:00
reinoud
a76863e103 Addition of description for :
/* ENE Technology products */
product ENE MCR510      0x510   MCR510 PCI Memory Card Reader Controller
2004-12-27 17:20:32 +00:00
tsutsui
b3090f536d Fix typo in comment. 2004-12-27 14:20:43 +00:00
dyoung
45d5300ab2 Cosmetic: remove some dead code. Join some lines. 2004-12-27 10:47:57 +00:00
mycroft
3b17804fc6 Use the last descriptor to count collisions and failed transmissions, too. 2004-12-27 10:17:38 +00:00
mycroft
cbcc1cc53f When checking if a split packet is completed, check the *last* segment, not
the first.  Otherwise we can overwrite parts of the TX ring that we shouldn't.

Kluge the basic rate setting for now.

Minor simplification to the dequeueing logic.
2004-12-27 09:40:18 +00:00
dyoung
07e67ea7d6 802.11 Control/multicast/broadcast packets are not acknowledged.
Set a shorter 802.11 Duration field, accordingly.

XXX We expect CTS/ACK at 1 Mb/s for 1 & 2 Mb/s stations; and CTS/ACK
at 2 Mb/s for 5.5 & 11 Mb/s stations.  We need to check with the
802.11 standard.  Rate negotiation may need to be overhauld for
standards compliance, too.
2004-12-27 09:25:05 +00:00
mycroft
8de0a60775 Fix the BRSR macros. 2004-12-27 08:59:16 +00:00
imp
8cc2724dbf sync to usbdevs 1.391 2004-12-27 07:05:32 +00:00
imp
76d1141e8d Very minor cleanup:
o Sort vendor PALM entry numerically
o For all vendors, separate the number from the name by a tab, not two
  spaces (this affects 5 entries).
2004-12-27 07:04:26 +00:00
dyoung
5ca7c3d3af Disconnect the "stop transmitter/receiver" function from the
"power-off NIC" function, by adding a 'disable' argument to ath_stop.
Pass disable=0 to ath_stop() at the top of ath_init, so that we
don't power-off the Cardbus slot before resetting the HAL.  Thanks
to Greg Troxel for his analysis of this bug.
2004-12-27 07:01:00 +00:00
dyoung
e336b06e3b Remove useless debug sysctls.
For AP scanning, change the channel dwell time from 1 second to
1/5 second.
2004-12-27 06:12:28 +00:00
mycroft
1989546a4c GC unused stuff. 2004-12-27 05:36:08 +00:00
mycroft
e3c9106a08 Simplify the duration calculations somewhat.
* Add an intermediate variable, ctsrate, which is currently derived directly
 from rate, but may be handled differently later (especially for 11g).
* Assume ACKs are sent at the same rate as the original data packet, as ath
  does, shortening the ACK reservation time substantially.
* Add a note that we need to deal with not adding the ACK time for some
  packets, though this is not implemented yet.

Questions:
* How do we affect the control rate used to send RTS/CTS packets?
* Is the PLCP header length actually controlled by the preamble length
  selection, or should this be based on the transmit rate?

Of course short preamble is not actually implemented/working yet.
2004-12-27 05:35:33 +00:00
joff
60b9b5a6ef do things the todr(9) way 2004-12-27 02:46:22 +00:00
joff
3f09dcaa18 Add tsrtc to TS-7200 config 2004-12-27 02:44:38 +00:00
joff
bb0dbb71f1 Clean up autoconf stuff 2004-12-27 02:42:49 +00:00
joff
cff4f0088d Add support for TS-5620 daughter card RTC 2004-12-27 02:41:54 +00:00
mycroft
9fc969bfcb Update a comment. 2004-12-27 01:57:58 +00:00
mycroft
06e4fe7f62 Replace d_plcp_svc with d_residue. The latter is the number of whole
empty/unused octets to fill out the data time slot.  The value is constrained
by math to 0 for <= 5.5Mb, 0-1 for 11Mb, and 0-2 for 22Mb.  It is used to
signal to the MAC that there is residue.
2004-12-27 01:51:49 +00:00
mycroft
c6d0afc871 Remove ELFn_ST_{BIND,TYPE,INFO}(), and instead add a generic ELF_ST_*() that
works with an Elf_Byte.  Also add ELF_ST_VISIBILITY() and STV_* types.
2004-12-26 23:37:29 +00:00
dyoung
fd1b54b080 Make rtw(4) build w/o RTW_DEBUG. Thanks to Charles Hannum for
pointing out my oversight.
2004-12-26 22:59:41 +00:00
mycroft
1083cfb1dd Fix a compile error if no RTW_DEBUG. 2004-12-26 22:37:57 +00:00
joff
0ac1f404ba support watchdog timer on TS-7200 CPLD 2004-12-26 22:02:10 +00:00
dbj
0c5a27af69 remove opt_compat_netbsd.h, afaict it is no longer needed.
i think it was previously used to pull in COMPAT_09 for ffs_statfs
2004-12-26 17:34:39 +00:00
imp
ee755844ef Sync to usbdevs 1.389 2004-12-26 07:39:50 +00:00
imp
71d471a43a Sort HAGIWARA entry (0x0693) numerically 2004-12-26 07:39:24 +00:00
kanaoka
9c2bc06a94 - Use ether_ioctl().
- Remove unnecessary re_init() in re_attach().
 - Remove notyet compile option.
2004-12-26 07:27:41 +00:00
imp
10065c5c65 Sync to usbdevs 1.388 2004-12-26 07:05:32 +00:00
imp
d30682d183 Sort LOGITEC (0x0789) entry numerically. 2004-12-26 07:03:29 +00:00
kanaoka
38f5c9155e - Sync if_re.c(rev=1.6).
When adding/deleting multicast addresses, only whack the address
    filter if the interface is marked RUNNING.

    Fixes kern/27678.
2004-12-26 06:48:13 +00:00