25521 Commits

Author SHA1 Message Date
np
33f46cf89f cxgbe/tom: Plug mbuf leak.
MFC after:	3 days
2012-11-16 00:21:54 +00:00
eadler
8540e847a3 Remove unneeded header from agp: opt_bus.h
Tested with "make universe"

Approved by:	cperciva
MFC after:	1 week
2012-11-15 18:49:17 +00:00
eadler
efe80d1cbf Add deviceid to the disk output on boot to help debugging.
PR:		kern/173290
Submitted by:	Steven Hartland <steven.hartland@multiplay.co.uk>
Approved by:	cperciva
MFC after:	1 week
2012-11-15 15:06:09 +00:00
adrian
29059de593 Make sure the final descriptor in an aggregate has rate control information.
This was broken by me when merging the 802.11n aggregate descriptor chain
setup with the default descriptor chain setup, in preparation for supporting
AR9380 NICs.

The corner case here is quite specific - if you queue an aggregate frame
with >1 frames in it, and the last subframe has only one descriptor making
it up, then that descriptor won't have the rate control information
copied into it. Look at what happens inside ar5416FillTxDesc() if
both firstSeg and lastSeg are set to 1.

Then when ar5416ProcTxDesc() goes to fill out ts_rate based on the
transmit index, it looks at the rate control fields in that descriptor
and dutifully sets it to be 0.

It doesn't happen for non-aggregate frames - if they have one descriptor,
the first descriptor already has rate control info.

I removed the call to ath_hal_setuplasttxdesc() when I migrated the
code to use the "new" style aggregate chain routines from the HAL.
But I missed this particular corner case.

This is a bit inefficient with MIPS boards as it involves a few redundant
writes into non-cachable memory.  I'll chase that up when it matters.

Tested:

 * AR9280 STA mode, TCP iperf traffic
 * Rui Paulo <rpaulo@> first reported this and has verified it on
   his AR9160 based AP.

PR:		kern/173636
2012-11-15 03:00:49 +00:00
dim
9c86bf71dd Fix a bug in aicasm_gram.y, noted by a newer clang 3.2 snapshot: it
compared an enum scope_type against a yacc-generated define, so the
condition would always be false.

MFC after:	3 days
2012-11-14 18:54:08 +00:00
eadler
d3e9f06bb4 Add support for CIR1000 - Cirrus Logic V34 to the uart driver
Approved by:	cperciva (implicit)
MFC after:	1 week
2012-11-13 21:04:35 +00:00
eadler
1deec3f1c8 Add support for CIR1000 - Cirrus Logic V34 to the sio driver
PR:		kern/44267
Submitted by:	Michail Vidiassov <master@iaas.msu.ru>
Arrival-Date:	Sat Oct 19 07:30:00 PDT 2002
Approved by:	cperciva (implicit)
MFC after:	1 week
2012-11-13 20:38:55 +00:00
adrian
62f37f0bff Place 'dev.ath.X.debug' back under ATH_DEBUG, rather than ATH_DEBUG_ALQ. 2012-11-13 19:45:13 +00:00
adrian
ac29316d9a Add some debugging to try and catch an invalid TX rate (0x0) that is
being reported.
2012-11-13 06:28:57 +00:00
kevlo
a1044f4fd8 Use uiomove return value instead of returning 0. 2012-11-13 06:03:43 +00:00
kevlo
fd88f8a30c Check the return value of uiomove(9). 2012-11-13 05:58:52 +00:00
dim
66400b6a10 Redo r242889, now using the method from projects/amd64_xen_pv r240747.
Reminded by:	kib
MFC after:	3 days
2012-11-12 22:28:32 +00:00
sbruno
b4edfc644d Update MAX_TASKS to scale a bit based on MAXCPU
This alleviates issues on newer Sandy/Ivy Bridge gear that seems to require
boatloads more ACPI resources than before.

