198293 Commits

Author SHA1 Message Date
loos
4bd45a7878 MFC r273566, r273569:
Provide a working GPIOBUS_IVAR() macro for FDT systems.

Move the duplicated code to a single function.

No functional changes.
2015-02-14 20:32:24 +00:00
luigi
d6e510de09 sync the code with the version in head. which the exception of
svn 275358 (M_FLOWID deprecation, only a couple of lines)
which cannot be merged.

if_lem_netmap.h, if_re_netmap.h:
- use the same (commented out) function to update the stat counters
  as in HEAD. This is a no-op here

netmap.c
- merge 274459 (support for private knote lock)
  and minor changes on nm_config and comments

netmap_freebsd.c
- merge 274459 (support for private knote lock)
- merge 274354 (initialize color if passed as argument)

netmap_generic.c
- fix a comment

netmap_kern.h
- revise the lock macros, using sx locks;
  merge 274459 (private knote lock)

netmap_monitor.c
- use full memory barriers

netmap_pipe.c
- use full memory barriers, use length from the correct queue
  (mostly cosmetic, since the queues typically have the same size)
2015-02-14 19:41:26 +00:00
loos
c8630fd03e MFC: r273264, r274409, r278212, r278213:
Add a workaround needed to fix a bug of Arasan Host Controller where it may
lose the contents of consecutive writes (that happens within two SD card
clock cycles).

This fixes the causes of instability during the SD card detection and
identification on Raspberry Pi (which happens at 400 kHz and so was much
more vulnerable to this issue).

Remove the previous workaround which clearly can't provide the same effect.

Remove stale comments about the issues with HS mode.

Remove a previous workaround to limit the minimum sdhci frequency that
isn't needed anymore.

Remove some duplicate calls to bus_release_resource() and destroy the mutex
on error cases.

While here remove unnecessary includes.
2015-02-14 19:28:26 +00:00
luigi
6e901283bf sync with the version in head (r274338):
fix one comment, and return kernel-supplied error if available.
no API changes.
2015-02-14 19:18:56 +00:00
hrs
c3413b1b08 MFC r273999:
Do not try to create a /dev/log symlink in a jail.

PR:	179828
2015-02-14 18:56:44 +00:00
loos
e5545eed6d MFC r276298, r276303:
Remove the '#undef DEBUG' that should not be committed.

Removes unused and duplicate headers.

Bring the wait limit on mailbox write to a more sane value.

Fix a off-by-one bug on wait time limit.

Remove extra blank line.
2015-02-14 18:45:43 +00:00
loos
2c27c21470 MFC r276296, r277207:
Make consistent use of the correct debug macros across the file.

Fix the C -> K temperature conversion for the dev.cpu.0.temperature sysctl.

Remove the unused temperature conversion macros.
2015-02-14 18:37:36 +00:00
mav
ce3fd33d9a MFC r278362: Fix couple issues in ctlstat header printing. 2015-02-14 08:52:09 +00:00
kib
c85a726887 MFC r277643:
Remove Giant from /dev/mem and /dev/kmem.

MFC r277743:
Arm: ensure that _tmppt KVA is used exclusively.
2015-02-14 08:44:12 +00:00
ngie
8483297749 MFC r278364:
r278364:

  Remove kdb_backtrace extern; get the definition for kdb_backtrace from
  <sys/kdb.h> instead

  Fix whitespace in WARN_ON macro definition

  Reviewed by: np
  Differential Revision: https://reviews.freebsd.org/D1799
  Sponsored by: EMC / Isilon Storage Division
2015-02-14 06:58:32 +00:00
gjb
15f285cc94 MFC r278603, r278607:
r278603:
   Ensure ORGANIZATION_NAME is quoted when ORGANIZATION
   could contain strings of two or more words.

 r278607:
   Reduce number of lines to set ORGANIZATION_NAME in
   freebsd-organization.h.

