@@ -582,6 +582,13 @@ enum nrf_wifi_status nrf_wifi_fmac_dev_add_zep(struct nrf_wifi_drv_priv_zep *drv
582582
583583 unsigned int fw_ver = 0 ;
584584
585+ #if defined(CONFIG_NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL ) && \
586+ defined(CONFIG_NRF70_SYSTEM_MODE )
587+ unsigned int alt_swctrl1_function_bt_coex_status1 =
588+ (~CONFIG_NRF70_SR_COEX_SWCTRL1_OUTPUT ) & 0x1 ;
589+ unsigned int invert_bt_coex_grant_output = CONFIG_NRF70_SR_COEX_BT_GRANT_ACTIVE_LOW ;
590+ #endif /* CONFIG_NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL && CONFIG_NRF70_SYSTEM_MODE */
591+
585592 rpu_ctx_zep = & drv_priv_zep -> rpu_ctx_zep ;
586593
587594 rpu_ctx_zep -> drv_priv_zep = drv_priv_zep ;
@@ -625,6 +632,18 @@ enum nrf_wifi_status nrf_wifi_fmac_dev_add_zep(struct nrf_wifi_drv_priv_zep *drv
625632
626633 configure_board_dep_params (& board_params );
627634
635+ #if defined(CONFIG_NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL ) && \
636+ defined(CONFIG_NRF70_SYSTEM_MODE )
637+ LOG_INF ("Configuring SLEEP CTRL GPIO control register\n" );
638+ status = nrf_wifi_coex_config_sleep_ctrl_gpio_ctrl (rpu_ctx_zep -> rpu_ctx ,
639+ alt_swctrl1_function_bt_coex_status1 ,
640+ invert_bt_coex_grant_output );
641+ if (status != NRF_WIFI_STATUS_SUCCESS ) {
642+ LOG_ERR ("%s: Failed to configure GPIO control register" , __func__ );
643+ goto err ;
644+ }
645+ #endif /* CONFIG_NRF70_SR_COEX_SLEEP_CTRL_GPIO_CTRL && CONFIG_NRF70_SYSTEM_MODE */
646+
628647#ifdef CONFIG_NRF70_RADIO_TEST
629648 status = nrf_wifi_rt_fmac_dev_init (rpu_ctx_zep -> rpu_ctx ,
630649#ifdef CONFIG_NRF_WIFI_LOW_POWER
0 commit comments