score: Add potpourri lock statistics
These SMP lock statistics are used for all lock objects that lack a
storage space for the statistics. Examples are lock objects used in
external libraries which are independent of the actual RTEMS build
configuration.

Jun 28, 2015:

score: Add self-contained mutex implementation
This mutex implementation uses a thread priority queue with a simple
priority inheritance mechanism (similar to the object based mutexes).
The storage space must be supplied by the user (16 bytes on 32-bit
targets).

score: Use a plain ticket lock for thread locks
This enables external libraries to use thread locks since they are
independent of the actual RTEMS build configuration, e.g. profiling
enabled or disabled.

bsp/mpc55xxevb: Fix configure script
This was the only configure.ac file with bspopts.h present in
AC_CONFIG_FILES(). This somehow prevented the generation of this file
leading to build errors for this BSP.

tcpdump: Allow enter/return to exit tcpdump.
Implement the PCAP loop in a separate thread and block the shell
thread in the stdin getchar. When a user presses enter/return
call the PCAP break loop function to have it return.

score: Simplify <rtems/score/thread.h>
Avoid Thread_Control typedef in <rtems/score/percpu.h>. This helps to
get rid of the <rtems/score/percpu.h> include in <rtems/score/thread.h>
which exposes a lot of implementation details.

Jun 24, 2015:

score: Introduce Thread_queue_Heads
Move the storage for the thread queue heads to the threads. Each thread
provides a set of thread queue heads allocated from a dedicated memory
pool. In case a thread blocks on a queue, then it lends its heads to
the queue. In case the thread unblocks, then it takes a free set of
threads from the queue. Since a thread can block on at most one queue
this works. This mechanism is used in FreeBSD. The motivation for this
change is to reduce the memory demands of the synchronization objects.
On a 32-bit uni-processor configuration the Thread_queue_Control size is
now 8 bytes, compared to 64 bytes in RTEMS 4.10 (other changes reduced
the size as well).

Revert "if_cgem: Enable hardware checksum assist"
This reverts commit dec6b678bba05624335c87b73dc160b54d845cbd.
This default for TXCSUM and RXCSUM should be used and a user should
turn on TXCSUM and RXCSUM.

Revert "Return the default TX and RX hardware checksum for the Cadence driver to off."
This reverts commit 54fb9f01f86286ecea3093f6f524afec86d6313f.
This change adds white space changes. A better solution is to revert
the original change.

Jun 20, 2015:

BBB/AM335x: Store addresses of custom exception handlers in the Public RAM reserved for exception vectors
The AM335x jumps to a predefined location when handling an exception. The default locations of the
exception handlers are tablified in Table 26-3 under Section 26.1.3.2 in the AM335x TRM. When Umon
is executing and an exception occurs the AM335x will normally try to jump to the default exception
handler appropriate for the exception that has occured. Since Umon defines a set of custom exception
handlers, the addresses of these exception handlers must be stored in the RAM exception vector
space in the Public RAM of the AM335x. This is done so that when an exception occurs, instead of
program execution being transferred to one of the default exception handlers, it will instead be
transferred to a custom exception handler defined by Umon.

Map base Umon image in internal SRAM of AM335x/BBB
The internal SRAM of the AM335x/BBB is 109KB. First half is allocated to Umon code and
nonvolatile data while the second half is allocated to volatile data.

Updated BBB CONSOLE_UART_BASE in config.h
CONSOLE_UART_BASE in config.h is set to UART0_BASE, where UART0_BASE is defined in am335x.h.
As a result, the inclusion of am335x.h in config.h has been added as well.

Replaced omap3530.h with am335x.h in BBB port
am335x.h contains register base addresses and offsets specific to the AM335x found
on the BBB. The inclusion of this file replaces omap3530.h found in rom_reset.S
and ram_reset.S.

Removed ads7846.* from BBB port
The ADS7846 Interface routines are not relevant to the BBB port, therefore it is removed.
Unlike the previously existing ad7843.c, ads7846.c does not have to be removed from the
compilation process as it is not included.

Removed nand740.c from BBB port
nand740.c is for the NAND device found on the CSB740. Hence, the file is not
relevant to the BBB. The file has also been removed from the compilation
process in Makefile.

Updated BBB config.h to target BBB
* Updated header comment to reflect BBB target and the individual who
who did the adaptation
* CPU_* and PLATFORM_* have been set to match BBB target
* ALLOCSIZE is set to 1KB
* All INCLUDE_xx macros have been set to 0

Replaced cpuio.c and cpuio.h in BBB port
The former cpuio.* files contained code specific to CSB740. It was replaced with
the template cpuio.* files with the getUartDivisor() function retained from the
previous cpuio.c

rtems: Add rtems_interrupt_local_disable|enable()
Add rtems_interrupt_local_disable|enable() as suggested by Pavel Pisa to
emphasize that interrupts are only disabled on the current processor.
Do not define the rtems_interrupt_disable|enable|flash() macros and
functions on SMP configurations since they don't ensure system wide
mutual exclusion.

Return the default TX and RX hardware checksum for the Cadence driver to off.
The hardware support does not seem to work with qemu. The support can be
enabled with ifconfig or via ioctl on real hardware to get the
performance boost.

Add tcpdump and libpcap.
- Update the file builder generator to handle generator specific cflags and
includes. The tcpdump and libpcap have localised headers and need specific
headers paths to see them. There are also module specific flags and these
need to be passed to the lex and yacc generators.
- Add the tcpdump support.