|
@@ -184,9 +184,9 @@ static QDF_STATUS p2p_execute_cancel_roc_req(
|
|
|
QDF_STATUS status;
|
|
|
struct p2p_soc_priv_obj *p2p_soc_obj = roc_ctx->p2p_soc_obj;
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -231,9 +231,9 @@ static void p2p_roc_timeout(void *pdata)
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -338,9 +338,9 @@ static QDF_STATUS p2p_execute_roc_req(struct p2p_roc_context *roc_ctx)
|
|
|
uint32_t go_num;
|
|
|
struct p2p_soc_priv_obj *p2p_soc_obj = roc_ctx->p2p_soc_obj;
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -458,9 +458,9 @@ static QDF_STATUS p2p_process_ready_on_channel_evt(
|
|
|
p2p_soc_obj = roc_ctx->p2p_soc_obj;
|
|
|
roc_ctx->roc_state = ROC_STATE_ON_CHAN;
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -498,9 +498,9 @@ static QDF_STATUS p2p_process_scan_complete_evt(
|
|
|
uint32_t size;
|
|
|
struct p2p_soc_priv_obj *p2p_soc_obj = roc_ctx->p2p_soc_obj;
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -582,12 +582,12 @@ struct p2p_roc_context *p2p_find_current_roc_ctx(
|
|
|
struct p2p_roc_context, node);
|
|
|
if (roc_ctx->roc_state != ROC_STATE_IDLE) {
|
|
|
p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id"
|
|
|
- ":%d, scan_id:%d, cookie:%llx, chan:"
|
|
|
+ ":%d, scan_id:%d, tx ctx:%pK, chan:"
|
|
|
"%d, phy_mode:%d, duration:%d, "
|
|
|
"roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx,
|
|
|
roc_ctx->vdev_id, roc_ctx->scan_id,
|
|
|
- roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -600,6 +600,28 @@ struct p2p_roc_context *p2p_find_current_roc_ctx(
|
|
|
return NULL;
|
|
|
}
|
|
|
|
|
|
+struct p2p_roc_context *p2p_find_roc_by_tx_ctx(
|
|
|
+ struct p2p_soc_priv_obj *p2p_soc_obj, uint64_t cookie)
|
|
|
+{
|
|
|
+ struct p2p_roc_context *curr_roc_ctx;
|
|
|
+ qdf_list_node_t *p_node;
|
|
|
+ QDF_STATUS status;
|
|
|
+
|
|
|
+ p2p_debug("p2p soc obj:%pK, cookie:%llx", p2p_soc_obj, cookie);
|
|
|
+
|
|
|
+ status = qdf_list_peek_front(&p2p_soc_obj->roc_q, &p_node);
|
|
|
+ while (QDF_IS_STATUS_SUCCESS(status)) {
|
|
|
+ curr_roc_ctx = qdf_container_of(p_node,
|
|
|
+ struct p2p_roc_context, node);
|
|
|
+ if ((uintptr_t) curr_roc_ctx->tx_ctx == cookie)
|
|
|
+ return curr_roc_ctx;
|
|
|
+ status = qdf_list_peek_next(&p2p_soc_obj->roc_q,
|
|
|
+ p_node, &p_node);
|
|
|
+ }
|
|
|
+
|
|
|
+ return NULL;
|
|
|
+}
|
|
|
+
|
|
|
QDF_STATUS p2p_restart_roc_timer(struct p2p_roc_context *roc_ctx)
|
|
|
{
|
|
|
QDF_STATUS status = QDF_STATUS_E_FAILURE;
|
|
@@ -636,10 +658,10 @@ QDF_STATUS p2p_cleanup_roc_queue(struct p2p_soc_priv_obj *p2p_soc_obj)
|
|
|
roc_ctx = qdf_container_of(p_node,
|
|
|
struct p2p_roc_context, node);
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx,
|
|
|
roc_ctx->vdev_id, roc_ctx->scan_id,
|
|
|
- roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
status = qdf_list_peek_next(&p2p_soc_obj->roc_q,
|
|
@@ -663,9 +685,9 @@ QDF_STATUS p2p_cleanup_roc_queue(struct p2p_soc_priv_obj *p2p_soc_obj)
|
|
|
roc_ctx = qdf_container_of(p_node,
|
|
|
struct p2p_roc_context, node);
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx_ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -700,10 +722,10 @@ QDF_STATUS p2p_cleanup_roc_by_vdev(
|
|
|
roc_ctx = qdf_container_of(p_node,
|
|
|
struct p2p_roc_context, node);
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx,
|
|
|
roc_ctx->vdev_id, roc_ctx->scan_id,
|
|
|
- roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
status = qdf_list_peek_next(&p2p_soc_obj->roc_q,
|
|
@@ -727,9 +749,9 @@ QDF_STATUS p2p_cleanup_roc_by_vdev(
|
|
|
roc_ctx = qdf_container_of(p_node,
|
|
|
struct p2p_roc_context, node);
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
roc_ctx->p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|
|
@@ -760,9 +782,9 @@ QDF_STATUS p2p_process_roc_req(struct p2p_roc_context *roc_ctx)
|
|
|
|
|
|
p2p_soc_obj = roc_ctx->p2p_soc_obj;
|
|
|
|
|
|
- p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, cookie:%llx, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
+ p2p_debug("p2p soc obj:%pK, roc ctx:%pK, vdev_id:%d, scan_id:%d, tx_ctx:%pK, chan:%d, phy_mode:%d, duration:%d, roc_type:%d, roc_state:%d",
|
|
|
p2p_soc_obj, roc_ctx, roc_ctx->vdev_id,
|
|
|
- roc_ctx->scan_id, roc_ctx->cookie, roc_ctx->chan,
|
|
|
+ roc_ctx->scan_id, roc_ctx->tx_ctx, roc_ctx->chan,
|
|
|
roc_ctx->phy_mode, roc_ctx->duration,
|
|
|
roc_ctx->roc_type, roc_ctx->roc_state);
|
|
|
|