Reviewed by:	avg@
Obtained from:	Yahoo! Inc.
MFC after:	2 weeks
2012-11-12 18:09:25 +00:00
hselasky
bf20898333 Add new USB IDs.
MFC after:	1 week
PR:		usb/173503
2012-11-12 07:25:51 +00:00
adrian
e2f1ae9a76 Correctly fix the 'scan during STA mode' crash. 2012-11-11 21:58:18 +00:00
adrian
cd7d682064 Remove this; i incorrectly committed the wrong (debug) changes in my
previous commit.
2012-11-11 21:57:18 +00:00
rdivacky
c5c5ec362b Fix a typo. 2012-11-11 10:45:21 +00:00
rdivacky
17e7d09be8 Change the XNB_ASSERT from a statement expression to do-while(0) as its
result is never used.
2012-11-11 10:42:34 +00:00
adrian
3ec1356567 Don't call av_set_tim() if it's NULL.
This happens during a scan in STA mode; any queued data frames will
be power save queued but as there's no TIM in STA mode, it panics.

This was introduced by me when I disabled my driver-aware power save
handling support.
2012-11-11 00:34:10 +00:00
adrian
f5c29a79ef Correct some rather weird and broken behaviour observed when doing
actual traffic with an AR9380/AR9382/AR9485.

The sample rate control stats would show impossibly large numbers for
"successful packets transmitted."  The number was a tad under 2^^64-1.
So after a bit of digging, I found that the sample rate control code
was making 'tries' turn into a negative number.. and this was because
ts_longretry was too small.

The hardware returns "ts_longretry" at the current rate selection,
not overall for that TX descriptor.  So if you setup four TX rate
scenarios and the second one works, ts_longretry is only set for
the number of attempts at that second rate scenario.  The FreeBSD HAL
code does the correction in ath_hal_proctxdesc() - however, this isn't
possible with EDMA.

EDMA TX completion is done separate from the original TX descriptor.
So the real solution is to split out "find ts_rate and ts_longretry"
from "complete TX descriptor".  Until that's done, put a hack in
the EDMA TX path that uses the rate scenario information in the ath_buf.

Tested: AR9380, AR9382, AR9485 STA mode
2012-11-10 22:37:06 +00:00
dim
236a248a4a Fix all the inconsistent nve_os* function declarations and definitions
in nve(4).  The OS_API structure defined in os.h expects NV_API_CALL
attributes, effectively regparm(0), on its function pointers, but all
the functions were declared and defined without this attribute.

MFC after:	1 week
2012-11-10 16:02:12 +00:00
kevlo
4459d54c31 s/ATH_DEBUG/ATH_DEBUG_ALQ 2012-11-10 15:21:39 +00:00
nyan
b9fc6a077d Use ANSI prototype to fix build with clang.
MFC after:	1 week
2012-11-10 14:58:06 +00:00
kevlo
1a0034c968 Fix the build. 2012-11-10 08:34:40 +00:00
hselasky
6bb0563ddc Fix LOW and FULL speed USB INTERRUPT endpoint support for the
DWC OTG driver. Fix a hang issue when using LOW and FULL speed
BULK traffic. Make sure we don't ask for data in the last
microframe. This allows using devices like USB mice and USB
keyboards connected to the RPI-B.

Suggested by:	gonzo @
2012-11-09 16:28:58 +00:00
rdivacky
0221456a72 Give tw_osl_dbg_printf format string to pacify clang warning. 2012-11-09 15:29:52 +00:00
rdivacky
535c7a0308 Give device_printf format string to pacify clang warning. 2012-11-09 14:58:26 +00:00
rdivacky
53ef64e94c Cast VIA_READ to (void) where the result is unused. 2012-11-09 14:46:23 +00:00
rdivacky
07e0d5dea1 Remove unused static mn_timeout. 2012-11-09 14:14:51 +00:00
rdivacky
7e46da464e Give panic format string to pacify clang warning. 2012-11-09 13:58:52 +00:00
eadler
04e7b32045 Add support for Advantech PCI-1602 RS-485/RS-422 serial card
PR:		kern/169726
Submitted by:	Jan Mikkelsen <janm@transactionware.com>
Approved by:	cperciva (implicit)
MFC after:	5 days
2012-11-09 01:51:06 +00:00
adrian
7affa3b540 Fix a very incorrect description. 2012-11-09 01:28:11 +00:00
adrian
41840cb53c Fix the build - fix up the ath_alq code to not compile by default. 2012-11-08 23:11:59 +00:00
adrian
2092e73309 Add some hooks into the driver to attach, detach and record EDMA descriptor
events.

