Преглед на файлове

qcacld-3.0: Set bit to indicate size of ath_pktlog_hdr

Set 15th bit of flags field of ath_pktlog_hdr to indicate whether
the pktlog hdr size if 12 bytes or 16 bytes.

Change-Id: I58027053c67e749c79f6cec77da1519a9f28a2d2
CRs-Fixed: 1097280
Himanshu Agarwal преди 8 години
родител
ревизия
6e224f6b32
променени са 3 файла, в които са добавени 14 реда и са изтрити 0 реда
  1. 8 0
      core/utils/logging/src/wlan_logging_sock_svc.c
  2. 5 0
      core/utils/pktlog/pktlog_internal.c
  3. 1 0
      uapi/linux/pktlog_ac_fmt.h

+ 8 - 0
core/utils/logging/src/wlan_logging_sock_svc.c

@@ -1345,6 +1345,10 @@ static void send_packetdump(qdf_nbuf_t netbuf, uint8_t status,
 	if (adapter->device_mode != QDF_STA_MODE)
 		return;
 
+#if defined(HELIUMPLUS)
+	pktlog_hdr.flags |= PKTLOG_HDR_SIZE_16;
+#endif
+
 	pktlog_hdr.log_type = PKTLOG_TYPE_PKT_DUMP;
 	pktlog_hdr.size = sizeof(pd_hdr) + netbuf->len;
 
@@ -1376,6 +1380,10 @@ static void send_packetdump_monitor(uint8_t type)
 	struct ath_pktlog_hdr pktlog_hdr = {0};
 	struct packet_dump pd_hdr = {0};
 
+#if defined(HELIUMPLUS)
+	pktlog_hdr.flags |= PKTLOG_HDR_SIZE_16;
+#endif
+
 	pktlog_hdr.log_type = PKTLOG_TYPE_PKT_DUMP;
 	pktlog_hdr.size = sizeof(pd_hdr);
 

+ 5 - 0
core/utils/pktlog/pktlog_internal.c

@@ -362,6 +362,7 @@ A_STATUS process_tx_info(struct ol_txrx_pdev_t *txrx_pdev, void *data)
 	pl_hdr.flags = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_FLAGS_OFFSET) &
 			ATH_PKTLOG_HDR_FLAGS_MASK) >>
 		       ATH_PKTLOG_HDR_FLAGS_SHIFT;
+	pl_hdr.flags |= PKTLOG_HDR_SIZE_16;
 	pl_hdr.missed_cnt = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_MISSED_CNT_OFFSET) &
 			     ATH_PKTLOG_HDR_MISSED_CNT_MASK) >>
 			    ATH_PKTLOG_HDR_MISSED_CNT_SHIFT;
@@ -595,6 +596,7 @@ A_STATUS process_rx_info_remote(void *pdev, void *data)
 #if defined(HELIUMPLUS)
 		pl_hdr.macId = r_data->mac_id;
 		pl_hdr.log_type = PKTLOG_TYPE_RX_STAT;
+		pl_hdr.flags |= PKTLOG_HDR_SIZE_16;
 #else
 		pl_hdr.log_type = PKTLOG_TYPE_RX_STAT;
 #endif
@@ -647,6 +649,7 @@ A_STATUS process_rx_info(void *pdev, void *data)
 	pl_hdr.macId = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_MAC_ID_OFFSET) &
 			   ATH_PKTLOG_HDR_MAC_ID_MASK) >>
 			  ATH_PKTLOG_HDR_MAC_ID_SHIFT;
+	pl_hdr.flags |= PKTLOG_HDR_SIZE_16;
 #else
 	pl_hdr.log_type = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_LOG_TYPE_OFFSET) &
 				   ATH_PKTLOG_HDR_LOG_TYPE_MASK) >>
@@ -709,6 +712,7 @@ A_STATUS process_rate_find(void *pdev, void *data)
 	pl_hdr.macId = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_MAC_ID_OFFSET) &
 			   ATH_PKTLOG_HDR_MAC_ID_MASK) >>
 			  ATH_PKTLOG_HDR_MAC_ID_SHIFT;
+	pl_hdr.flags |= PKTLOG_HDR_SIZE_16;
 #else
 	pl_hdr.log_type = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_LOG_TYPE_OFFSET) &
 			   ATH_PKTLOG_HDR_LOG_TYPE_MASK) >>
@@ -837,6 +841,7 @@ A_STATUS process_rate_update(void *pdev, void *data)
 	pl_hdr.macId = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_MAC_ID_OFFSET) &
 			   ATH_PKTLOG_HDR_MAC_ID_MASK) >>
 			  ATH_PKTLOG_HDR_MAC_ID_SHIFT;
+	pl_hdr.flags |= PKTLOG_HDR_SIZE_16;
 #else
 	pl_hdr.log_type = (*(pl_tgt_hdr + ATH_PKTLOG_HDR_LOG_TYPE_OFFSET) &
 				   ATH_PKTLOG_HDR_LOG_TYPE_MASK) >>

+ 1 - 0
uapi/linux/pktlog_ac_fmt.h

@@ -164,6 +164,7 @@ enum {
 #define PKTLOG_MAX_TXSTATUS_WORDS 32
 #define PKTLOG_MAX_PROTO_WORDS  16
 #define PKTLOG_MAX_RXDESC_WORDS 62
+#define PKTLOG_HDR_SIZE_16      0x8000
 
 struct txctl_frm_hdr {
 	uint16_t framectrl;     /* frame control field from header */