194224 Commits

Author SHA1 Message Date
ian
0c80ffaa7f MFC r257418:
Don't iterate through the bits of the pending interrupt register if the
  whole register is zero.  Most of the registers will be zero most of the time.
2013-12-13 22:22:54 +00:00
ian
806c36728f MFC r257413:
Reset the timer interrupt status register at the top rather than bottom of
  the interrupt handler.  If the event callback starts a new short timeout,
  the timer can fire before returning from the event callback, and clearing
  the interrupt status after that loses the interrupt and hangs until the
  counter wraps.  Fixing all of this removes the need for the do-nothing
  loop at the top of the handler which really just waited for the counter to
  roll over and reach the one-shot count again.

  Also add a missing return(0) in the periodic timer start case.
2013-12-13 22:21:49 +00:00
ian
26cb2d5903 MFC r257407:
Expand the list of compatible devices this driver works with.  Increase
  the target frequency from 1 to 10 MHz because these SoCs are plenty fast
  enough to benefit from the extra event timer resolution.
2013-12-13 22:21:04 +00:00
ian
52408050e1 MFC r257393:
Rework the imx ehci driver so that it's four separate ehci units rather
  than one unit with four busses attached to it.  This allows us to use
  existing fdt data which describes separate devices with separate resources.
  It also allows any combination of the units to be en/disabled in the
  board dts files.

  Adjust our dts code to match what's used by linux and u-boot now that
  we're structured to do so.
2013-12-13 22:19:21 +00:00
ian
a551aaa6fa MFC r257390: Add a vendor entry for Freescale Semiconductor. 2013-12-13 22:15:24 +00:00
ian
378834fde5 MFC r257383, r257384:
Add some bare-bones support for enabling usb and usbphy clocks.

Add a "no-op" USB PHY driver for imx-family SoCs.
2013-12-13 22:12:37 +00:00
ian
7de85345e2 MFC r257258, r257265: Include headers (if_var.h and others) where needed.
The change that triggered the need for this on head was r257244.  That
hasn't been MFC'd yet, but there's no harm in paving the way for it with
this MFC.
2013-12-13 22:08:31 +00:00
rpaulo
705dc5de8f MFC r256658, r256666:
Move a lot of debugging printf's to DPRINTF.
2013-12-13 21:57:44 +00:00
ian
62e9fdf2f7 MFC r257203: Eliminate a compiler warning about extraneous parens. 2013-12-13 21:41:40 +00:00
ian
dc79f485d8 MFC r257201, r257202
Retire arm_remap_nocache() and the data and constants associated with it.
2013-12-13 21:40:12 +00:00
ian
c44e255e08 MFC r257199, r257200, r257217:
Remove all #include <machine/pmap.h> from arm code.  It's already
  included by vm/pmap.h, which is a prerequisite for arm/machine/pmap.h
  so there's no reason to ever include it directly.

  Remove #include <machine/frame.h> from all the arm code that doesn't
  really need it.  That would be almost everywhere it was included.  Add
  it in a couple files that really do need it and were previously getting
  it by accident via another header.

  Remove the last dregs of trapframe_t.  It turns out only arm was using
  this type, so remove it to make arm code more consistant with other
  platforms.
2013-12-13 20:43:11 +00:00
trasz
a82d470c95 MFC r256724:
Make geom_label(4) resize-aware.  This fixes a situation when "gpart resize"
would resize a partition, but label providers - e.g. /dev/gptid/XXX - would
stay the same size.

MFC r256766:

Fix build with gcc by spelling unused format string as "unused" instead of NULL.

Sponsored by:	The FreeBSD Foundation
2013-12-13 20:33:59 +00:00
pfg
39d7d288c5 MFV r258571:
Removes strict-aliasing warnings from newer GCC in tcpdump.

Corresponds to MFC r258573, but for some reason our new pre-commit hooks
will not let us merge it from there.
2013-12-13 19:32:02 +00:00
ian
79d2bad50b MFC r257062: Add the Raspberry Pi SPI controller driver. 2013-12-13 19:27:23 +00:00
ian
733bb57871 MFC r256949: Import basic support for Rockchip RK3188 SoC. 2013-12-13 19:17:09 +00:00
ian
180cdddb95 MFC r257480:
Convert the if/else list of compatible devices to the table-driven
  ofw_bus_search_compatible() routine.  In addition to converting existing
  strings to table entries, also add compat strings for the whole imx family.
2013-12-13 19:01:50 +00:00
ian
c34a108500 MFC r257197:
Maximize available kva space by doing static device mapping from the top
  of the address space downwards, and then returning the lowest mapped
  device address from initarm_lastaddr().  Premap most of the device's
  on-chip peripherals.
2013-12-13 18:26:22 +00:00
pfg
c659dd08b2 MFC r258115 (partial);
gperf: bring a small update from Apple Developers tools 4.4

From [1]

offset.patch
Makes use the C offsetof() macro.

We are not merging the size_type.patch as it raises some
(apparently) bogus warnings and is not really used.

