Removed the xmac.c code
Removed the lpp.c code
Don't compile webserver-ipv6 for the sky platform, as it is a little too small. Use the larger exp5438 instead
Remove Sensinode tests from travis
Merge pull request #42 from g-oikonomou/remove-sensinode-tests

Remove Sensinode tests from travis
Avoid access to the address register during auto-increment.

It cannot be ruled out that access to the address register triggers
an address auto-increment. Therefore a temporary address register
shadow is introduced to replace the access to the address regsiter.

Additionally there are several minor beautifications.
Merge pull request #488 from oliverschmidt/master

Avoid access to the address register during auto-increment.
Merge pull request #484 from adamdunkels/push/travis-fix

Partial fix for travis
Merge pull request #479 from adamdunkels/push/cleanup-xmac-and-lpp

Remove xmac.c and lpp.c
Merge branch 'master' into qidevices

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
cc2538: Enable workaround for Cortex-M3 erratum #602117

The core of the CC2538 SoC is the ARM Cortex-M3 r2p0, which is affected by the
erratum #602117 'LDRD with base in list may result in incorrect base register
when interrupted or faulted'. The conditions triggering this issue are not very
likely to occur, but as a matter of precaution, it is better to enable
GCC's -mfix-cortex-m3-ldrd option as a workaround, all the more it can only make
the compiler choose other CPU registers to use with LDRD.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Merge branch 'cc2538-ldrd-workaround' into qidevices

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
cc2538: clock: Fix time drift occurring with PM1/2

The clock adjustments made when waking up from PM1/2 were very inaccurate. If
relying on ContikiMAC's rtimer to sleep, this led to Contiki's software clock
time, seconds and etimers to be 2.5 s slower after each min, i.e. 1 hour slower
after each day, which is a show stopper issue for most real-life applications.

This was caused by a lack of accuracy in several pieces of code during sleep
entry and wake-up:
 - It was difficult to synchronize the calls to RTIMER_NOW() before and after
   sleep with the deactivation and activation of the SysTick peripheral caused
   by PM1/2. This caused an inaccuracy in the corrective number of ticks passed
   to clock_adjust().
 - The value passed to clock_adjust() was truncated from an rtimer_clock_t
   value, but the accumulated error caused by these truncated bits was ignored.
 - The SysTick peripheral had to be stopped during the call to clock_adjust().

Rather than creating even more complicated clock adjustment mechanisms that
would probably still have mixed results as to accuracy, this change simply uses
the Sleep Timer counter as a base value for Contiki's clock and seconds
counters. The tick from the Systick peripheral is still used as the interrupt
source to update Contiki's clocks and timers. When running, the SysTick
peripheral and the Sleep Timer are synchronized, so combining both is not an
issue, and this allows not to alter the rtimer interrupt mechanism using the
Sleep Timer. The purpose of the Sleep Timer is to be an RTC, so it is the
perfect fit for the clock module, all the more it can not be disturbed by PM1/2.
If the 32-kHz XOSC is used, the Sleep Timer is also very accurate. If the
32-kHZ RCOSC is used, it is calibrated from the 32-MHz XOSC, so it is also
accurate, and the 32753-Hz vs. 32768-Hz systematic error in that case is
negligible, all the more one would use the 32-kHz XOSC for better accuracy.

Besides fixing this time drift issue, this change has several benefits:
 - clock_time(), clock_seconds() and RTIMER_NOW() start synchronized, and they
   change at the same source pace.
 - If clock_set_seconds() is called, then clock_seconds() indicates one more
   second almost exactly one second later, then exactly each second. Before this
   change, clock_seconds() was not synchronized with clock_set_seconds(), so the
   value returned by the former could be incremented immediately after the call
   to the latter in some cases.
 - The code tied to the clock module is simpler and more robust.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Merge branch 'cc2538-clock-adjust-etimer-poll' into qidevices

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>