PR: 		197540
Sponsored by:	The FreeBSD Foundation
2015-02-14 01:33:11 +00:00
ian
0d3280506b MFC r278032:
Do not skip setting the memory 'reg' property if the fdt data already
  contains one.
2015-02-13 23:43:59 +00:00
ian
42d737e5aa MFC r278031: Remove a stale comment. 2015-02-13 23:37:56 +00:00
ian
a24130faeb MFC r277655, r277989: Reimplement fdt_clock_register_provider() correctly. 2015-02-13 23:37:11 +00:00
ian
1b3e6163a9 MFC r277555, r277568:
Enable all sd device clocks on imx6.

  Add imx5/6 pinmux driver support for encoded input register configs.
2015-02-13 23:34:40 +00:00
ian
fc13bac9c0 MFC r277523: Add last_fault_code when DEBUG is defined. 2015-02-13 23:32:03 +00:00
ian
c961e58ab5 MFC r277532, r277533: Add Maxmem global for arm. 2015-02-13 23:30:48 +00:00
ian
56013bbc63 MFC r277454, r277460, r277465, r277466, r277467, r277469, r277470, r277471,
r277472, r277473, r277474, r277475, r277476, r277477, r277478, r277479,
    r277480, r277512, r277516:

  Add inline implementations of arm bus_space_read/write_N().

  Revise the arm bus_space implementation to avoid dereferencing the tag on
  every operation to retrieve the bs_cookie value almost nothing actually uses.

  Use the explicit member initializer style to init the bus_space struct.

  Use arm/bus_space-v6.c for all armv6 systems

  Consolidate many identical implementations of bus_space to a single
  common tag and implementation shared by armv4 and armv6.

  Micro-optimize the new arm inline bus_space implementation by grouping all
  the data the inline functions access together at the start of the bus_space
  struct so that they all fit in a single cache line.
2015-02-13 22:32:02 +00:00
ian
b137f825dc MFC r272103: Move s3c2xx0 into the samsung directory. 2015-02-13 22:08:19 +00:00
dim
3678f64ad3 Synchronize the default C++ stack in stable/10 with head, by merging
almost all recent changes to libc++ and libcxxrt.

MFC r256642:
  Since C++ typeinfo objects are currently not guaranteed to be merged at
  runtime by the dynamic linker, check for their equality in libcxxrt by
  not only comparing the typeinfo's name pointers, but also comparing the
  full names, if necessary.  (This is similar to what GNU libstdc++ does
  in its default configuration.)  The 'deep' check can be turned off again
  by defining LIBCXXRT_MERGED_TYPEINFO, and recompiling libcxxrt.

  Reviewed by:	theraven

MFC r270522 (by rdivacky):
  The standard we compile libc++ with is called c++11 not c++0x.

MFC r273066 (by bapt):
  Import patch from libc++ r197313 which allows using libc++ headers with gcc

  Differential Revision:	https://reviews.freebsd.org/D942
  Reviewed by:	imp

MFC r273381 (by bapt):
  Add support for __cxa_throw_bad_array_new_length in libcxxrt

  It is required for use with newer g++49

  Differential Revision:	https://reviews.freebsd.org/D982
  Reviewed by:	theraven
  Approved by:	theraven

MFC r273382 (by bapt):
  Fix build by marking the new functions as weak
  This is a temporary fix

MFC r273407 (by bapt):
  When using an external gcc 4.8+ and not building libstdc++ then create in the objectdir a
  fake libstdc++.so and libstdc++.a which is a symlink on libc++ that allow g++ to satisfy
  its links dependencies in the least hackish way.
  Please note that this hacky libstds++ never get installed on the final system

  Reviewed by:	imp

MFC r273434 (by bapt):
  Do not define bad_array_new_length::bad_array_new_length in libc++ anymore
  when used in combinaison with libcxxrt since it is now defined there already.
  This fixes building world