[1] http://opensource.apple.com/source/gperf/gperf-9/patches/
2013-12-13 18:23:14 +00:00
ian
3270502674 MFC r256815:
Calculate the baud rate divisor rather than using a hard-coded value.
2013-12-13 18:21:27 +00:00
ian
66e5b415b9 MFC r256809: Add configuration for the Freescale i.MX53 Quick Start Board. 2013-12-13 17:29:31 +00:00
ian
fb7e8e2d67 MFC r256806, r256919, r257167:
Add a driver for the Freescale Fast Ethernet Controller found on various
  Freescale SoCs including the i.MX series.  This also works for the newer
  SoCs with the ENET gigabit controller, but doesn't use any of the new
  hardware features other than enabling gigabit speed.

  Mask out non-address bits in the mac address register, for proper
  detection of an all-zeroes address.  Also remove a misplaced return.

  Switch to using ofw_bus_search_compatible() table-driven compat lookup.
  Add compat strings for Freescale Vybrid family SoCs.
2013-12-13 17:28:08 +00:00
ian
366fb50b48 MFC r257130:
Add a helper routine to search for a compat string in a table that
  associates compat strings with arbitrary values that mean something to
  the driver.  This is handy for drivers that support several variations
  of similar hardware and need to know which one matched.
2013-12-13 17:23:47 +00:00
ian
8f39a8efa7 MFC r256804:
Switch to using the standard uart console driver instead of the special
  driver for early boot debugging.
2013-12-13 17:10:23 +00:00
ian
4d06787a45 MFC r256774:
Clock divisors 0-3 correspond to dividing by 1-4, so add 1 before dividing.
2013-12-13 17:03:32 +00:00
ian
de1f089de5 MFC r256647:
Invalidate the entire L2 cache before enabling it.  Say whether it
  has been enabled or disabled.
2013-12-13 17:02:09 +00:00
ian
be8c9bf1f0 MFC 256640: Allow 'make xdev' to work when DESTDIR is set. 2013-12-13 17:00:25 +00:00
asomers
7779917bec MFC 257006
sbin/geom/class/part/geom_part.c
        Always validate the return of find_geomcfg().  It could be NULL, for
        example when the geom is withering.

Approved by:    ken (mentor)
Sponsored by:   Spectra Logic Corporation
2013-12-13 16:55:39 +00:00
ian
8fd0a81f51 MFC r256638:
Add cases for the combinations of busdma sync op flags that we handle
  correctly by doing nothing, then add a panic for the default case, because
  that implies that some driver asked for a sync (probably incorrectly) and
  nothing was done.
2013-12-13 16:41:04 +00:00
ian
39a72e06bf MFC r256637:
When calculating the number of bounce pages needed, round the maxsize
  up to a multiple of PAGE_SIZE, and add one page because there can always
  be one more boundary crossing than the number of pages in the transfer.
2013-12-13 16:38:21 +00:00
ian
f6a96c9d56 MFC r256628:
Fix a register name typo.  The effect was that CPU_CONTROL_AFLT_ENABLE
  wasn't being set, but it was almost assuredly already turned on anyway
  by the bootloader.
2013-12-13 16:14:08 +00:00
ian
027002080b MFC r256492:
Add the long-missing spibus_if.m to the MFILES list.
2013-12-13 16:09:07 +00:00
trasz
30ec0085c3 MFC r259183:
Properly refuse handoff requests on already connected sessions.  Previously
this would result in dropping the session.

Sponsored by:	The FreeBSD Foundation
2013-12-13 15:25:51 +00:00
trasz
77844c8786 MFC r259182:
Fix handling for empty auth-groups.  Without it, ctld child process
would either exit on assertion, or, if assertions are not enabled,
fail to authenticate the target.

Sponsored by:	The FreeBSD Foundation
2013-12-13 15:23:07 +00:00
trasz
61fa4c178c MFC r258871:
Properly report an error instead of panicing when user tries to create
LUN backed by non-disk device, e.g. /dev/null.

Sponsored by:	The FreeBSD Foundation
2013-12-13 15:19:37 +00:00
rmh
b7083b9dca MFC r259003:
Initialize modesetting sysctls in radeonkms.
2013-12-13 13:17:59 +00:00
grehan
3f29e37aef MFC r256657,r257018,r257347,r257423,r257729,r257767,
r257933,r258609,r258614,r258668,r258673,r258855

Pull in some minor bugfixes and functionality enhancements
from CURRENT. These are candidates to be moved to 10.0-release.

r258855
mdoc: quote string properly.

r258673
Don't create an initial value for the host filesystem of "/".

r258668
Allow bhyve and bhyveload to attach to tty devices.

r258614
The 22-bit Data Byte Count (DBC) field of a Physical Region Descriptor was
being read as a 32-bit quantity by the bhyve AHCI driver.

r258609
Fix discrepancy between the IOAPIC ID advertised by firmware tables and the
actual value read by the guest.

r257933
Route the legacy timer interrupt (IRQ0) to pin 2 of the IOAPIC.

r257767
Fix an off-by-one error when iterating over the emulated PCI BARs.

r257729
Add the VM name to the process name with setproctitle().

r257423
Make the virtual ioapic available unconditionally in a bhyve virtual machine.

