qcacld-3.0: Add support for sending QMI misc msg on DL deinit
Add support for sending QMI WFDS misc request to QMI server on Direct link deinit. Change-Id: I611625d83719c0f8a7dfbef1d3c8328cb618ef7f CRs-Fixed: 3454630
这个提交包含在:

提交者
Madan Koyyalamudi

父节点
01677182ff
当前提交
7b19419ddd
@@ -669,10 +669,11 @@ QDF_STATUS dp_direct_link_init(struct wlan_dp_psoc_context *dp_ctx);
|
||||
/**
|
||||
* dp_direct_link_deinit() - De-initializes Direct Link datapath
|
||||
* @dp_ctx: DP private context
|
||||
* @is_ssr: true if SSR is in progress else false
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx);
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx, bool is_ssr);
|
||||
|
||||
/**
|
||||
* dp_config_direct_link: Set direct link config of vdev
|
||||
@@ -694,7 +695,7 @@ QDF_STATUS dp_direct_link_init(struct wlan_dp_psoc_context *dp_ctx)
|
||||
}
|
||||
|
||||
static inline
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx)
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx, bool is_ssr)
|
||||
{
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. 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 above
|
||||
@@ -171,9 +171,11 @@ QDF_STATUS dp_wfds_init(struct dp_direct_link_context *direct_link_ctx);
|
||||
/**
|
||||
* dp_wfds_deinit() - Deinitialize DP WFDS context
|
||||
* @direct_link_ctx: DP Direct Link context
|
||||
* @is_ssr: true if SSR is in progress else false
|
||||
*
|
||||
* Return: None
|
||||
*/
|
||||
void dp_wfds_deinit(struct dp_direct_link_context *direct_link_ctx);
|
||||
void dp_wfds_deinit(struct dp_direct_link_context *direct_link_ctx,
|
||||
bool is_ssr);
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -1714,7 +1714,7 @@ QDF_STATUS dp_direct_link_init(struct wlan_dp_psoc_context *dp_ctx)
|
||||
return status;
|
||||
}
|
||||
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx)
|
||||
void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx, bool is_ssr)
|
||||
{
|
||||
if (!pld_is_direct_link_supported(dp_ctx->qdf_dev->dev))
|
||||
return;
|
||||
@@ -1722,7 +1722,7 @@ void dp_direct_link_deinit(struct wlan_dp_psoc_context *dp_ctx)
|
||||
if (!dp_ctx->dp_direct_link_ctx)
|
||||
return;
|
||||
|
||||
dp_wfds_deinit(dp_ctx->dp_direct_link_ctx);
|
||||
dp_wfds_deinit(dp_ctx->dp_direct_link_ctx, is_ssr);
|
||||
dp_direct_link_refill_ring_deinit(dp_ctx->dp_direct_link_ctx);
|
||||
|
||||
qdf_mem_free(dp_ctx->dp_direct_link_ctx);
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. 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 above
|
||||
@@ -456,7 +456,7 @@ QDF_STATUS dp_wfds_new_server(void)
|
||||
|
||||
qdf_atomic_set(&dl_wfds->wfds_state, DP_WFDS_SVC_CONNECTED);
|
||||
|
||||
dp_debug("Connected to WFDS QMI service, state: 0x%lx",
|
||||
dp_debug("Connected to WFDS QMI service, state: 0x%x",
|
||||
qdf_atomic_read(&dl_wfds->wfds_state));
|
||||
|
||||
return dp_wfds_event_post(dl_wfds, DP_WFDS_NEW_SERVER, NULL);
|
||||
@@ -601,7 +601,8 @@ out:
|
||||
return status;
|
||||
}
|
||||
|
||||
void dp_wfds_deinit(struct dp_direct_link_context *dp_direct_link_ctx)
|
||||
void dp_wfds_deinit(struct dp_direct_link_context *dp_direct_link_ctx,
|
||||
bool is_ssr)
|
||||
{
|
||||
struct dp_direct_link_wfds_context *dl_wfds;
|
||||
|
||||
@@ -621,6 +622,11 @@ void dp_wfds_deinit(struct dp_direct_link_context *dp_direct_link_ctx)
|
||||
qdf_spinlock_destroy(&dl_wfds->wfds_event_list_lock);
|
||||
qdf_list_destroy(&dl_wfds->wfds_event_list);
|
||||
|
||||
if (qdf_atomic_read(&dl_wfds->wfds_state) !=
|
||||
DP_WFDS_SVC_DISCONNECTED)
|
||||
wlan_qmi_wfds_send_misc_req_msg(dp_direct_link_ctx->dp_ctx->psoc,
|
||||
is_ssr);
|
||||
|
||||
wlan_qmi_wfds_deinit(dp_direct_link_ctx->dp_ctx->psoc);
|
||||
gp_dl_wfds_ctx = NULL;
|
||||
|
||||
|
在新工单中引用
屏蔽一个用户