From d0e445962f71b01600859145c00e655030b53b68 Mon Sep 17 00:00:00 2001 From: Rohit Jadhav <69809379+jadhavrohit924@users.noreply.github.com> Date: Wed, 12 Feb 2025 11:53:11 +0530 Subject: [PATCH] ESP32: Fix ble init and deinit flow. (#37488) --- src/platform/ESP32/nimble/BLEManagerImpl.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/platform/ESP32/nimble/BLEManagerImpl.cpp b/src/platform/ESP32/nimble/BLEManagerImpl.cpp index 0a2ddb176332b2..5ce08f1d727ca8 100644 --- a/src/platform/ESP32/nimble/BLEManagerImpl.cpp +++ b/src/platform/ESP32/nimble/BLEManagerImpl.cpp @@ -925,7 +925,8 @@ CHIP_ERROR BLEManagerImpl::InitESPBleLayer(void) SuccessOrExit(err); #endif - nimble_port_init(); + err = MapBLEError(nimble_port_init()); + SuccessOrExit(err); /* Initialize the NimBLE host configuration. */ ble_hs_cfg.reset_cb = bleprph_on_reset; @@ -973,7 +974,9 @@ CHIP_ERROR BLEManagerImpl::InitESPBleLayer(void) void BLEManagerImpl::DeinitESPBleLayer() { VerifyOrReturn(DeinitBLE() == CHIP_NO_ERROR); +#ifdef CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING BLEManagerImpl::ClaimBLEMemory(nullptr, nullptr); +#endif /* CONFIG_USE_BLE_ONLY_FOR_COMMISSIONING */ } void BLEManagerImpl::ClaimBLEMemory(System::Layer *, void *)