MFC r276417:
  Import libcxxrt master 00bc29eb6513624824a6d7db2ebc768a4216a604.

  Interesting fixes:
  76584a0  Reorganize code to use only 32bit atomic ops for 32bit platforms
  30d2ae5  Implement __cxa_throw_bad_array_new_length

  Reviewed by:	bapt
  Differential Revision: https://reviews.freebsd.org/D1390

MFC r277217:
  Import libc++ trunk r224926.  This fixes a number of bugs, completes
  C++14 support[1], adds more C++1z features[2], and fixes the following
  LWG issues[3]:

  1450: Contradiction in regex_constants
  2003: String exception inconsistency in erase.
  2075: Progress guarantees, lock-free property, and scheduling
	assumptions
  2104: unique_lock move-assignment should not be noexcept
  2112: User-defined classes that cannot be derived from
  2132: std::function ambiguity
  2135: Unclear requirement for exceptions thrown in
	condition_variable::wait()
  2142: packaged_task::operator() synchronization too broad?
  2182: Container::[const_]reference types are misleadingly specified
  2186: Incomplete action on async/launch::deferred
  2188: Reverse iterator does not fully support targets that overload
	operator&
  2193: Default constructors for standard library containers are explicit
  2205: Problematic postconditions of regex_match and regex_search
  2213: Return value of std::regex_replace
  2240: Probable misuse of term "function scope" in [thread.condition]
  2252: Strong guarantee on vector::push_back() still broken with C++11?
  2257: Simplify container requirements with the new algorithms
  2258: a.erase(q1, q2) unable to directly return q2
  2263: Comparing iterators and allocator pointers with different
	const-character
  2268: Setting a default argument in the declaration of a member
	function assign of std::basic_string
  2271: regex_traits::lookup_classname specification unclear
  2272: quoted should use char_traits::eq for character comparison
  2278: User-defined literals for Standard Library types
  2280: begin / end for arrays should be constexpr and noexcept
  2285: make_reverse_iterator
  2288: Inconsistent requirements for shared mutexes
  2291: std::hash is vulnerable to collision DoS attack
  2293: Wrong facet used by num_put::do_put
  2299: Effects of inaccessible key_compare::is_transparent type are not
	clear
  2301: Why is std::tie not constexpr?
  2304: Complexity of count in unordered associative containers
  2306: match_results::reference should be value_type&, not const
	value_type&
  2308: Clarify container destructor requirements w.r.t. std::array
  2313: tuple_size should always derive from integral_constant<size_t, N>
  2314: apply() should return decltype(auto) and use decay_t before
	tuple_size
  2315: weak_ptr should be movable
  2316: weak_ptr::lock() should be atomic
  2317: The type property queries should be UnaryTypeTraits returning
	size_t
  2320: select_on_container_copy_construction() takes allocators, not
	containers
  2322: Associative(initializer_list, stuff) constructors are
	underspecified
  2323: vector::resize(n, t)'s specification should be simplified
  2324: Insert iterator constructors should use addressof()
  2329: regex_match()/regex_search() with match_results should forbid
	temporary strings
  2330: regex("meow", regex::icase) is technically forbidden but should
	be permitted
  2332: regex_iterator/regex_token_iterator should forbid temporary
	regexes
  2339: Wording issue in nth_element
  2341: Inconsistency between basic_ostream::seekp(pos) and
	basic_ostream::seekp(off, dir)
  2344: quoted()'s interaction with padding is unclear
  2346: integral_constant's member functions should be marked noexcept
  2350: min, max, and minmax should be constexpr
  2356: Stability of erasure in unordered associative containers
  2357: Remaining "Assignable" requirement
  2359: How does regex_constants::nosubs affect basic_regex::mark_count()?
  2360: reverse_iterator::operator*() is unimplementable

  [1] http://libcxx.llvm.org/cxx1y_status.html
  [2] http://libcxx.llvm.org/cxx1z_status.html
  [3] http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html

  Exp-run:	antoine