This is primarily for the TX EDMA and TX EDMA completion. I haven't yet
tied it into the EDMA RX path or the legacy TX/RX path.

Things that I don't quite like:

* Make the pointer type 'void' in ath_softc and have if_ath_alq*()
  return a malloc'ed buffer.  That would remove the need to include
  if_ath_alq.h in if_athvar.h.
* The sysctl setup needs to be cleaned up.
2012-11-08 18:11:31 +00:00
adrian
58a78bc1d7 Add my initial cut at driver-layer ALQ support.
I'm using this to debug EDMA TX and RX descriptors and it's really helpful
to have a non-printf() way to decode frames.

I won't link this into the build until I've tidied it up a little more.

This will eventually be behind ATH_DEBUG_ALQ.
2012-11-08 18:07:29 +00:00
adrian
4ccd9e456e Oops, fix bogus spacing. 2012-11-08 17:46:27 +00:00
adrian
51dea34a6e Implement the ATH_RESET_NOLOSS path for TX stop and start; this is needed
for 802.11n TX device restarting.

Remove the debug printf()s; they're no longer needed here.
2012-11-08 17:43:58 +00:00
adrian
1b4ff9d16a Convert this to a debug printf; it's working fine now. 2012-11-08 17:32:55 +00:00
hselasky
392da320d7 Make the USB ethernet methods constant again in if_udav.c,
so that both adapter variants can be attached at the same
time.

MFC after:	0 days
2012-11-08 16:31:13 +00:00
kevlo
746fc5fdee Add new USB device ID. 2012-11-08 09:29:05 +00:00
kib
a6087f0bd1 Zero the newly allocated md(4) swap-backed page to prevent random
kernel memory leakage to userspace. For the typical use, when a
filesystem put on the md disk, the change only results in CPU and
memory bandwidth spent to zero the page, since filsystems make sure
that user never see unwritten content.  But if md disk is used as raw
device by userspace, the garbage is exposed.

Reported by:	Paul Schenkeveld <freebsd@psconsult.nl>
MFC after:	2 weeks
2012-11-08 03:17:41 +00:00
ambrisko
a60f06157e Add support for SCSI pass through devices to be attached and
detached.

PR:		172864
Submitted by:	rstone@
2012-11-08 00:32:36 +00:00
mav
b57ca0f66c Announce diagnostic page 7 (Element Descriptor) support. 2012-11-07 22:53:46 +00:00
ray
8a90c2da05 Disable automatic attachment of arswitch. It can't be auto-detected (like PHYs
do) and cause a problems trying to attach another instance to child mdio.

Submitted by:	Luiz Otavio O Souza
Approved by:	adrian (menthor)
2012-11-07 22:43:09 +00:00
hselasky
cd5392df9a Add lock asserts instead of "auto-locking".
MFC after:	1 weeks
Suggested by:	ed @
2012-11-07 18:59:42 +00:00
hselasky
ad9951241e The tty_inwakeup callback appears to be called both locked and unlocked.
Handle the required locking automatically for now.

MFC after:	1 weeks
2012-11-07 18:44:05 +00:00
adrian
90e6035f95 Don't compile in my (not yet committed) ath_alq code unless ATH_DEBUG_ALQ
is defined.

This will unbreak ATH_DEBUG builds.
2012-11-07 16:34:09 +00:00
hselasky
6b08a522b2 Patch to improve USB serial console.
MFC after:	1 weeks
Submitted by:	Bruce Evans
2012-11-07 08:13:56 +00:00
kevlo
25611f9cf9 Fix typo; s/ouput/output 2012-11-07 07:00:59 +00:00
adrian
eaac94fbfe Disable my software queue TIM and PS handling for now.
ps-poll is totally broken in its current form.

This should unbreak things enough to let people use PS-POLL devices,
but leave it in place for me to finish PS-POLL handling.
2012-11-07 06:29:45 +00:00