Skip to content

Commit 1189249

Browse files
committed
use queue static API for adacallback, increase CFG_CALLBACK_QUEUE_LENGTH to 80
1 parent d81599d commit 1189249

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

cores/nRF5/utility/AdaCallback.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@
3737
#include "Arduino.h"
3838

3939
static QueueHandle_t _cb_queue = NULL;
40+
static uint8_t _cb_qbuf[CFG_CALLBACK_QUEUE_LENGTH*sizeof(void*)];
41+
static StaticQueue_t _cb_static_q;
4042

4143
void adafruit_callback_task(void* arg)
4244
{
@@ -122,7 +124,7 @@ void ada_callback_invoke(const void* malloc_data, uint32_t malloc_len, const voi
122124
void ada_callback_init(void)
123125
{
124126
// queue to hold "Pointer to callback data"
125-
_cb_queue = xQueueCreate(CFG_CALLBACK_QUEUE_LENGTH, sizeof(ada_callback_t*));
127+
_cb_queue = xQueueCreateStatic(CFG_CALLBACK_QUEUE_LENGTH, sizeof(void*), _cb_qbuf, &_cb_static_q);
126128

127129
TaskHandle_t callback_task_hdl;
128130
xTaskCreate( adafruit_callback_task, "Callback", CFG_CALLBACK_TASK_STACKSIZE, NULL, TASK_PRIO_NORMAL, &callback_task_hdl);

cores/nRF5/utility/AdaCallback.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
#endif
4444

4545
#ifndef CFG_CALLBACK_QUEUE_LENGTH
46-
#define CFG_CALLBACK_QUEUE_LENGTH 40
46+
#define CFG_CALLBACK_QUEUE_LENGTH 60
4747
#endif
4848

4949
#ifndef CFG_CALLBACK_TIMEOUT

0 commit comments

Comments
 (0)