[peripherals] add mpu9250 driver
[uart] Fix weak handler
[mpu9250] add test module and imu subsystem
[sensors] Added the AKM 8963 Magnetometer
[peripheral] fix some stuff in the ak8963 driver
[peripheral] update mpu9250 driver, imu and module as well
Merge pull request #953 from paparazzi/mpu9250

Driver for the MPU9250
[peripherals] mpu60x0: use gcc pragma to ignore cast-qual warnings

The buffer is volatile, since filled from ISR...
But we know it's ok to use it here so we silence the warning.

Also there is a bug in some gcc version that incorrectly reports this as
peripherals/mpu60x0_spi.c:118:33: warning: cast discards '__attribute__((noreturn))' qualifier from pointer target type [-Wcast-qual]
see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55383
[peripherals] ignore cast-qual for mpu9250 as well
[imu] mpu9250 mag has a different channel order than gyro/accel
[airborne] don't call uart_event() in simulators

uart_event was added as a weak function with #951, but it is not provided in simulators.
The compiler (correctly) fills in a zero and the simulator segfaults.

For now simply fix it by not calling uart_event in simulators.
[stm32] replace remaining rcc_peripheral_enable_clock

by less error prone rcc_periph_clock_enable
[light] allow to define a led for light module in airframe.h, not only as compile flag
[tests] get number of test targets for plan
[math] int32_sqrt returns unsigned int

and takes unsigned int as arg
[state interface] speed_norm_i is unsigned
[rotorcraft] navigation: unsigned nav_leg_length
[math] fix int32_vect2_normalize

keep correct sign of vector
create_module helper: only one init function
Merge pull request #956 from paparazzi/algebra_int_unsigned

[math] some cleanup and fixes for fixedpoint functions

Tested by @fvantienen and @flixr