Make the default exception handler vectors point to where I thought they
were already pointing: the default handlers (not a panic that says there
is no default handler).


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262966 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Migrate the chip power mode status to public ath_hal, rather than the
private per-chip HAL.

This allows the ah_osdep.[ch] code to check whether the power state is
valid for doing chip programming.

It should be a no-op for normal driver work but it does require a
clean kernel/module rebuild, as the size of HAL structures have changed.

Now, this doesn't track whether the hardware is ACTUALLY awake,
as NETWORK_SLEEP wakes the chip up for a short period when traffic
is received.  This doesn't actually set the power mode to AWAKE, so
we have to be careful about how we touch things.

But it's enough to start down the path of implementing station mode
chipset power savings, as a large part of the silliness is making
sure the chip is awake during periodic calibration / ANI and
random places where transmit may be occuring.  I'd rather not a repeat
of debugging power save on ath9k, where races with calibration
and transmit path stuff took a couple years to shake out.

Tested:

* AR5416, STA mode


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262969 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Also tag the current HAL power mode in ar9300_set_power_mode().


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262970 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Ignore USB keyboard driver calls from critical sections.

Reported by:	Oliver Pinter <oliver.pntr@gmail.com>
MFC after:	1 week


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262972 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Update libucl to 2014-03-03


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262975 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Add a mailer.conf example to use dma


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262976 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Add the makefile forgotten in previous commit


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262977 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Pass the size of the top-level table to map when mapping the table instead
of the size of the pointer.

Reported by:	Coverity
Coverity CID:	1147171


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262978 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Eliminate irq_dispatch.S.  Move the data items it contained into arm/intr.c
and the functionality it provided into arm/exception.S.  Rename the main
irq handling routine from arm_handler_execute() to arm_irq_handler() to
make it more congruent with how other exception handlers are named, and
also update its signature to reflect what has long been reality: it is
passed just a trapframe pointer, no interrupt number argument.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262979 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Move the exception vector table (so-called "page0" data) into exception.S
and eliminate vectors.S.  All low-level exception handling is now
consolidated into exception.S.

Along with moving the default FIQ handler, change it to disable FIQs
before returning.  An FIQ should never happen, but if it does, it's got
to be disabled as part of ignoring it.

In general, we have hand-wavy support for FIQs that probably hasn't been
used for 10 years and probably doesn't work (almost certainly doesn't
work for SMP because it only updates the vector on the current cpu).  This
change doesn't really make the overall situation any better or worse.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262980 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Whitespace.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262982 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Remove vestigial global, no-longer used since SVN r262904.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262984 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Repair a few minor mismerges from r262261 in the clang-sparc64 project
branch.  This is also to minimize differences with upstream.

MFC after:	3 weeks
X-MFC-With:	r262613


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262985 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Change the way the asm GET_CURTHREAD_PTR() macro is defined so that code
using it doesn't have to have an "AST_LOCALS" macro somewhere in the file.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262986 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Arrange for arm fork_trampoline() to return to userland via the standard
swi_exit code in exception.S instead of having its own inline expansion
of the DO_AST and PULLFRAME macros.  That means that now all references
to the PUSH/PULLFRAME and DO_AST macros are localized to exception.S,
so move the macros themselves into there and remove them from asmacros.h


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262987 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Export _libc_arm_fpu_present as a private symbol to be used by other
system libraries, for example libm.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262989 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
MFV r262983:

4638 Panic in ZFS via rfs3_setattr()/rfs3_write(): dirtying snapshot!

illumos/illumos-gate@2144b121c08e0eb676cc6ca4662ebbc9f9c22fe3


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262990 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Correct a typo in nlm_find_host_by_addr(): the intention of the
code is to give "<unknown>" rather than comparing the buffer
against it.

MFC after:	2 weeks


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262991 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
libbsdstat: fix warnings, set WARNS

libbsdstat can build with WARNS=6 with a one line change.


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262992 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
some minor clean up.. Always _ZERO memory so mtx_init won't panic...

use the proper macro instead of hand rolling it...

Reviewed by:	jhb (only the malloc change)
MFC after:	1 week


git-svn-id: svn+ssh://svn.freebsd.org/base/head@262993 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f