diff --git a/nimble/host/mesh/src/adv.c b/nimble/host/mesh/src/adv.c index 8b8b4260a..2dc82a52e 100644 --- a/nimble/host/mesh/src/adv.c +++ b/nimble/host/mesh/src/adv.c @@ -154,7 +154,7 @@ mesh_adv_thread(void *args) while (1) { #if (MYNEWT_VAL(BLE_MESH_PROXY)) - ev = ble_npl_eventq_get_tmo(&adv_queue, 0); + ev = ble_npl_eventq_get(&adv_queue, 0); while (!ev) { timeout = bt_mesh_proxy_adv_start(); BT_DBG("Proxy Advertising up to %d ms", timeout); @@ -164,11 +164,11 @@ mesh_adv_thread(void *args) timeout = ble_npl_time_ms_to_ticks32(timeout); } - ev = ble_npl_eventq_get_tmo(&adv_queue, timeout); + ev = ble_npl_eventq_get(&adv_queue, timeout); bt_mesh_proxy_adv_stop(); } #else - ev = ble_npl_eventq_get(&adv_queue); + ev = ble_npl_eventq_get(&adv_queue, BLE_NPL_TIME_FOREVER); #endif if (!ev || !ble_npl_event_get_arg(ev)) { diff --git a/nimble/host/mesh/src/glue.c b/nimble/host/mesh/src/glue.c index 8fc27a678..e0cb147c6 100644 --- a/nimble/host/mesh/src/glue.c +++ b/nimble/host/mesh/src/glue.c @@ -309,7 +309,7 @@ k_fifo_is_empty(struct ble_npl_eventq *q) void * net_buf_get(struct ble_npl_eventq *fifo, s32_t t) { - struct ble_npl_event *ev = ble_npl_eventq_get_tmo(fifo, 0); + struct ble_npl_event *ev = ble_npl_eventq_get(fifo, 0); if (ev) { return ble_npl_event_get_arg(ev); diff --git a/nimble/include/nimble/nimble_npl.h b/nimble/include/nimble/nimble_npl.h index 77e11f573..49c775b31 100644 --- a/nimble/include/nimble/nimble_npl.h +++ b/nimble/include/nimble/nimble_npl.h @@ -68,10 +68,8 @@ struct ble_npl_eventq *ble_npl_eventq_dflt_get(void); void ble_npl_eventq_init(struct ble_npl_eventq *evq); -struct ble_npl_event *ble_npl_eventq_get_tmo(struct ble_npl_eventq *evq, - ble_npl_time_t tmo); - -struct ble_npl_event *ble_npl_eventq_get(struct ble_npl_eventq *evq); +struct ble_npl_event *ble_npl_eventq_get(struct ble_npl_eventq *evq, + ble_npl_time_t tmo); void ble_npl_eventq_put(struct ble_npl_eventq *evq, struct ble_npl_event *ev); diff --git a/porting/npl/freertos/include/nimble/nimble_npl_os.h b/porting/npl/freertos/include/nimble/nimble_npl_os.h index cea2bc541..51bd95990 100644 --- a/porting/npl/freertos/include/nimble/nimble_npl_os.h +++ b/porting/npl/freertos/include/nimble/nimble_npl_os.h @@ -100,15 +100,9 @@ ble_npl_eventq_init(struct ble_npl_eventq *evq) } static inline struct ble_npl_event * -ble_npl_eventq_get_tmo(struct ble_npl_eventq *evq, ble_npl_time_t tmo) +ble_npl_eventq_get(struct ble_npl_eventq *evq, ble_npl_time_t tmo) { - return npl_freertos_eventq_get_tmo(evq, tmo); -} - -static inline struct ble_npl_event * -ble_npl_eventq_get(struct ble_npl_eventq *evq) -{ - return npl_freertos_eventq_get(evq); + return npl_freertos_eventq_get(evq, tmo); } static inline void @@ -128,7 +122,7 @@ ble_npl_eventq_run(struct ble_npl_eventq *evq) { struct ble_npl_event *ev; - ev = ble_npl_eventq_get(evq); + ev = ble_npl_eventq_get(evq, BLE_NPL_TIME_FOREVER); assert(ev->fn != NULL); ev->fn(ev); diff --git a/porting/npl/freertos/include/nimble/npl_freertos.h b/porting/npl/freertos/include/nimble/npl_freertos.h index f11976843..72f464153 100644 --- a/porting/npl/freertos/include/nimble/npl_freertos.h +++ b/porting/npl/freertos/include/nimble/npl_freertos.h @@ -26,9 +26,8 @@ extern "C" { struct ble_npl_eventq *npl_freertos_eventq_dflt_get(void); -struct ble_npl_event *npl_freertos_eventq_get_tmo(struct ble_npl_eventq *evq, ble_npl_time_t tmo); - -struct ble_npl_event *npl_freertos_eventq_get(struct ble_npl_eventq *evq); +struct ble_npl_event *npl_freertos_eventq_get(struct ble_npl_eventq *evq, + ble_npl_time_t tmo); void npl_freertos_eventq_put(struct ble_npl_eventq *evq, struct ble_npl_event *ev); diff --git a/porting/npl/freertos/src/npl_os_freertos.c b/porting/npl/freertos/src/npl_os_freertos.c index 006064305..5106ce5ad 100644 --- a/porting/npl/freertos/src/npl_os_freertos.c +++ b/porting/npl/freertos/src/npl_os_freertos.c @@ -42,7 +42,7 @@ npl_freertos_eventq_dflt_get(void) } struct ble_npl_event * -npl_freertos_eventq_get_tmo(struct ble_npl_eventq *evq, ble_npl_time_t tmo) +npl_freertos_eventq_get(struct ble_npl_eventq *evq, ble_npl_time_t tmo) { struct ble_npl_event *ev = NULL; BaseType_t ret; @@ -57,12 +57,6 @@ npl_freertos_eventq_get_tmo(struct ble_npl_eventq *evq, ble_npl_time_t tmo) return ev; } -struct ble_npl_event * -npl_freertos_eventq_get(struct ble_npl_eventq *evq) -{ - return npl_freertos_eventq_get_tmo(evq, portMAX_DELAY); -} - void npl_freertos_eventq_put(struct ble_npl_eventq *evq, struct ble_npl_event *ev) { diff --git a/porting/npl/mynewt/include/nimble/nimble_npl_os.h b/porting/npl/mynewt/include/nimble/nimble_npl_os.h index f7a47dd51..c3ce86194 100644 --- a/porting/npl/mynewt/include/nimble/nimble_npl_os.h +++ b/porting/npl/mynewt/include/nimble/nimble_npl_os.h @@ -83,15 +83,17 @@ ble_npl_eventq_init(struct ble_npl_eventq *evq) } static inline struct ble_npl_event * -ble_npl_eventq_get_tmo(struct ble_npl_eventq *evq, ble_npl_time_t tmo) +ble_npl_eventq_get(struct ble_npl_eventq *evq, ble_npl_time_t tmo) { - return (struct ble_npl_event *)os_eventq_poll((struct os_eventq **)&evq, 1, tmo); -} + struct os_event *ev; -static inline struct ble_npl_event * -ble_npl_eventq_get(struct ble_npl_eventq *evq) -{ - return (struct ble_npl_event *)os_eventq_get(&evq->evq); + if (tmo == BLE_NPL_TIME_FOREVER) { + ev = os_eventq_get(&evq->evq); + } else { + ev = os_eventq_poll((struct os_eventq **)&evq, 1, tmo); + } + + return (struct ble_npl_event *)ev; } static inline void