From 2d0d4de008a15ef0ea0519ea7d4dc6d37dba2f44 Mon Sep 17 00:00:00 2001 From: ShenWeilong Date: Tue, 31 Mar 2026 14:25:08 +0800 Subject: [PATCH] fix: fixed some issues in the mr comments --- nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c | 4 ++-- porting/npl/esp-idf/include/nimble/nimble_npl_os.h | 8 +++++++- porting/npl/freertos/src/npl_os_freertos.c | 6 ++++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c b/nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c index 71bdd0e87..2632687f0 100644 --- a/nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c +++ b/nimble/transport/esp_ipc_btdm/src/hci_esp_ipc.c @@ -50,8 +50,8 @@ ble_transport_to_ll_cmd_impl(void *buf) pkt = HCI_DRIVER_D2P(buf); len = *(uint8_t *)(buf + 2); - pkt->length = len; - return hci_driver_host_cmd_tx((uint8_t *)pkt, len); + pkt->length = len + 3; + return hci_driver_host_cmd_tx((uint8_t *)pkt); } int diff --git a/porting/npl/esp-idf/include/nimble/nimble_npl_os.h b/porting/npl/esp-idf/include/nimble/nimble_npl_os.h index 1dd307173..a3215cecf 100644 --- a/porting/npl/esp-idf/include/nimble/nimble_npl_os.h +++ b/porting/npl/esp-idf/include/nimble/nimble_npl_os.h @@ -84,7 +84,13 @@ ble_npl_eventq_deinit(struct ble_npl_eventq *evq) static inline struct ble_npl_event * ble_npl_eventq_get(struct ble_npl_eventq *evq, ble_npl_time_t tmo) { - return (void *)btdm_osal_eventq_get(&evq->eventq, tmo) - offsetof(struct ble_npl_eventq, eventq); + struct btdm_osal_event *ev; + + ev = btdm_osal_eventq_get(&evq->eventq, tmo); + if (ev) { + return (void *)ev - offsetof(struct ble_npl_event, event); + } + return NULL; } static inline void diff --git a/porting/npl/freertos/src/npl_os_freertos.c b/porting/npl/freertos/src/npl_os_freertos.c index f56f4da56..16d40ae49 100644 --- a/porting/npl/freertos/src/npl_os_freertos.c +++ b/porting/npl/freertos/src/npl_os_freertos.c @@ -270,9 +270,11 @@ npl_freertos_event_init(struct ble_npl_event *ev, ble_npl_event_fn *fn, void npl_freertos_event_deinit(struct ble_npl_event *ev) { - BLE_LL_ASSERT(ev->event); + if (!ev->event) { + return; + } + #if OS_MEM_ALLOC - os_memblock_put(&ble_freertos_ev_pool,ev->event); #else nimble_platform_mem_free(ev->event);