Added fix for the 917 BLE power cycle issue fix  (#29628)

* Added fix for the BLE power cycle issue

* Added restyle changes

* Added restyle changes

* Added changes for the ble config
diff --git a/src/platform/silabs/rs911x/rsi_ble_config.h b/src/platform/silabs/rs911x/rsi_ble_config.h
index 3e2e6b1..5ac4b0d 100644
--- a/src/platform/silabs/rs911x/rsi_ble_config.h
+++ b/src/platform/silabs/rs911x/rsi_ble_config.h
@@ -20,11 +20,11 @@
 

 #include "rsi_ble_apis.h"

 #if (SIWX_917 | EXP_BOARD)

-#include "rsi_bt_common_apis.h"

 #include "rsi_user.h"

 #else

 #include <rsi_data_types.h>

 #endif

+

 /******************************************************

  * *                      Macros

  * ******************************************************/

@@ -57,18 +57,6 @@
 #define RSI_BLE_DEV_NAME "CCP_DEVICE"

 #define RSI_BLE_SET_RAND_ADDR "00:23:A7:12:34:56"

 

-#define CLEAR_WHITELIST (0x00)

-#define ADD_DEVICE_TO_WHITELIST (0x01)

-#define DELETE_DEVICE_FROM_WHITELIST (0x02)

-

-#define CLEAR_ACCEPTLIST (0x00)

-#define ADD_DEVICE_TO_ACCEPTLIST (0x01)

-#define DELETE_DEVICE_FROM_ACCEPTLIST (0x02)

-

-#define RSI_BLE_TX_OCTETS 251

-#define RSI_BLE_TX_TIME 2120 // microseconds

-#define RSI_BLE_CS_DATA_LENGTH 240

-

 #define ALL_PHYS (0x00)

 

 #define RSI_BLE_DEV_ADDR_RESOLUTION_ENABLE (0)

@@ -84,41 +72,45 @@
 #define RSI_BLE_NAME_SPACE (0x01)

 #define RSI_BLE_DESCRIPTION (0x010B)

 

+#define RSI_BLE_MAX_NBR_ATT_REC (80)

+

 //! BLE characteristic custom service uuid

 #define RSI_BLE_CUSTOM_SERVICE_UUID (0xFFF6)

 #define RSI_BLE_CUSTOM_LEVEL_UUID (0x1FF1)

-

-#ifdef RSI_M4_INTERFACE

-#define RSI_BLE_MAX_NBR_ATT_REC (20)

+#define RSI_BLE_TX_OCTETS 251

+#define RSI_BLE_TX_TIME 2120

+#define RSI_BLE_MATTER_CUSTOM_SERVICE_DATA_LENGTH 240

 

 #if (SIWX_917 | EXP_BOARD)

-#define RSI_BLE_MAX_NBR_PERIPHERALS (1)

-#else

-#define RSI_BLE_MAX_NBR_SLAVES (1)

-#endif

-

-#define RSI_BLE_NUM_CONN_EVENTS (2)

-#else

-#define RSI_BLE_MAX_NBR_ATT_REC (80)

-

-#if (SIWX_917 | EXP_BOARD)

+#define CLEAR_ACCEPTLIST (0x00)

+#define ADD_DEVICE_TO_ACCEPTLIST (0x01)

+#define DELETE_DEVICE_FROM_ACCEPTLIST (0x02)

 #define RSI_BLE_MAX_NBR_PERIPHERALS (3)

-#else

+#define RSI_BLE_MAX_NBR_CENTRALS (1)

+#define RSI_FEATURE_BIT_MAP                                                                                                        \

+    (SL_SI91X_FEAT_ULP_GPIO_BASED_HANDSHAKE | SL_SI91X_FEAT_DEV_TO_HOST_ULP_GPIO_1) //! To set wlan feature select bit map

+#define RSI_TCP_IP_FEATURE_BIT_MAP                                                                                                 \

+    (SL_SI91X_TCP_IP_FEAT_DHCPV4_CLIENT) //! TCP/IP feature select bitmap for selecting TCP/IP features

+#define RSI_CUSTOM_FEATURE_BIT_MAP SL_SI91X_FEAT_CUSTOM_FEAT_EXTENTION_VALID //! To set custom feature select bit map

+#define RSI_EXT_CUSTOM_FEATURE_BIT_MAP                                                                                             \

+    (SL_SI91X_EXT_FEAT_LOW_POWER_MODE | SL_SI91X_EXT_FEAT_XTAL_CLK_ENABLE(1) | RAM_LEVEL_NWP_BASIC_MCU_ADV |                       \

+     SL_SI91X_EXT_FEAT_FRONT_END_SWITCH_PINS_ULP_GPIO_4_5_0) #define RSI_EXT_TCPIP_FEATURE_BITMAP 0

+#define RSI_BT_FEATURE_BITMAP (SL_SI91X_BT_RF_TYPE | SL_SI91X_ENABLE_BLE_PROTOCOL)

+#define RSI_CONFIG_FEATURE_BITMAP 0

+#define RSI_TCP_IP_BYPASS RSI_ENABLE //! TCP IP BYPASS feature check

+#else                                // For RS9116

 #define RSI_BLE_MAX_NBR_SLAVES (3)

+#define RSI_BLE_MAX_NBR_MASTERS (1)

+//! set handshake type of power mode

+#define RSI_HAND_SHAKE_TYPE GPIO_BASED

 #endif

-

+#define CLEAR_WHITELIST (0x00)

+#define ADD_DEVICE_TO_WHITELIST (0x01)

+#define DELETE_DEVICE_FROM_WHITELIST (0x02)

 #define RSI_BLE_NUM_CONN_EVENTS (20)

-#endif

 

 #define RSI_BLE_MAX_NBR_ATT_SERV (10)

 

-#if (SIWX_917 | EXP_BOARD)

-#define RSI_BLE_MAX_NBR_CENTRALS (1)

-#define FRONT_END_SWITCH_SEL2 BIT(30)

-#else

-#define RSI_BLE_MAX_NBR_MASTERS (1)

-#endif

-

 #define RSI_BLE_GATT_ASYNC_ENABLE (1)

 #define RSI_BLE_GATT_INIT (0)

 

@@ -265,38 +257,6 @@
 #define BLE_ATT_REC_SIZE (500)

 #define NO_OF_VAL_ATT (5) //! Attribute value count

 

-#if (SIWX_917 | EXP_BOARD)

-#define RSI_FEATURE_BIT_MAP                                                                                                        \

-    (SL_SI91X_FEAT_ULP_GPIO_BASED_HANDSHAKE | SL_SI91X_FEAT_DEV_TO_HOST_ULP_GPIO_1) //! To set wlan feature select bit map

-#define RSI_TCP_IP_FEATURE_BIT_MAP                                                                                                 \

-    (SL_SI91X_TCP_IP_FEAT_DHCPV4_CLIENT) //! TCP/IP feature select bitmap for selecting TCP/IP features

-#define RSI_CUSTOM_FEATURE_BIT_MAP SL_SI91X_FEAT_CUSTOM_FEAT_EXTENTION_VALID //! To set custom feature select bit map

-#if WIFI_ENABLE_SECURITY_WPA3_TRANSITION                                     // Adding Support for WPA3 transition

-#ifdef CHIP_9117

-#define RSI_EXT_CUSTOM_FEATURE_BIT_MAP                                                                                             \

-    (SL_SI91X_EXT_FEAT_LOW_POWER_MODE | SL_SI91X_EXT_FEAT_XTAL_CLK_ENABLE(1) | RAM_LEVEL_NWP_BASIC_MCU_ADV |                       \

-     SL_SI91X_EXT_FEAT_FRONT_END_SWITCH_PINS_ULP_GPIO_4_5_0 | SL_SI91X_EXT_FEAT_IEEE_80211W)

-#else

-#define RSI_EXT_CUSTOM_FEATURE_BIT_MAP (SL_SI91X_EXT_FEAT_LOW_POWER_MODE | SL_SI91X_EXT_FEAT_XTAL_CLK_ENABLE(2))

-#endif /* CHIP_9117 */

-#else

-#ifdef CHIP_9117

-#define RSI_EXT_CUSTOM_FEATURE_BIT_MAP                                                                                             \

-    (SL_SI91X_EXT_FEAT_LOW_POWER_MODE | SL_SI91X_EXT_FEAT_XTAL_CLK_ENABLE(1) | RAM_LEVEL_NWP_BASIC_MCU_ADV |                       \

-     SL_SI91X_EXT_FEAT_FRONT_END_SWITCH_PINS_ULP_GPIO_4_5_0)

-#else

-#define RSI_EXT_CUSTOM_FEATURE_BIT_MAP (SL_SI91X_EXT_FEAT_LOW_POWER_MODE | SL_SI91X_EXT_FEAT_XTAL_CLK_ENABLE(2))

-#endif /* CHIP_9117 */

-#endif /* WIFI_ENABLE_SECURITY_WPA3_TRANSITION */

-#define RSI_EXT_TCPIP_FEATURE_BITMAP 0

-#define RSI_BT_FEATURE_BITMAP (SL_SI91X_BT_RF_TYPE | SL_SI91X_ENABLE_BLE_PROTOCOL)

-#define RSI_CONFIG_FEATURE_BITMAP 0

-#define RSI_TCP_IP_BYPASS RSI_ENABLE //! TCP IP BYPASS feature check

-#else

-//! set handshake type of power mode

-#define RSI_HAND_SHAKE_TYPE GPIO_BASED

-#endif

-

 /***********************************************************************************************************************************************/

 //! user defined structure

 /***********************************************************************************************************************************************/

diff --git a/src/platform/silabs/rs911x/wfx_sl_ble_init.c b/src/platform/silabs/rs911x/wfx_sl_ble_init.c
index b0e1e23..ef44d38 100644
--- a/src/platform/silabs/rs911x/wfx_sl_ble_init.c
+++ b/src/platform/silabs/rs911x/wfx_sl_ble_init.c
@@ -349,10 +349,10 @@
 

 uint32_t rsi_ble_add_matter_service(void)

 {

-    uuid_t custom_service                = { RSI_BLE_MATTER_CUSTOM_SERVICE_UUID };

-    custom_service.size                  = RSI_BLE_MATTER_CUSTOM_SERVICE_SIZE;

-    custom_service.val.val16             = RSI_BLE_MATTER_CUSTOM_SERVICE_VALUE_16;

-    uint8_t data[RSI_BLE_CS_DATA_LENGTH] = { RSI_BLE_MATTER_CUSTOM_SERVICE_DATA };

+    uuid_t custom_service                                   = { RSI_BLE_MATTER_CUSTOM_SERVICE_UUID };

+    custom_service.size                                     = RSI_BLE_MATTER_CUSTOM_SERVICE_SIZE;

+    custom_service.val.val16                                = RSI_BLE_MATTER_CUSTOM_SERVICE_VALUE_16;

+    uint8_t data[RSI_BLE_MATTER_CUSTOM_SERVICE_DATA_LENGTH] = { RSI_BLE_MATTER_CUSTOM_SERVICE_DATA };

 

     static const uuid_t custom_characteristic_RX = { .size             = RSI_BLE_CUSTOM_CHARACTERISTIC_RX_SIZE,

                                                      .reserved         = { RSI_BLE_CUSTOM_CHARACTERISTIC_RX_RESERVED },