Parcourir la source

qcacld-3.0: Replace scheduler post msg with scheduler post messsage

Currently many modules use the scheduler_post_msg API which
doesn't allow the driver to know about the src, and destination
modules.

Fix is to call scheduler_post_message which has src, dest, and
the que id.

Change-Id: Ia5c43fe3ceeb7db9dde6241cbabac0ce48f88061
gaurank kathpalia il y a 6 ans
Parent
commit
2b2f1b1432

+ 2 - 1
components/p2p/core/src/wlan_p2p_off_chan_tx.c

@@ -2439,7 +2439,8 @@ p2p_set_mac_filter(struct wlan_objmgr_psoc *soc, uint32_t vdev_id,
 	msg.type = P2P_SET_RANDOM_MAC;
 	msg.bodyptr = set_filter_req;
 	msg.callback = p2p_process_cmd;
-	status = scheduler_post_msg(QDF_MODULE_ID_OS_IF, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_P2P, QDF_MODULE_ID_P2P,
+					QDF_MODULE_ID_OS_IF, &msg);
 	if (status != QDF_STATUS_SUCCESS)
 		qdf_mem_free(set_filter_req);
 

+ 3 - 2
components/p2p/dispatcher/src/wlan_p2p_tgt_api.c

@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2017-2018 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2017-2019 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
@@ -170,7 +170,8 @@ tgt_p2p_add_mac_addr_status_event_cb(struct wlan_objmgr_psoc *psoc,
 	msg.type = P2P_EVENT_ADD_MAC_RSP;
 	msg.bodyptr = mac_filter_rsp;
 	msg.callback = p2p_process_evt;
-	status = scheduler_post_msg(QDF_MODULE_ID_TARGET_IF, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_P2P, QDF_MODULE_ID_P2P,
+					QDF_MODULE_ID_TARGET_IF, &msg);
 	if (QDF_IS_STATUS_ERROR(status))
 		qdf_mem_free(mac_filter_rsp);
 

+ 6 - 3
components/tdls/dispatcher/src/wlan_tdls_ucfg_api.c

@@ -1023,7 +1023,8 @@ QDF_STATUS ucfg_set_tdls_offchannel(struct wlan_objmgr_vdev *vdev,
 	msg.bodyptr = req;
 	msg.callback = tdls_process_cmd;
 	msg.type = TDLS_CMD_SET_OFFCHANNEL;
-	status = scheduler_post_msg(QDF_MODULE_ID_OS_IF, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_HDD, QDF_MODULE_ID_TDLS,
+					QDF_MODULE_ID_OS_IF, &msg);
 	if (QDF_IS_STATUS_ERROR(status)) {
 		tdls_err("post set tdls offchannel msg fail");
 		goto dec_ref;
@@ -1064,7 +1065,8 @@ QDF_STATUS ucfg_set_tdls_offchan_mode(struct wlan_objmgr_vdev *vdev,
 	msg.bodyptr = req;
 	msg.callback = tdls_process_cmd;
 	msg.type = TDLS_CMD_SET_OFFCHANMODE;
-	status = scheduler_post_msg(QDF_MODULE_ID_OS_IF, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_HDD, QDF_MODULE_ID_TDLS,
+					QDF_MODULE_ID_OS_IF, &msg);
 	if (QDF_IS_STATUS_ERROR(status)) {
 		tdls_err("post set offchanmode msg fail");
 		goto dec_ref;
@@ -1105,7 +1107,8 @@ QDF_STATUS ucfg_set_tdls_secoffchanneloffset(struct wlan_objmgr_vdev *vdev,
 	msg.bodyptr = req;
 	msg.callback = tdls_process_cmd;
 	msg.type = TDLS_CMD_SET_SECOFFCHANOFFSET;
-	status = scheduler_post_msg(QDF_MODULE_ID_OS_IF, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_HDD, QDF_MODULE_ID_TDLS,
+					QDF_MODULE_ID_OS_IF, &msg);
 	if (QDF_IS_STATUS_ERROR(status)) {
 		tdls_err("post set secoffchan offset msg fail");
 		goto dec_ref;

+ 4 - 2
core/mac/src/pe/lim/lim_utils.c

@@ -8090,7 +8090,8 @@ static inline void lim_send_csa_restart_resp(struct mac_context *mac_ctx,
 	msg.bodyptr = NULL;
 	msg.bodyval = session->smeSessionId;
 
-	status = scheduler_post_msg(QDF_MODULE_ID_SME, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_PE, QDF_MODULE_ID_SME,
+					QDF_MODULE_ID_SME, &msg);
 }
 
 QDF_STATUS lim_ap_mlme_vdev_update_beacon(struct vdev_mlme_obj *vdev_mlme,
@@ -8133,7 +8134,8 @@ QDF_STATUS lim_ap_mlme_vdev_up_send(struct vdev_mlme_obj *vdev_mlme,
 	msg.type = SIR_HAL_SEND_AP_VDEV_UP;
 	msg.bodyval = session->smeSessionId;
 
-	status = scheduler_post_msg(QDF_MODULE_ID_WMA, &msg);
+	status = scheduler_post_message(QDF_MODULE_ID_PE, QDF_MODULE_ID_WMA,
+					QDF_MODULE_ID_WMA, &msg);
 
 	return status;
 }

+ 2 - 1
core/sme/src/csr/csr_api_roam.c

@@ -19857,7 +19857,8 @@ QDF_STATUS csr_csa_restart(struct mac_context *mac_ctx, uint8_t session_id)
 	/* Serialize the req through MC thread */
 	message.bodyval = session_id;
 	message.type    = eWNI_SME_CSA_RESTART_REQ;
-	status = scheduler_post_msg(QDF_MODULE_ID_PE, &message);
+	status = scheduler_post_message(QDF_MODULE_ID_SME, QDF_MODULE_ID_PE,
+					QDF_MODULE_ID_PE, &message);
 	if (!QDF_IS_STATUS_SUCCESS(status)) {
 		sme_err("scheduler_post_msg failed!(err=%d)", status);
 		status = QDF_STATUS_E_FAILURE;