Browse Source

qcacmn: record cpu_id for hal_reg_write_work

Record cpu_id in hal_reg_write_work for easily debugging
work latency issue.

Change-Id: I819b9fe0977e9e982240c090f76a69532f149e86
CRs-Fixed: 3055639
Jingxiang Ge 3 years ago
parent
commit
37bf2d6b08
2 changed files with 3 additions and 0 deletions
  1. 2 0
      hal/wifi3.0/hal_internal.h
  2. 1 0
      hal/wifi3.0/hal_srng.c

+ 2 - 0
hal/wifi3.0/hal_internal.h

@@ -411,6 +411,7 @@ typedef struct hal_ring_handle *hal_ring_handle_t;
  * @enqueue_time: enqueue time (qdf_log_timestamp)
  * @work_scheduled_time: work scheduled time (qdf_log_timestamp)
  * @dequeue_time: dequeue time (qdf_log_timestamp)
+ * @cpu_id: record cpuid when schedule work
  */
 struct hal_reg_write_q_elem {
 	struct hal_srng *srng;
@@ -421,6 +422,7 @@ struct hal_reg_write_q_elem {
 	qdf_time_t enqueue_time;
 	qdf_time_t work_scheduled_time;
 	qdf_time_t dequeue_time;
+	int cpu_id;
 };
 
 /**

+ 1 - 0
hal/wifi3.0/hal_srng.c

@@ -817,6 +817,7 @@ static void hal_reg_write_work(void *arg)
 
 	q_elem = &hal->reg_write_queue[(hal->read_idx)];
 	q_elem->work_scheduled_time = qdf_get_log_timestamp();
+	q_elem->cpu_id = qdf_get_cpu();
 
 	/* Make sure q_elem consistent in the memory for multi-cores */
 	qdf_rmb();