r257347
Update copyright to include the author of the LPC bridge emulation code.

hand-merge r257018
Tidy usage messages for bhyve and bhyveload.

r256657
Add an option to bhyveload(8) that allows setting a loader environment variable
from the command line.

Discussed with:	neel
2013-12-13 06:59:18 +00:00
kib
37e02e5c7a MFC r258367:
Verify for zero-length requests and act as if it is always successfull
without performing any action on the address space.
2013-12-13 06:28:18 +00:00
kib
acce26c3d9 MFC r258366:
Add assertions to cover all places in the wiring and unwiring code
where MAP_ENTRY_IN_TRANSITION is set or cleared.
2013-12-13 06:25:08 +00:00
kib
f79abc87df MFC r257899:
If filesystem declares that it supports shared locking for writes, use
shared vnode lock for VOP_PUTPAGES() as well.
2013-12-13 06:12:21 +00:00
kib
b642c1ba22 MFC r257904:
Hide MNT_SHARED_WRITES() and MNT_EXTENDED_SHARED() under the #ifdef
_KERNEL braces.  Struct mount is only defined for the kernel build.
2013-12-13 06:10:49 +00:00
kib
d296e566a2 MFC r257898:
Change VFS_PROLOGUE() to evaluate the mp once, convert
MNTK_SHARED_WRITES and MNTK_EXTENDED_SHARED tests into inline functions.
2013-12-13 06:09:19 +00:00
kib
c4e5b24a25 MFC r259044:
For variant II static TLS, properly align tls segments.

MFC r259072:
Cast Elf_Addr to void * to match the free_aligned() argument type.
2013-12-13 06:06:08 +00:00
kib
d22cb2f95e MFC r259043:
Build an allocator for the aligned memory on top of the rtld-private
malloc.
2013-12-13 06:00:44 +00:00
kib
a455348768 MFC r259042:
Do not force to run atexit handlers, which text comes from a dso owning
the handle passed to __cxa_finalize() but which are registered by other
dso, when the process is inside exit(3).
2013-12-13 05:54:30 +00:00
eadler
82cc6046d5 MFC r259156:
mtest(8): use correct macro in mdoc

	The An macros is used for authors while the Ar macro is used for arguments.
	AFAIK mcast-addr and ifname are not authors.

PR:		docs/184649
2013-12-13 00:56:05 +00:00
rodrigc
baf65b8b8d MFC r259274
Mention BIND removal in release notes.

Submitted by: skreuzer
2013-12-12 21:51:33 +00:00
pfg
b8648b775a MFC r258712;
libcpp: fix an underflow.

Similar fix seen in Apple's gcc42.

Obtained from:	OpenBSD (Rev 1.2)
MFC after:	2 weeks
2013-12-12 19:01:50 +00:00
pfg
4bda5ad442 MFC r258081, r258138, r258143, r258179, r258157, r258204, 258205,
r258206, r258207, r258321

This is a series of commits inspired on Google's gcc-4.2.1 for
Android that were taken from the gcc pre-4.3 under the GPLv2.

gcc: Backport fixes for -W parentheses in C++
	This fixes GCC 19564.
gcc: merge rs6000 change from FSF pre-gcc43
	Don't set MASK_PPC_GFXOPT for 8540 or 8548.
Merge vrp-tree fix from gcc-4.3
	Fix missed conversion from / to >> (GCC PR32521)
Merge in GCCr120505 to include definition of TREE_OVERFLOW_P
gcc: warn about integer overflow in constant expressions in the C++ frontend.
gcc: Add a new option -Wvla to warn variable length array.
libcpp: preprocessor speedup patches from upstream gcc.
gcc: add femit-struct-debug support to reduce Reduce dwarf debug size
gcc: Fix postreload-gcse treatment of call-clobbered registers.
gcc: Record some previous commits in the ChangeLog.gcc43 file.
2013-12-12 18:15:32 +00:00
andreast
465403a5cc MFC: r258427, r258694
r258694:
Make RTAS calls, which call setfault() to recover from machine checks,
preserve any existing fault buffer. RTAS calls are meant to be safe from
interrupt context (and are indeed used there to implement the xics PIC
driver). Without this, calling into RTAS in interrupt context would have
the effect of clearing any existing onfault state of the interrupted
thread, potentially leading to a panic.

r258427:
For PCI<->PCI bridges, #address-cells may be 3. Allow this when parsing the
ibm,dma-window properties. This is especially a concern when
#ibm,dma-address-cells is not specified and we have to use the regular
#address-cells property.
2013-12-12 13:00:07 +00:00
andreast
caaf223f40 MFC: r258051, r258052
r258052:
Following the approach with ACPI DMAR on x86, split IOMMU handling into
a variant PCI bus instead of trying to shoehorn it into the PCI host bridge
adapter. Besides matching better the architecture on other platforms, this
also allows systems with multiple partitionable endpoints per PCI host
bridge to work correctly.

r258051:
Actually add IOMMU domain to the list of known mappings. This fixes a bug
where multiple devices in the same IOMMU domain would be allocated
conflicting mappings unless they also shared a DMA tag.
2013-12-12 12:36:40 +00:00