Selaa lähdekoodia

qcacmn: Move CE descriptor related macros out of qdf

Currently few macros related to CE descriptor are defined in qdf_types.h
Which is not the right place to have such macros. Hence moving them to
ce_internal.h file.

Also, have different macros for WCN6450 as the ce descriptor offsets got
changed for WCN6450.

Change-Id: I20414273793034bbab80304bcd643371d281fb7f
CRs-Fixed: 3386470
Venkateswara Naralasetty 2 vuotta sitten
vanhempi
sitoutus
2021fc9249
4 muutettua tiedostoa jossa 28 lisäystä ja 23 poistoa
  1. 26 0
      hif/src/ce/ce_internal.h
  2. 1 1
      hif/src/ce/ce_main.c
  3. 1 1
      hif/src/ce/ce_service_legacy.c
  4. 0 21
      qdf/inc/qdf_types.h

+ 26 - 0
hif/src/ce/ce_internal.h

@@ -22,6 +22,32 @@
 
 #include <hif.h>                /* A_TARGET_WRITE */
 
+#ifndef QCA_WIFI_WCN6450
+/* Mask for packet offset in the CE descriptor */
+#define CE_DESC_PKT_OFFSET_BIT_M 0x0FFF0000
+
+/* Packet offset start bit position in CE descriptor */
+#define CE_DESC_PKT_OFFSET_BIT_S 16
+
+/* Packet type start bit position in CE descriptor */
+#define CE_DESC_PKT_TYPE_BIT_S 6
+
+/* Tx classify start bit position in CE descriptor */
+#define CE_DESC_TX_CLASSIFY_BIT_S 5
+#else
+/* Mask for packet offset in the CE descriptor */
+#define CE_DESC_PKT_OFFSET_BIT_M 0x7FF80000
+
+/* Packet offset start bit position in CE descriptor */
+#define CE_DESC_PKT_OFFSET_BIT_S  19
+
+/* Packet type start bit position in CE descriptor */
+#define CE_DESC_PKT_TYPE_BIT_S   9
+
+/* Tx classify start bit position in CE descriptor */
+#define CE_DESC_TX_CLASSIFY_BIT_S   8
+#endif
+
 /* Copy Engine operational state */
 enum CE_op_state {
 	CE_UNUSED,

+ 1 - 1
hif/src/ce/ce_main.c

@@ -2871,7 +2871,7 @@ hif_send_head(struct hif_opaque_softc *hif_ctx,
 		 * Clear the packet offset for all but the first CE desc.
 		 */
 		if (i++ > 0)
-			data_attr &= ~QDF_CE_TX_PKT_OFFSET_BIT_M;
+			data_attr &= ~CE_DESC_PKT_OFFSET_BIT_M;
 
 		status = ce_sendlist_buf_add(&sendlist, frag_paddr,
 				    frag_bytes >

+ 1 - 1
hif/src/ce/ce_service_legacy.c

@@ -233,7 +233,7 @@ int ce_send_fast(struct CE_handle *copyeng, qdf_nbuf_t msdu,
 		/*
 		 * Clear packet offset for all but the first CE desc.
 		 */
-		user_flags &= ~QDF_CE_TX_PKT_OFFSET_BIT_M;
+		user_flags &= ~CE_DESC_PKT_OFFSET_BIT_M;
 		ce_buffer_addr_hi_set(shadow_src_desc, dma_addr, user_flags);
 		shadow_src_desc->meta_data = transfer_id;
 

+ 0 - 21
qdf/inc/qdf_types.h

@@ -1529,27 +1529,6 @@ struct qdf_tso_info_t {
 	uint32_t msdu_stats_idx;
 };
 
-/*
- * Used to set classify bit in CE desc.
- */
-#define QDF_CE_TX_CLASSIFY_BIT_S   5
-
-/**
- * QDF_CE_TX_PKT_TYPE_BIT_S - 2 bits starting at bit 6 in CE desc.
- */
-#define QDF_CE_TX_PKT_TYPE_BIT_S   6
-
-/**
- * QDF_CE_TX_PKT_OFFSET_BIT_S - 12 bits --> 16-27, in the CE descriptor
- *  the length of HTT/HTC descriptor
- */
-#define QDF_CE_TX_PKT_OFFSET_BIT_S  16
-
-/**
- * QDF_CE_TX_PKT_OFFSET_BIT_M - Mask for packet offset in the CE descriptor.
- */
-#define QDF_CE_TX_PKT_OFFSET_BIT_M   0x0fff0000
-
 /**
  * enum qdf_suspend_type - type of suspend
  * @QDF_SYSTEM_SUSPEND: System suspend triggered wlan suspend