Commit Graph

3320 Commits

Author SHA1 Message Date
dyoung
1ff3c191c9 Fix WEP transmission, too. From FreeBSD/Sam Leffler. 2003-10-16 09:31:08 +00:00
dyoung
bcde77e394 ath(4) failed to detect when the number of DMA segments exceeded
the number of descriptors, because of a disparity between the
bus_dmamap_load_mbuf implementation in FreeBSD and NetBSD. Now I
cover up the difference using ath_dmamap_load_mbuf.

Thanks Enami Tsugutomo for diagnosing this.
2003-10-16 09:13:30 +00:00
ichiro
581dfca276 add {shutdownhook,powerhook}disestablish() 2003-10-16 07:55:18 +00:00
itojun
a4a1466cb5 add $NetBSD$ 2003-10-15 23:23:39 +00:00
enami
73473f6883 Return 0 on SIOC{ADD,DEL}MULTI. 2003-10-15 22:41:22 +00:00
itojun
d587f445de s/printf/DPRINTF/ for ath_rate_ctl() 2003-10-15 22:19:31 +00:00
bouyer
70b50b0608 Make sure chp->atabus is initialised, and wakeup the right address when
shutting down the kernel thread.
2003-10-15 20:29:26 +00:00
bouyer
ea6912c52d - don't ignore last bit when checking for floating bus value on slave
device; some ATAPI devices as master will report 0x7f in all registers
  for slave before reset
- For the same reason, remove the er1 check.
Makes slave device with a "strange" ATAPI master probe again.
Problem reported and fix tested by Gary Duzan on current-users.
2003-10-15 20:26:33 +00:00
bouyer
3d6919754d Clear chp->ch_drive[i].drive_flags if we didn't find a driver for the
drive.
2003-10-15 19:54:30 +00:00
dyoung
e86c830f2a Fix WEP reception. 2003-10-15 11:40:07 +00:00
simonb
662c7128cd Re-order a little so that there's no unreachable code in this block. 2003-10-15 07:18:17 +00:00
enami
8823a8da9a Port multicast handling to NetBSD. Addresses PR23151. 2003-10-15 03:04:03 +00:00
dyoung
f2a9708c75 Do not index arrays using enum constants, since enums can be
re-ordered and extended. Instead, use a switch-statement or a
key->value table with appropriate bounds-checking.
2003-10-14 23:13:44 +00:00
ichiro
f4f7b1ae5c add support ath on cardbus
- implement power management
2003-10-14 17:47:03 +00:00
dyoung
031c2c9baa Why don't I make up my mind? No need to left-shift the country
codes when I right-shift the country-code register! Fixes a bug
reported by Dan Carosone: regulatory domain "ETSI" registered as
domain "Spain/Other", so he could only tune channels 10 and 11.
2003-10-13 16:35:49 +00:00
dyoung
2295b27590 Install athioctl.h, defining ioctls for Atheros 802.11a/b/g radios. 2003-10-13 08:29:48 +00:00
dyoung
372fd2b92a Adapt atw(4) to the new 802.11 layer.
Simplify atw_start, atw_newstate.

Synchronize access to atw_start by bracketing the call to
ieee80211_next_scan in atw_next_scan with splnet()/splx().
2003-10-13 08:22:19 +00:00
dyoung
e31cc884ed Adapt awi(4) to the new 802.11 layer. 2003-10-13 08:10:48 +00:00
dyoung
ef743c64b6 Switch wi(4) to the new 802.11 layer. 2003-10-13 08:07:21 +00:00
dyoung
2459b02669 Switch an(4) to using the header files in the new 802.11 layer. 2003-10-13 06:45:32 +00:00
dyoung
a71225fe22 NetBSD/FreeBSD compatibility changes NetBSD, especially
locking, mbuf
2003-10-13 05:34:30 +00:00
dyoung
ae577fc6ea Miscellaneous changes for NetBSD compatibility. 2003-10-13 05:23:07 +00:00
dyoung
b495f27bbd A compatibility layer to smooth differences between NetBSD and
FreeBSD for ath(4).

XXX    Nobody with FreeBSD has signed off on this, so it may change
XXX    or go away entirely.
2003-10-13 05:16:20 +00:00
bouyer
c298ea9fc9 Remove block that has been pasted twice. Pointed out by Alexander Yurchenko. 2003-10-12 19:28:50 +00:00
fvdl
7a26a8b8f5 Don't zap the lower 16 bits of the command/status register when clear
error bits.
2003-10-10 15:15:44 +00:00
briggs
85edb66218 Properly clear any latched errors before re-enabling SERR/PERR for PCI-X
in ahd_reset().
2003-10-10 15:02:08 +00:00
bouyer
0ea3fa883e Remove the check for WAIT+POLL+READ case in __wdccommand_start(),
this case is already handled in __wdccommand_intr().
Pointed out by Charles M. Hannum.
2003-10-09 18:40:19 +00:00
bouyer
7719e83c8b Following Matt Thomas's request, rename ata attribute to ata_hl, and
wdc_base to ata. We can now have
atabus* at ata?
in kernel config files.
2003-10-08 20:57:59 +00:00
pk
ded7383371 In isp_fc_worker() reduce the timeout value used to poll for the link
status from 10 seconds to 250 milli seconds for the second and subsequent
attempts to determine the link status. This prevents unnecessary long
stalls after the device attach routines have completed.

