From d276b0eda665cd5b8f655798186ea8617ff45f1a Mon Sep 17 00:00:00 2001 From: Naveen S Date: Thu, 1 Sep 2022 18:34:04 +0530 Subject: [PATCH] qcacmn: Add feature flag for Health Monitor Feature Adding feature flag for Health Monitor so that it can be disabled for 16M and 256M profiles CRs-Fixed: 3277434 Change-Id: Ibbbe582acd15ebff7e189fcbaa36429ea519db37 --- target_if/core/inc/target_if.h | 2 ++ target_if/init_deinit/src/init_event_handler.c | 5 ++++- wmi/inc/wmi_unified_api.h | 3 ++- wmi/inc/wmi_unified_param.h | 4 ++++ wmi/inc/wmi_unified_priv.h | 2 ++ wmi/src/wmi_unified_api.c | 3 +++ wmi/src/wmi_unified_tlv.c | 6 ++++++ 7 files changed, 23 insertions(+), 2 deletions(-) diff --git a/target_if/core/inc/target_if.h b/target_if/core/inc/target_if.h index 80226b28fd..c8f29c08ce 100644 --- a/target_if/core/inc/target_if.h +++ b/target_if/core/inc/target_if.h @@ -225,7 +225,9 @@ struct tgt_info { struct wlan_psoc_host_scan_radio_caps *scan_radio_caps; uint32_t device_mode; uint32_t sbs_lower_band_end_freq; +#ifdef HEALTH_MON_SUPPORT struct wmi_health_mon_params health_mon_param; +#endif /* HEALTH_MON_SUPPORT */ }; /** diff --git a/target_if/init_deinit/src/init_event_handler.c b/target_if/init_deinit/src/init_event_handler.c index fb431743a5..462af0fb23 100644 --- a/target_if/init_deinit/src/init_event_handler.c +++ b/target_if/init_deinit/src/init_event_handler.c @@ -960,6 +960,7 @@ exit: return 0; } +#ifdef HEALTH_MON_SUPPORT static int init_deinit_health_mon_event_handler(ol_scn_t scn_handle, uint8_t *event, uint32_t data_len) @@ -995,6 +996,7 @@ static int init_deinit_health_mon_event_handler(ol_scn_t scn_handle, return 0; } +#endif /* HEALTH_MON_SUPPORT */ #if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP) static void init_deinit_mlo_setup_done_event(struct wlan_objmgr_psoc *psoc) @@ -1159,12 +1161,13 @@ QDF_STATUS init_deinit_register_tgt_psoc_ev_handlers( WMI_RX_WORK_CTX); retval = init_deinit_register_mlo_ev_handlers(wmi_handle); +#ifdef HEALTH_MON_SUPPORT retval = wmi_unified_register_event_handler( wmi_handle, wmi_extract_health_mon_init_done_info_eventid, init_deinit_health_mon_event_handler, WMI_RX_WORK_CTX); - +#endif /* HEALTH_MON_SUPPORT */ return retval; } diff --git a/wmi/inc/wmi_unified_api.h b/wmi/inc/wmi_unified_api.h index d92dd0396e..4e010fa1e1 100644 --- a/wmi/inc/wmi_unified_api.h +++ b/wmi/inc/wmi_unified_api.h @@ -4977,6 +4977,7 @@ QDF_STATUS wmi_feature_set_cmd_send( struct target_feature_set *feature_set); #endif +#ifdef HEALTH_MON_SUPPORT /** * wmi_extract_health_mon_event - extract health monitor params * @wmi_handle: wmi handle @@ -4990,5 +4991,5 @@ QDF_STATUS wmi_extract_health_mon_event( wmi_unified_t wmi_handle, void *ev, struct wmi_health_mon_params *param); - +#endif /* HEALTH_MON_SUPPORT */ #endif /* _WMI_UNIFIED_API_H_ */ diff --git a/wmi/inc/wmi_unified_param.h b/wmi/inc/wmi_unified_param.h index 0392f5ef3b..1478a267e0 100644 --- a/wmi/inc/wmi_unified_param.h +++ b/wmi/inc/wmi_unified_param.h @@ -5114,7 +5114,9 @@ typedef enum { #ifdef WLAN_FEATURE_COAP wmi_wow_coap_buf_info_eventid, #endif +#ifdef HEALTH_MON_SUPPORT wmi_extract_health_mon_init_done_info_eventid, +#endif /* HEALTH_MON_SUPPORT */ wmi_events_max, } wmi_conv_event_id; @@ -9144,6 +9146,7 @@ struct wmi_host_sw_cal_ver { uint32_t status; }; +#ifdef HEALTH_MON_SUPPORT /** * struct wmi_health_mon_params - Health mon params * @ring_buf_paddr_low: Ring buffer physical address LOW @@ -9157,5 +9160,6 @@ struct wmi_health_mon_params { uint32_t initial_upload_period_ms; uint32_t read_index; }; +#endif /* HEALTH_MON_SUPPORT */ #endif /* _WMI_UNIFIED_PARAM_H_ */ diff --git a/wmi/inc/wmi_unified_priv.h b/wmi/inc/wmi_unified_priv.h index 629e800dbf..cd97411e89 100644 --- a/wmi/inc/wmi_unified_priv.h +++ b/wmi/inc/wmi_unified_priv.h @@ -3123,10 +3123,12 @@ QDF_STATUS QDF_STATUS (*extract_coap_buf_info)(wmi_unified_t wmi_handle, void *evt_buf, struct coap_buf_info *info); #endif +#ifdef HEALTH_MON_SUPPORT QDF_STATUS (*extract_health_mon_init_done_info_event)(wmi_unified_t wmi_handle, void *evt_buf, struct wmi_health_mon_params *param); +#endif /* HEALTH_MON_SUPPORT */ }; /* Forward declartion for psoc*/ diff --git a/wmi/src/wmi_unified_api.c b/wmi/src/wmi_unified_api.c index d243da664c..0000842f8a 100644 --- a/wmi/src/wmi_unified_api.c +++ b/wmi/src/wmi_unified_api.c @@ -1461,6 +1461,7 @@ QDF_STATUS wmi_unified_thermal_mitigation_param_cmd_send( return QDF_STATUS_E_FAILURE; } +#ifdef HEALTH_MON_SUPPORT QDF_STATUS wmi_extract_health_mon_event( wmi_unified_t wmi_handle, void *ev, @@ -1472,6 +1473,8 @@ QDF_STATUS wmi_extract_health_mon_event( return QDF_STATUS_E_FAILURE; } +#endif /* HEALTH_MON_SUPPORT */ + QDF_STATUS wmi_unified_vdev_set_fwtest_param_cmd_send(wmi_unified_t wmi_handle, struct set_fwtest_params *param) diff --git a/wmi/src/wmi_unified_tlv.c b/wmi/src/wmi_unified_tlv.c index dc9353c35a..64d8fb61b3 100644 --- a/wmi/src/wmi_unified_tlv.c +++ b/wmi/src/wmi_unified_tlv.c @@ -19359,6 +19359,7 @@ extract_pktlog_decode_info_event_tlv(wmi_unified_t wmi_handle, void *evt_buf, return QDF_STATUS_SUCCESS; } +#ifdef HEALTH_MON_SUPPORT /** * extract_health_mon_init_done_info_event_tlv() - Extract health monitor from * fw @@ -19388,6 +19389,7 @@ extract_health_mon_init_done_info_event_tlv(wmi_unified_t wmi_handle, return QDF_STATUS_SUCCESS; } +#endif /* HEALTH_MON_SUPPORT */ /** * extract_pdev_telemetry_stats_tlv - extract pdev telemetry stats @@ -19889,8 +19891,10 @@ struct wmi_ops tlv_ops = { #ifdef FEATURE_SET .feature_set_cmd_send = feature_set_cmd_send_tlv, #endif +#ifdef HEALTH_MON_SUPPORT .extract_health_mon_init_done_info_event = extract_health_mon_init_done_info_event_tlv, +#endif /* HEALTH_MON_SUPPORT */ .send_multiple_vdev_param_cmd = send_multiple_vdev_param_cmd_tlv, }; @@ -20382,8 +20386,10 @@ static void populate_tlv_events_id(uint32_t *event_ids) event_ids[wmi_wow_coap_buf_info_eventid] = WMI_WOW_COAP_BUF_INFO_EVENTID; #endif +#ifdef HEALTH_MON_SUPPORT event_ids[wmi_extract_health_mon_init_done_info_eventid] = WMI_HEALTH_MON_INIT_DONE_EVENTID; +#endif /* HEALTH_MON_SUPPORT */ } #ifdef WLAN_FEATURE_LINK_LAYER_STATS