From 71af938a1235bb2c37287acafed2e349400ae58f Mon Sep 17 00:00:00 2001 From: Jonathan Challinger Date: Mon, 18 Jun 2018 12:47:57 -0700 Subject: [PATCH] AP_UAVCAN: use fixed-size memory pool --- libraries/AP_UAVCAN/AP_UAVCAN.cpp | 3 +-- libraries/AP_UAVCAN/AP_UAVCAN.h | 5 +++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libraries/AP_UAVCAN/AP_UAVCAN.cpp b/libraries/AP_UAVCAN/AP_UAVCAN.cpp index a7fd0af691..ae1e45dd8e 100644 --- a/libraries/AP_UAVCAN/AP_UAVCAN.cpp +++ b/libraries/AP_UAVCAN/AP_UAVCAN.cpp @@ -97,8 +97,7 @@ static uavcan::Publisher* esc_raw[MAX_NUMBER static uavcan::Publisher* rgb_led[MAX_NUMBER_OF_CAN_DRIVERS]; AP_UAVCAN::AP_UAVCAN() : - _node_allocator( - UAVCAN_NODE_POOL_SIZE, UAVCAN_NODE_POOL_SIZE) + _node_allocator() { AP_Param::setup_object_defaults(this, var_info); diff --git a/libraries/AP_UAVCAN/AP_UAVCAN.h b/libraries/AP_UAVCAN/AP_UAVCAN.h index 49fa77633b..d5b50f4ccb 100644 --- a/libraries/AP_UAVCAN/AP_UAVCAN.h +++ b/libraries/AP_UAVCAN/AP_UAVCAN.h @@ -31,7 +31,7 @@ #endif #ifndef UAVCAN_NODE_POOL_BLOCK_SIZE -#define UAVCAN_NODE_POOL_BLOCK_SIZE 256 +#define UAVCAN_NODE_POOL_BLOCK_SIZE 64 #endif #ifndef UAVCAN_SRV_NUMBER @@ -146,6 +146,7 @@ private: ///// LED ///// void led_out_send(); + uavcan::PoolAllocator _node_allocator; // UAVCAN parameters AP_Int8 _uavcan_node; @@ -154,7 +155,7 @@ private: AP_Int16 _servo_rate_hz; uavcan::Node<0> *_node; - uavcan::HeapBasedPoolAllocator _node_allocator; + uint8_t _driver_index; char _thread_name[9]; bool _initialized;