Просмотр исходного кода

qcacld-3.0: SAP DFS: Reduce DFS event parameters size

Reduce DFS event parameters size to avoid prealloc failure.

Change-Id: Ide57b3215440aaeebbfa579b858ac1de93938ceb
CRs-Fixed: 1024434
Arif Hussain 8 лет назад
Родитель
Сommit
eee043c5bf

+ 55 - 25
core/sap/dfs/inc/dfs.h

@@ -284,32 +284,62 @@ struct dfs_pulseline {
 	(((e)->re_flags & (DFS_EVENT_CHECKCHIRP)) && \
 	 (!DFS_EVENT_ISCHIRP((e))))
 
+/**
+ * struct dfs_event - to hold dfs events
+ * @re_full_ts: 64-bit full timestamp from interrupt time
+ * @re_ts: Original 15 bit recv timestamp
+ * @re_rssi: rssi of radar event
+ * @re_dur: duration of radar pulse
+ * @re_chanindex: Channel of event
+ * @re_flags: Event flags
+ * @re_freq: Centre frequency of event, KHz
+ * @re_freq_lo: Lower bounds of frequency, KHz
+ * @re_freq_hi: Upper bounds of frequency, KHz
+ * @sidx: Pulse Index as in radar summary report
+ * @radar_80p80_segid: 80p80 segment ID as in radar sum report
+ * @delta_peak: delta peak reported in radar summary
+ * @delta_diff: delta diff reported in radar summary
+ * @agc_total_gain: agc total gain reported in radar summary
+ * @agc_mb_gain: agc mb gain reported in radar summary
+ * @radar_subchan_mask: subchan mask reported in radar summary
+ * @pulse_height: pulse height reported in radar summary
+ * @triggering_agc_event: triggering agc reported in radar summary
+ * @pulse_rssi: rssi of phyerr reported in radar summary
+ * @radar_fft_pri80_inband_power: Pri80MHz pwr reported in summary
+ * @radar_fft_ext80_inband_power: Ext80MHz pwr reported in summary
+ * @rsu_version: Radar summary report version
+ * @dfs_phyerr_eventq_serial_num: phyerr seq num queued for pattern matching
+ * @peak_mag: Peak mag reported in radar search FFT report
+ * @re_list: List of radar events
+ *
+ * To Process radar events
+ */
 struct dfs_event {
-	uint64_t re_full_ts;    /* 64-bit full timestamp from interrupt time */
-	uint32_t re_ts;         /* Original 15 bit recv timestamp */
-	uint8_t re_rssi;        /* rssi of radar event */
-	uint8_t re_dur;         /* duration of radar pulse */
-	uint8_t re_chanindex;   /* Channel of event */
-	uint8_t re_flags;       /* Event flags */
-	uint32_t re_freq;       /* Centre frequency of event, KHz */
-	uint32_t re_freq_lo;    /* Lower bounds of frequency, KHz */
-	uint32_t re_freq_hi;    /* Upper bounds of frequency, KHz */
-	int sidx;               /* Pulse Index as in radar summary report */
-	int radar_80p80_segid;  /* 80p80 segment ID as in radar sum report */
-	int delta_peak;         /* delta peak reported in radar summary */
-	int delta_diff;         /* delta diff reported in radar summary */
-	int agc_total_gain;     /* agc total gain reported in radar summary */
-	int agc_mb_gain;        /* agc mb gain reported in radar summary */
-	int radar_subchan_mask; /* subchan mask reported in radar summary */
-	int pulse_height;       /* pulse height reported in radar summary */
-	int triggering_agc_event; /* triggering agc reported in radar summary */
-	int pulse_rssi;         /* rssi of phyerr reported in radar summary */
-	int radar_fft_pri80_inband_power; /* Pri80MHz pwr reported in summary */
-	int radar_fft_ext80_inband_power; /* Ext80MHz pwr reported in summary */
-	int rsu_version; /* Radar summary report version */
-	int phyerr_serial_num; /* phyerr seq num queued for pattern matching */
-	int peak_mag; /* Peak mag reported in radar search FFT report */
-	STAILQ_ENTRY(dfs_event) re_list;        /* List of radar events */
+	uint64_t re_full_ts;
+	uint32_t re_ts;
+	uint8_t re_rssi;
+	uint8_t re_dur;
+	uint8_t re_chanindex;
+	uint8_t re_flags;
+	uint32_t re_freq;
+	uint32_t re_freq_lo;
+	uint32_t re_freq_hi;
+	int sidx;
+	int radar_80p80_segid;
+	uint8_t delta_peak;
+	uint8_t delta_diff;
+	uint8_t agc_total_gain;
+	uint8_t agc_mb_gain;
+	uint8_t radar_subchan_mask;
+	uint8_t pulse_height;
+	uint8_t triggering_agc_event;
+	uint8_t pulse_rssi;
+	uint8_t radar_fft_pri80_inband_power;
+	uint8_t radar_fft_ext80_inband_power;
+	uint8_t rsu_version;
+	uint8_t dfs_phyerr_eventq_serial_num;
+	uint8_t peak_mag;
+	STAILQ_ENTRY(dfs_event) re_list;
 } qdf_packed;
 #ifdef WIN32
 #pragma pack(pop, dfs_event)

+ 1 - 1
core/sap/dfs/src/dfs_process_phyerr.c

@@ -860,7 +860,7 @@ dfs_process_phyerr(struct ieee80211com *ic, void *buf, uint16_t datalen,
 				event->radar_fft_ext80_inband_power =
 						e.radar_fft_ext80_inband_power;
 				event->rsu_version = e.rsu_version;
-				event->phyerr_serial_num =
+				event->dfs_phyerr_eventq_serial_num =
 						dfs->dfs_phyerr_queued_count;
 				event->peak_mag = e.peak_mag;
 			}

+ 3 - 2
core/sap/dfs/src/dfs_process_radarevent.c

@@ -406,9 +406,10 @@ int dfs_process_radarevent(struct ath_dfs *dfs,
 				is_hw_chirp = 1;
 
 			QDF_TRACE(QDF_MODULE_ID_SAP, QDF_TRACE_LEVEL_INFO,
-				  "\n %s[%d]:PHYERR# = %d ts = %u  diff_ts = %u ppdu_rssi = %u dur = %u is_hw_chirp = %d segid = %d sidx = %d peak_mag = %d delta_peak = %d delta_diff = %d agc_total_gain = %d agc_mb_gain = %d radar_subchan_mask = 0x%x pulse_height = %d triggering_agc_event = %d rs_pulse_rssi = %d pri80_inband_power = %d ext80_inband_power = %d \n",
+				  "\n %s[%d]:PHYERR# = %d ts = %u  diff_ts = %u ppdu_rssi = %u dur = %u is_hw_chirp = %d segid = %d sidx = %d peak_mag = %d delta_peak = %d delta_diff = %d agc_total_gain = %d agc_mb_gain = %d radar_subchan_mask = 0x%x pulse_height = %d triggering_agc_event = %d rs_pulse_rssi = %d pri80_inband_power = %d ext80_inband_power = %d\n",
 				  __func__, __LINE__,
-				  re.phyerr_serial_num, (uint32_t) this_ts,
+				  re.dfs_phyerr_eventq_serial_num,
+				  (uint32_t) this_ts,
 				  diff_ts, re.re_rssi, re.re_dur, is_hw_chirp,
 				  re.radar_80p80_segid, re.sidx, re.peak_mag,
 				  re.delta_peak, re.delta_diff,