MFC r277944:
  Partially revert r273382, to reduce diffs against upstream.  This was a
  temporary fix to solve a conflict with an older version of libc++, and
  it is no longer relevant.

MFC r278010:
  Revert r256642, not only to reduce diffs against upstream libcxxrt, but
  also because it is the wrong approach: comparing typeinfo names deeply
  causes trouble if two loaded DSOs use independent types of the same
  name.

  In addition, this particular change was never merged to FreeBSD 10.x and
  9.x, so let's get rid of it before it ends up in an 11.x release.

  Discussed with:	theraven, joerg@netbsd

MFC r278016:
  Import libcxxrt master 1cb607e89f6135bbc10f3d3b6fba1f983e258dcc.

  Interesting fixes:
  1cb607e Correct gcc version check for __cxa_begin_catch() declaration
          with or without throw()
2015-02-13 22:05:54 +00:00
ian
d8b2164f70 MFC r257740, r257739: Switch to using common armv6 bus_space tag. 2015-02-13 22:01:14 +00:00
ngie
bbf8bf5872 Regen src.conf(5) 2015-02-13 21:46:22 +00:00
ngie
63d67d50be MFC r277678:
r277678:

  Add MK_CCD knob for building and installing ccd(4), ccdconfig, etc

  Sponsored by: EMC / Isilon Storage Division
2015-02-13 21:32:05 +00:00
dim
4f93783a26 MFC r271931:
Add a few missing llvm/clang patches, update the other ones to be able
to apply with the same patch options onto a fresh upstream llvm/clang
3.4.1 checkout, and use approximately the same header tempate for them.
2015-02-13 21:31:43 +00:00
ian
ee9ba339b2 MFC r272605: Use -mfpu=none when building arm kernels. 2015-02-13 21:26:45 +00:00
ngie
3bd87ad25c MFC r277677:
r277677:

  Add MK_BSDINSTALL knob for building and installing bsdinstall

  Sponsored by: EMC / Isilon Storage Division
2015-02-13 21:24:32 +00:00
ngie
9ed52cebd8 MFC r277676:
r277676:

  Add MK_TALK knob for building the talk and talkd

  Sponsored by: EMC / Isilon Storage Division
2015-02-13 21:19:54 +00:00
dim
4c104a70d5 MFC r271025, r271029, r271030 (by sbruno):
MFV:  Only emit movw on ARMv6T2

Building for the FreeBSD default target ARMv6 was emitting movw ASM on certain
test cases (found building qmake4/5 for ARM).  Don't do that, moreover, the AS
in base doesn't understand this instruction for this target.  One would need
to use --integrated-as to get this to build if desired.

http://llvm.org/viewvc/llvm-project?view=revision&revision=216989

Submitted by:	ian
Reviewed by:	dim
Obtained from:	llvm.org
2015-02-13 21:19:02 +00:00
ian
2210ee3484 MFC r277355: For armv6 builds, add -mfloat-abi=softfp. 2015-02-13 20:49:49 +00:00
ian
0d83b78040 MFC r277306, r277307, r277346:
Add defines for SDHCI 3.0 controllers.

  Add a new SDHCI quirk, SDHCI_QUIRK_DONT_SET_HISPD_BIT.

  Save the command-and-flags value into shadow register when it is written.
2015-02-13 20:38:39 +00:00
ian
f271f6c323 MFC r277305: Minor cleanups, comment changes. 2015-02-13 20:23:06 +00:00
ian
f3edb98cc7 MFC r277265: Enable the snoop control unit during MP startup 2015-02-13 20:21:13 +00:00
ian
0b254d1cdd MFC r277037: Enable ALT_BREAK_TO_DEBUGGER for rpi. 2015-02-13 20:18:29 +00:00
ian
d546a4529c MFC r276003:
Start to clean up the armv6 kernel configs by reducing the diff between
  them in the first sections and the later FDT support.
