PX4 general work queue

This commit is contained in:
Daniel Agar 2018-11-28 22:15:29 -05:00
parent f58079bc5d
commit e9ca5d5aba
29 changed files with 1650 additions and 15 deletions

View File

@ -44,6 +44,7 @@ if (NOT ${PX4_BOARD} MATCHES "px4_io")
nuttx_apps # up_cxxinitialize
nuttx_sched
drivers_boards_common_arch
px4_work_queue
)
else()
add_library(px4_layer ${PX4_SOURCE_DIR}/src/platforms/empty.c)

View File

@ -37,6 +37,7 @@
#include <px4_defines.h>
#include <drivers/drv_hrt.h>
#include <lib/parameters/param.h>
#include <px4_work_queue/WorkQueueManager.hpp>
#include <systemlib/cpuload.h>
#include <fcntl.h>
@ -104,5 +105,7 @@ int px4_platform_init(void)
cpuload_initialize_once();
#endif
px4::WorkQueueManagerStart();
return PX4_OK;
}

View File

@ -62,10 +62,11 @@ else()
${df_driver_libs}
df_driver_framework
pthread m
# horrible circular dependencies that need to be teased apart
px4_layer
px4_platform
px4_layer px4_platform
work_queue
parameters
)
if (NOT APPLE)

View File

@ -55,7 +55,7 @@ add_library(px4_layer
)
target_compile_definitions(px4_layer PRIVATE MODULE_NAME="px4")
target_compile_options(px4_layer PRIVATE -Wno-cast-align) # TODO: fix and enable
target_link_libraries(px4_layer PRIVATE work_queue)
target_link_libraries(px4_layer PRIVATE work_queue px4_work_queue)
target_link_libraries(px4_layer PRIVATE px4_daemon)
if(ENABLE_LOCKSTEP_SCHEDULER)

View File

@ -37,6 +37,7 @@
#include <px4_defines.h>
#include <drivers/drv_hrt.h>
#include <lib/parameters/param.h>
#include <px4_work_queue/WorkQueueManager.hpp>
int px4_platform_init(void)
{
@ -44,5 +45,7 @@ int px4_platform_init(void)
param_init();
px4::WorkQueueManagerStart();
return PX4_OK;
}

View File

@ -37,6 +37,7 @@
#include <px4_defines.h>
#include <drivers/drv_hrt.h>
#include <lib/parameters/param.h>
#include <px4_work_queue/WorkQueueManager.hpp>
int px4_platform_init(void)
{
@ -44,5 +45,7 @@ int px4_platform_init(void)
param_init();
px4::WorkQueueManagerStart();
return PX4_OK;
}