diff --git a/target_if/mlme/vdev_mgr/inc/target_if_vdev_mgr_rx_ops.h b/target_if/mlme/vdev_mgr/inc/target_if_vdev_mgr_rx_ops.h index f97d0b11b2..7cda52628d 100644 --- a/target_if/mlme/vdev_mgr/inc/target_if_vdev_mgr_rx_ops.h +++ b/target_if/mlme/vdev_mgr/inc/target_if_vdev_mgr_rx_ops.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 The Linux Foundation. All rights reserved. + * Copyright (c) 2019-2020 The Linux Foundation. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the @@ -152,8 +152,9 @@ QDF_STATUS target_if_vdev_mgr_wmi_event_unregister( * target_if_vdev_mgr_rsp_timer_cb() - function to handle vdev related timeouts * @vdev_rsp: pointer to vdev response timer * - * Return: NONE + * Return: QDF_STATUS_SUCCESS on success, QDF_STATUS_E_FAILURE on error */ -void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp); +QDF_STATUS +target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp); #endif /* __TARGET_IF_VDEV_MGR_RX_OPS_H__ */ diff --git a/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_rx_ops.c b/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_rx_ops.c index 3d5a391703..baffc448a9 100644 --- a/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_rx_ops.c +++ b/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_rx_ops.c @@ -32,7 +32,7 @@ #include #include -void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) +QDF_STATUS target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) { struct wlan_objmgr_psoc *psoc; struct wlan_lmac_if_mlme_rx_ops *rx_ops; @@ -46,19 +46,19 @@ void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) if (!vdev_rsp) { mlme_err("Vdev response timer is NULL"); - return; + return QDF_STATUS_E_FAILURE; } psoc = vdev_rsp->psoc; if (!psoc) { mlme_err("PSOC is NULL"); - return; + return QDF_STATUS_E_FAILURE; } rx_ops = target_if_vdev_mgr_get_rx_ops(psoc); if (!rx_ops || !rx_ops->psoc_get_vdev_response_timer_info) { mlme_err("No Rx Ops"); - return; + return QDF_STATUS_E_FAILURE; } if (!qdf_atomic_test_bit(START_RESPONSE_BIT, &vdev_rsp->rsp_status) && @@ -70,14 +70,14 @@ void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) &vdev_rsp->rsp_status)) { mlme_debug("No response bit is set, ignoring actions :%d", vdev_rsp->vdev_id); - return; + return QDF_STATUS_E_FAILURE; } vdev_id = vdev_rsp->vdev_id; if (vdev_id >= WLAN_UMAC_PSOC_MAX_VDEVS) { mlme_err("Invalid VDEV_%d PSOC_%d", vdev_id, wlan_psoc_get_id(psoc)); - return; + return QDF_STATUS_E_FAILURE; } vdev_rsp->timer_status = QDF_STATUS_E_TIMEOUT; @@ -132,13 +132,13 @@ void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) } else { mlme_err("PSOC_%d VDEV_%d: Unknown error", wlan_psoc_get_id(psoc), vdev_id); - return; + return QDF_STATUS_E_FAILURE; } if (!target_if_vdev_mgr_is_panic_allowed()) { mlme_debug("PSOC_%d VDEV_%d: Panic not allowed", wlan_psoc_get_id(psoc), vdev_id); - return; + return QDF_STATUS_SUCCESS; } /* Trigger recovery */ @@ -147,6 +147,8 @@ void target_if_vdev_mgr_rsp_timer_cb(struct vdev_response_timer *vdev_rsp) string_from_rsp_bit(rsp_pos)); qdf_trigger_self_recovery(psoc, recovery_reason); + + return QDF_STATUS_SUCCESS; } #ifdef SERIALIZE_VDEV_RESP diff --git a/umac/cmn_services/serialization/src/wlan_serialization_internal.c b/umac/cmn_services/serialization/src/wlan_serialization_internal.c index 27c10f150f..9664c5de06 100644 --- a/umac/cmn_services/serialization/src/wlan_serialization_internal.c +++ b/umac/cmn_services/serialization/src/wlan_serialization_internal.c @@ -538,7 +538,7 @@ error: return status; } -void wlan_serialization_generic_timer_cb(void *arg) +QDF_STATUS wlan_serialization_generic_timer_cb(void *arg) { struct wlan_serialization_timer *timer = arg; struct wlan_serialization_command *cmd = timer->cmd; @@ -548,13 +548,13 @@ void wlan_serialization_generic_timer_cb(void *arg) if (!cmd) { ser_err("Command not found"); - return; + return QDF_STATUS_E_FAILURE; } vdev = cmd->vdev; if (!vdev) { ser_err("Invalid vdev"); - return; + return QDF_STATUS_E_FAILURE; } ser_err("Active cmd timeout for cmd_type[%d] vdev[%d]", @@ -572,6 +572,8 @@ void wlan_serialization_generic_timer_cb(void *arg) /* Release the ref taken before the timer was started */ if (status == WLAN_SER_CMD_IN_ACTIVE_LIST) wlan_objmgr_vdev_release_ref(vdev, WLAN_SERIALIZATION_ID); + + return QDF_STATUS_SUCCESS; } static QDF_STATUS wlan_serialization_mc_flush_noop(struct scheduler_msg *msg) diff --git a/umac/cmn_services/serialization/src/wlan_serialization_internal_i.h b/umac/cmn_services/serialization/src/wlan_serialization_internal_i.h index 1dfd8b7935..a1cb902fad 100644 --- a/umac/cmn_services/serialization/src/wlan_serialization_internal_i.h +++ b/umac/cmn_services/serialization/src/wlan_serialization_internal_i.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2019 The Linux Foundation. All rights reserved. + * Copyright (c) 2017-2020 The Linux Foundation. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the @@ -128,9 +128,9 @@ wlan_serialization_dequeue_cmd(struct wlan_serialization_command *cmd, * timed-out command from active queue and move any pending command to active * queue of same cmd_type. * - * Return: none + * Return: QDF_STATUS */ -void wlan_serialization_generic_timer_cb(void *arg); +QDF_STATUS wlan_serialization_generic_timer_cb(void *arg); /** * wlan_serialization_find_and_start_timer() - to find and start the timer diff --git a/wmi/src/wmi_unified.c b/wmi/src/wmi_unified.c index 8ec91be041..7445cb167d 100644 --- a/wmi/src/wmi_unified.c +++ b/wmi/src/wmi_unified.c @@ -2153,7 +2153,7 @@ static void wmi_discard_fw_event(struct scheduler_msg *msg) msg->type = 0; } -static int wmi_process_fw_event_handler(struct scheduler_msg *msg) +static QDF_STATUS wmi_process_fw_event_handler(struct scheduler_msg *msg) { struct wmi_process_fw_event_params *params = (struct wmi_process_fw_event_params *)msg->bodyptr; @@ -2170,7 +2170,7 @@ static int wmi_process_fw_event_handler(struct scheduler_msg *msg) qdf_mem_free(msg->bodyptr); - return 0; + return QDF_STATUS_SUCCESS; } /**