2015-02-13 20:15:10 +00:00
ian
fa148a0f4d MFC r263245, r269233, r267101, r275961: Config style cleanups.
Some of these are effectively record-only merges, because the actual
merge happened during conflict resolution of some prior merge.
2015-02-13 20:05:37 +00:00
ian
522359f373 MFC r271220:
Create a common i.MX53 config and use it with the two existing i.MX53 boards.
2015-02-13 19:52:16 +00:00
sbruno
ea2d650270 MFC 272315 272757 274091 274902
for real this time

r272315
Explicitly return None for negative event indices.  Prior to this,
eventat(-1) would return the next-to-last event causing the back button
to cycle back to the end of an event source instead of stopping at the
start.

r272757
Add schedgraph traces for callout handlers.  Specifically, a callwheel logs
a running event each time it executes a callout function.  The event
includes the function pointer, argument, and whether or not it was run from
hardware interrupt context.  The callwheel is marked idle when each handler
completes.  This effectively logs the duration of each callout routine in
the graph.

r274091
Bind Ctrl-Q as a global hotkey to exit.  Bind Ctrl-W as a hotkey to close
dialogs.

r274902
Add a new thread state "spinning" to schedgraph and add tracepoints at the
start and stop of spinning waits in lock primitives.

Reviewed by:	jhb
2015-02-13 19:06:22 +00:00
sbruno
2da30ef0ce Revert r278650. Definite layer 8 bug.
Submitted by:	dhw and Thomas Mueller <tmueller@sysgo.com>
2015-02-13 18:45:44 +00:00
ian
be0b7de958 MFC r275962: Clean up style of CUBIEBOARD2 config. 2015-02-13 18:37:22 +00:00
ian
895492b87e MFC r277028, r277038:
Check for and handle failures of bus_dmamap_load().
 Handle dma mappings with more than one segment for rpi sdhci.
2015-02-13 18:16:08 +00:00
ian
3e6b663e1f MFC r277027:
Handle the possibility that SDHCI_PLATFORM_START_TRANSFER() can fail.
2015-02-13 18:13:42 +00:00
ian
432a94e7fe MFC r277026: Rate-limit error logging to 5 lines per second. 2015-02-13 18:12:30 +00:00
ian
7a36a698cb MFC r277025: Fix an off-by-one in ppsratecheck(). 2015-02-13 18:10:06 +00:00
ian
64831f08c1 MFC r276985:
Store the shadow command/mode register in the softc, not a local static var.
2015-02-13 18:03:50 +00:00
ian
e11cd4215f MFC r276803, r276808:
Add accessors for the ARM CP15 performance monitor registers.
  Move the inclusion of cpu-v6.h inside the #ifdef _KERNEL block.
2015-02-13 17:53:11 +00:00
ian
45adae0187 MFC r267719:
Remove the incomplete Tegra 2 code, nobody was maintaining it. The AC100
  never booted to single user mode.  (And now it is blocking the ability
  to MFC other changes since it is gone from -current and hasn't kept up
  with the other changes).
2015-02-13 17:36:41 +00:00
ian
68023855e8 MFC r266083, r267597:
Give suitably-endowed ARMs a register similar to the x86 TSC register.
2015-02-13 16:21:36 +00:00
ian
180276472c MFC r276666:
Eliminate uninitialized variable warnings in kernel and module builds when
  building with gcc 4.2
2015-02-13 16:08:45 +00:00
ian
7bafde0767 MFC r276645:
Don't allow clang to use fpu instructions or registers in kernel modules.
2015-02-13 15:41:28 +00:00
ian
8489ff3c1b MFC r276642, r276644:
Remove commented-out options SMP and APIC_IO from old arm boards that will
  never be able to support smp.

  Switch all arm kernels with option SMP to use SCHED_ULE instead of 4BSD.
2015-02-13 15:32:31 +00:00