ardupilot/libraries
Víctor Mayoral Vilches 9f5b4ffca4 AP_HAL_Linux_Class: Correct deadlock, and infinite loop in setup()
(credit to Mitch Miers <mmiers@mmiers.com>):

setup() is attempting to initialize the hardware, and while doing so
is attempting to output some text via the console (and maybe mavlink
data).  The problem is, the output isn't going to complete once a
write buffer is full, because LinuxUARTDriver::_timer_tick() doesn't
perform work until _initialized is true.  So, what happens is,
setup() (and subroutines) call LinuxUARTDriver::_write(uint8_t c),
which loops waiting for buffer space to become available (once the
write buffer is full).  The buffer never gets space, because the
UART thread is waiting for initialization to complete before it
will write out data and drain the buffer, but that doesn't happen
until setup() returns (see AP_HAL_Linux_main.h).

Refer to https://groups.google.com/forum/#!topic/beaglepilot/dQlxse11JNI
2014-07-14 09:02:47 +10:00
..
AC_AttitudeControl AC_AttitudeControl: Limit _pos_target.z to below alt_max before computing error 2014-07-13 21:14:34 +09:00
AC_Fence AC_Fence: add 10sec manual recovery 2014-04-27 11:11:07 +09:00
AC_PID AC_HELI_PID: Add feedforward accessor functions. 2014-07-08 20:18:05 +09:00
AC_Sprayer AC_Sprayer: fix example sketch 2014-05-08 16:25:11 +09:00
AC_WPNav AC_WPNav: update yaw only when track is at least 2m 2014-07-06 17:02:12 +09:00
AP_ADC AP_ADC: fixup line endings 2014-04-15 15:56:13 +09:00
AP_ADC_AnalogSource AP_ADC_AnalogSource: avoid some float conversion warnings 2014-07-08 20:26:37 +10:00
AP_AHRS AP_AHRS: fixed gyro_bias sign, and pre-calculate gyro_estimate for EKF 2014-07-13 21:56:39 +10:00
AP_Airspeed AP_Airspeed: avoid some float conversion warnings 2014-07-08 20:26:44 +10:00
AP_Arming Arming: accept non-const compass in constructor 2014-07-10 22:50:52 +09:00
AP_Baro AP_Baro: avoid some float conversion warnings 2014-07-08 20:26:54 +10:00
AP_BattMonitor VRBRAIN: change default pin for analog input. 2014-07-01 12:23:25 +02:00
AP_BoardConfig VRBRAIN: deleted unnecessary customizations 2014-07-01 12:21:35 +02:00
AP_Buffer AP_Buffer: remove header/source separation to allow arbitrary template 2013-10-27 13:41:43 +09:00
AP_Camera AP_Camera: updates for relay API change 2014-01-20 17:06:29 +11:00
AP_Common AP_Common: added fire cape product ID 2014-07-14 08:16:29 +10:00
AP_Compass Compass: update pixhawk expected device ids 2014-07-11 11:10:18 +09:00
AP_Curve AP_Curve: remove virtual from method declarations 2014-02-10 17:28:11 +09:00
AP_Declination libraries: update license header to GPLv3 2013-08-30 13:01:39 +10:00
AP_EPM AP_EPM: fix for HAL_GPIO_* 2014-06-02 10:42:36 +10:00
AP_GPS GPS: exclude SIRF and NMEA on APM copter build 2014-07-13 15:41:11 +09:00
AP_HAL AP_HAL: Add SPIDevice_MPU9250 as a device. 2014-07-14 09:02:46 +10:00
AP_HAL_AVR HAL_AVR: fixes for HAL_GPIO_ define change 2014-06-02 10:42:35 +10:00
AP_HAL_AVR_SITL SITL: update simulated sonar support 2014-07-08 15:07:50 +10:00
AP_HAL_Empty HAL_Empty: avoid some float conversion warnings 2014-07-08 20:27:13 +10:00
AP_HAL_FLYMAPLE HAL_FLYMAPLE: fix for HAL_GPIO_* 2014-06-02 10:42:35 +10:00
AP_HAL_Linux AP_HAL_Linux_Class: Correct deadlock, and infinite loop in setup() 2014-07-14 09:02:47 +10:00
AP_HAL_PX4 HAL_PX4: avoid some float conversion warnings 2014-07-08 20:27:19 +10:00
AP_HAL_VRBRAIN AP_HAL_VRBRAIN: removed empty lines 2014-07-03 11:09:20 +10:00
AP_InertialNav Inav: use horizontal body frame for accel corrections 2014-06-21 14:58:59 +09:00
AP_InertialSensor AP_InertialSensor_MPU9250: SPI userspace sensor driver. 2014-07-14 09:02:47 +10:00
AP_L1_Control AP_L1_Control: implement turn_distance() with turn angle 2014-06-05 09:34:23 +10:00
AP_Limits AP_Limits: fix for new AP_Math API 2013-08-05 10:23:57 +10:00
AP_Math AP_Math: Comments on WGS coordinate conversions 2014-06-30 10:29:56 +10:00
AP_Menu AP_Menu: fixed double display of prompt 2013-11-06 10:49:47 +11:00
AP_Mission AP_Mission: support MAV_CMD_NAV_VELOCITY msg 2014-07-06 17:01:00 +09:00
AP_Motors AP_MotorsHeli: Add To-Do. Swash setup hasn't seemed to work right for a while, this might be why. Confirm later. 2014-07-13 17:11:22 +09:00
AP_Mount Mount: set_mode method made public 2014-07-10 13:03:43 +09:00
AP_NavEKF VRBRAIN: added VRBRAIN to #if 2014-06-19 11:27:44 +02:00
AP_Navigation AP_Navigation: added a turn_distance() method with turn_angle 2014-06-05 09:33:42 +10:00
AP_Notify AP_NOTIFY: RTK GPS visual notification through faster blink 2014-06-30 10:29:56 +10:00
AP_OpticalFlow OptFlow: fixup line endings 2014-04-15 15:57:33 +09:00
AP_Parachute Parachute: clear release time when enabled 2014-04-24 19:22:11 +09:00
AP_Param AP_Param: fixup line endings 2014-04-15 15:57:47 +09:00
AP_PerfMon Perfmon: fixes to work with HAL 2013-10-13 11:02:49 +09:00
AP_Progmem AP_Progmem: only AVR uses progmem 2013-09-28 21:24:02 +10:00
AP_Rally AP_Rally: fixed indentation 2014-05-08 11:01:52 +10:00
AP_RangeFinder AP_RangeFinder: trigger a new reading automatically 2014-07-08 16:28:18 +10:00
AP_RCMapper AP_RCMapper: Added warning to RCMAP_THROTTLE 2014-06-17 21:04:19 +10:00
AP_Relay AP_Relay: fix for HAL_GPIO_* 2014-06-02 10:42:36 +10:00
AP_Scheduler AP_Scheduler: added current_task static 2014-07-03 09:09:11 +10:00
AP_ServoRelayEvents AP_ServoRelayEvents: fixed disabling repeated events on set_servo() 2014-02-06 10:03:26 +11:00
AP_SpdHgtControl AP_SpdHgtControl: added get_target_airspeed() interface 2014-03-20 17:34:29 +11:00
AP_TECS AP_TECS: Parameter TECS_LAND_SPDWGT allows custom landing speed weight. 2014-04-10 15:42:49 +10:00
AP_Vehicle AP_Vehicle: added autotune_level to fixed wing parms 2014-04-13 22:11:28 +10:00
APM_Control APM_Control: avoid some float conversion warnings 2014-07-08 20:26:20 +10:00
APM_OBC APM_OBC: fixed formatting to match APM coding standard 2014-06-02 10:47:02 +10:00
APM_PI APM_PI: fixed indent-tabs-mode 2013-05-30 09:54:53 +10:00
DataFlash DataFlash: save some flash space on APM2 2014-06-30 07:58:42 +10:00
doc Checking these in makes the libraries too bulky. We need to host them somewhere. 2011-01-04 06:22:02 +00:00
Filter LowPassFilter: make methods non-virtual 2014-02-10 20:47:05 +09:00
GCS_Console GCS_Console: fixed example build 2014-03-19 12:13:55 +09:00
GCS_MAVLink GCS_Mavlink: moved some more mavlink functions to GCS_Common.cpp 2014-07-13 15:37:49 +10:00
PID PID: fixup line endings 2014-04-15 15:57:56 +09:00
RC_Channel RC_Channel: added support for LimitValue settings 2014-04-21 11:52:41 +10:00
SITL SITL: Add compassmot interference 2014-05-15 21:14:20 +10:00