Jelajahi Sumber

qca-wifi: Fix sanity check of total_bytes in CFR header

CFR max payload length = 16064(16016 + 48 bytes for 64-bit alignment)

Change-Id: I56f783f8d92079577503b5848303ed0d990924e5
Padma Raghunathan 5 tahun lalu
induk
melakukan
17b9bae759

+ 2 - 2
target_if/cfr/inc/target_if_cfr_6018.h

@@ -59,8 +59,8 @@
 
 #define CYP_MAX_HEADER_LENGTH_WORDS 16
 
-/* Max(2048, 16016, 10240) */
-#define CYP_MAX_DATA_LENGTH_BYTES 16016
+/* payload_len = Max(2048, 16016, 10240) = 16064 (64-bit alignment) */
+#define CYP_MAX_DATA_LENGTH_BYTES 16064
 
 /* in ms */
 #define LUT_AGE_TIMER 3000

+ 7 - 2
target_if/cfr/src/target_if_cfr_6018.c

@@ -584,8 +584,13 @@ int correlate_and_relay_enh(struct wlan_objmgr_pdev *pdev, uint32_t cookie,
 				pcfr->invalid_dma_length_cnt++;
 				cfr_err("<CORRELATE><%u>:CFR buffers "
 					"received with invalid length "
-					"length : ppdu_id:0x%04x\n",
-					cookie, lut->tx_ppdu_id);
+					"header_length_words = %d "
+					"cfr_payload_length_bytes = %d "
+					"ppdu_id:0x%04x\n",
+					cookie,
+					lut->header_length,
+					lut->payload_length,
+					lut->tx_ppdu_id);
 				/*
 				 * Assert here as length exceeding the allowed
 				 * limit would anyway manifest as random crash