Tested on a dual port QLogic 3212.  Approved by mjacob@feral.com.
2003-10-08 19:51:01 +00:00
fvdl
61834e8959 Cap the transfer size at MAXPHYS, the driver won't get bigger requests
than that. Allocating 16M per SCB is silly (as pointed out by
Frederick Bruckman).
2003-10-08 17:38:31 +00:00
bouyer
99d6009c2a Make the ATA mid-layer appears as atabus, as proposed in
http://mail-index.netbsd.org/tech-kern/2003/09/25/0006.html
This adds a device (atabus) between IDE controllers and wd or atapibus, to
have each ATA channel show up in the device tree. Later there will be atabus
devices in /dev, so that we can do IOCTL on them.
Each atabus has its own kernel thread, to handle operations that needs polling,
e.g. reset and others.

Device probing on each bus it defered to the atabus thread creation.
This allows to do the reset and basic device probes in parallel, which reduce
boot time on systems with several pciide controllers.
2003-10-08 10:58:12 +00:00
mycroft
32856df936 We really don't need to do 2 resets in wdc_channel_attach() -- the one done
by wdcprobe() is enough.
2003-10-08 08:47:58 +00:00
fvdl
f4f3bc1663 OR in ahc->sc_dmaflags when passed to bus_dmamap_create() in ahc_alloc_scbs(),
in order to pass _ISADMA_32BIT if needed. Should fix SCB allocation
failure for 2842 VL cards.
2003-10-07 19:11:13 +00:00
martin
9e16642238 Adapt to recent PRI changes. 2003-10-07 19:02:36 +00:00
dyoung
c3139592cc Initial import of ath(4) from FreeBSD. 2003-10-07 05:27:17 +00:00
bouyer
3e1a342dd1 Revert to polling for ata_get_params() in wdc_channel_attach().
When probing a nonexistent slave, we may timeout waiting for an interrupt.
In __wdccommand_start(), for polled data in commands, abort quickly if
status still read 0 after 400ns (for a nonexistant slave, the
command will either be aborted, or the status register will report 0; for
a real device we should have BSY, DRQ or ERR).
Thanks to Alexander Yurchenko for reporting the problem and testing the
fix.
2003-10-06 21:51:31 +00:00
dyoung
865b1e786b For memory-mapped access, get the endianness right on big-endian
hosts.  This makes awi work marginally better (although it's still
broken) on my Powerbook.
2003-10-04 22:04:36 +00:00
pooka
dae7af8b24 Ready the kernel side of i4b for primary rate interface support by
removing assumptions that there are only two B channels and by
adding support for a varying number of channels.

Due to this, rename previously used isdn identified "bri" to "isdnif",
which better describes the current situation.
2003-10-03 16:38:44 +00:00
fvdl
7baac02537 Reenable negotiation by default for discovery commands, until I figure out
what the issue is.
2003-10-01 18:01:06 +00:00
itojun
c6eceb7a58 avoid out-of-bounds memory access (array size out of sync). found by
openbsd 'bound' attribute.
2003-10-01 08:07:39 +00:00
briggs
701f5ff4ba Make sure that we don't blow away the enables in ahd_reset() on PCI-X. 2003-09-30 12:34:16 +00:00
wiz
37ac1db454 available, not avaliable. From miod@openbsd. 2003-09-29 09:50:21 +00:00
cube
e57b040603 Change the way of setting a port value so that a change too small to
fit in the number of bits used for the port still does something.

This fixes PR pkg/18741 for ac97-based hardware. Other audio drivers
might need a similar fix.
2003-09-28 22:24:09 +00:00
kent
1bea39944d codec id for AD1985 2003-09-28 15:39:09 +00:00
tls
d0ffab287c Remove NOSETTLE flag from channel in FibreChannel case. It makes sense that
it should be there, but in practice, on some systems an ugly race condition
rears its head: SCSI commands are issued before the FC thread ever runs, and
fail from then on forever.  Yuck.
2003-09-27 03:43:08 +00:00
wiz
db579612f4 Definition, not defintion. From miod@openbsd. 2003-09-26 22:25:21 +00:00
simonb
5c54e29374 Cast through (void *) to appease gcc3. 2003-09-26 16:02:24 +00:00
mycroft
eefae40298 Hide the use of config_interrupts() in one place. 2003-09-25 19:29:48 +00:00
pooka
a99f02d0ee Add a driver for the CAPI-compliant AVM B1/T1 cards.
The driver backend is capable of supporting also ISA cards (no DMA)
and primary rate (PRI) cards in addition to the basic rate ones,
but I don't any to test on right now, so we don't support those
currently.

This code was originally written by Juha-Matti Liukkonen <jml@cubical.fi>
of Cubical Solutions Ltd. for FreeBSD, and was ported to NetBSD by
myself for the same company.
2003-09-25 15:53:26 +00:00
bouyer
703c60f5c6 Don't print modes we are using if we don't know which modes are really used. 2003-09-25 09:38:09 +00:00