25539 Commits

Author SHA1 Message Date
emaste
39e033ecaa Use %u for unsigned serial number 2012-11-22 03:54:51 +00:00
hselasky
61b7088a9c Fix uplcom clear stall logic for PL2303HX.
Submitted by:	Mark Johnston
MFC after:	1 week
2012-11-21 22:04:40 +00:00
jh
8800730625 Print correct unit number when attaching preloaded memory disks.
Retire now unused mdunits variable.
2012-11-21 17:05:57 +00:00
jh
e82a3d82c2 Disallow attaching preloaded memory disks via ioctl.
- The feature is dangerous because the kernel code didn't check
  validity of the memory address provided from user space.
- It seems that mdconfig(8) never really supported attaching preloaded
  memory disks.
- Preloaded memory disks are automatically attached during md(4)
  initialization. Thus there shouldn't be much use for the feature.

PR:		kern/169683
Discussed on:	freebsd-hackers
2012-11-21 16:56:47 +00:00
jh
25dd09b996 - Don't pass geom and provider names as format strings.
- Add __printflike() attributes.
- Remove an extra argument for the g_new_geomf() call in swapongeom_ev().

Reviewed by:	pjd
2012-11-20 12:32:18 +00:00
adrian
47bc8bb058 Don't allocate or program a key for the AR5210.
The AR5210 doesn't support HAL_CIPHER_CLR ('clear encryption' keycache
slots), so don't bother - just map them to slot 0 and never program them.
2012-11-19 23:54:05 +00:00
adrian
ef169546ae Disable WEP hardware encryption on the AR5210, in order to allow other
encryption types.

The AR5210 only has four WEP key slots, in contrast to what the
later MACs have (ie, the keycache.)  So there's no way to store a "clear"
key.

Even if the driver is taught to not allocate CLR key entries for
the AR5210, the hardware will actually attempt to decode the encrypted
frames with the (likely all 0!) WEP keys.

So for now, disable the hardware encryption entirely and just so it
all in software.  That allows both WEP -and- WPA to actually work.

If someone wishes to try and make hardware WEP _but_ software WPA work,
they'll have to create a HAL capability to enable/disable hardware
encryption based on the current STA/Hostap mode. However, making
multi-vap work with one WEP and one WPA VAP will require hardware
encryption to be disabled anyway.
2012-11-19 23:42:46 +00:00
adrian
e2bd7f047a Remove this include, it isn't needed. 2012-11-18 20:41:46 +00:00
mav
fdd9f9add0 Summarize information about connected analog pins and EDID-like data received
from HDMI/DisplayPort devices in form of general connection status and
sound(4)-style channel matrix.  Now that information is only reported in
readable form to verbose logs, but potentially could be used by sound(4)
to correctly choose default devices and configure vchans.

Fix rear and side channels swap on analog 7.1 outputs.  As soon as there is
a huge mess in industry about naming and using of these channels, duplicate
rear channels of 4 and 5.1 streams to both read and side speakers.
2012-11-17 06:33:13 +00:00
adrian
783c0c2d72 Correctly populate the RTS field.
Tested:
	* AR5210, STA mode, RTS enabled
2012-11-17 02:39:37 +00:00
adrian
62d287d419 * Remove ah_desc.h, it's not needed
* Add some shifts that I'm using in userspace (athalq.)

However, this exposes a fun little bug..
2012-11-17 02:39:09 +00:00
adrian
1628ff4ffa .. include ah_desc.h here now. 2012-11-17 02:02:36 +00:00
adrian
f9ddcc4807 Remove the ah_desc.h reference; it's not needed.
I'm using these descriptor header files in userland and I'm trying to
avoid populating a compatibility ah_desc.h file.
2012-11-17 02:00:33 +00:00
adrian
40d9982013 I'm not sure why ah_desc.h was required here, but it doesn't _need_
to be. So, just toss it.

There's no options or ah_desc fields in here.

Whilst I'm here, fix up the #ifdef and #define to mach.
2012-11-16 20:04:45 +00:00
adrian
23be008b66 * Remove a duplicate TX ALQ post routine!
* For CABQ traffic, I -can- chain them together using the next pointer
  and just push that particular chain head to the CABQ.  However, this
  doesn't magically make EDMA TX CABQ work - I have to do some further
  hoop jumping.
2012-11-16 19:58:15 +00:00
adrian
7a03853cc3 ALQ logging enhancements:
* upon setup, tell the alq code what the chip information is.
* add TX/RX path logging for legacy chips.
* populate the tx/rx descriptor length fields with a best-estimate.
  It's overly big (96 bytes when AH_SUPPORT_AR5416 is enabled)
  but it'll do for now.

Whilst I'm here, add CURVNET_RESTORE() here during probe/attach as a
partial solution to fixing crashes during attach when the attach fails.
There are other attach failures that I have to deal with; those'll come
later.
2012-11-16 19:57:16 +00:00
adrian
f8cb5a0056 ath(4) ALQ logging improvements.
* Add a new method which allows the driver to push the MAC/phy/hal info
  into the logging stream.
* Add a new ALQ logging entry which logs the mac/phy/hal information.
* Modify the ALQ startup path to log the MAC/phy/hal information
  so the decoder knows which HAL/chip is generating this information.
* Convert the header and mac/phy/hal information to use be32, rather than
  host order.  I'd like to make this stuff endian-agnostic so I can
  decode MIPS generated logs on a PC.

This requires some further driver modifications to correctly log the
right initial chip information.

Also - although noone bar me is currently using this, I've shifted the
debug bitmask around a bit.  Consider yourself warned!
2012-11-16 19:39:29 +00:00
mav
94ab185bfb For some more completeness add matrixes for 3.1 and 7.0 channel setups. 2012-11-16 07:05:57 +00:00
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