|
@@ -452,6 +452,42 @@ typedef struct {
|
|
|
chan_mhz: 16;
|
|
|
};
|
|
|
};
|
|
|
+
|
|
|
+ /*
|
|
|
+ * The cca_delta_time_us reports the time the tx PPDU in question
|
|
|
+ * was waiting in the HW tx queue for the clear channel assessment
|
|
|
+ * to indicate that the transmission could start.
|
|
|
+ * If this CCA delta time is zero or small, this indicates that the
|
|
|
+ * air interface was unused prior to the transmission, and thus it's
|
|
|
+ * improbable that there was a collision with some other transceiver's
|
|
|
+ * transmission.
|
|
|
+ * In contrast, a large CCA delta time means that this transceiver had
|
|
|
+ * to wait a long time for the air interface to be available; it's
|
|
|
+ * possible that other transceivers were also waiting for the air
|
|
|
+ * interface to become available, and if the other waiting transceiver's
|
|
|
+ * CW backoff aligned with this one, to have a transmit collision.
|
|
|
+ */
|
|
|
+ A_UINT32 cca_delta_time_us;
|
|
|
+
|
|
|
+ /*
|
|
|
+ * The rxfrm_delta_time_us reports the time the tx PPDU in question
|
|
|
+ * was waiting in the HW tx queue while there was an ongoing rx,
|
|
|
+ * either because the rx was already ongoing at the time the tx PPDU
|
|
|
+ * was enqueued, or because the rx (i.e. the peer's tx) won the air
|
|
|
+ * interface contention over the local vdev's tx.
|
|
|
+ */
|
|
|
+ A_UINT32 rxfrm_delta_time_us;
|
|
|
+
|
|
|
+ /*
|
|
|
+ * The txfrm_delta_time_us reports the time from when the tx PPDU
|
|
|
+ * in question was enqueued into the HW tx queue until the time the
|
|
|
+ * tx completion interrupt for the PPDU occurred.
|
|
|
+ * Thus, the txfrm_delta_time_us incorporates any time the tx PPDU
|
|
|
+ * had to wait for the air interface to become available, the PPDU
|
|
|
+ * duration, the block ack reception, and the tx completion interrupt
|
|
|
+ * latency.
|
|
|
+ */
|
|
|
+ A_UINT32 txfrm_delta_time_us;
|
|
|
} htt_ppdu_stats_common_tlv;
|
|
|
|
|
|
#define HTT_PPDU_STATS_USER_COMMON_TLV_TID_NUM_M 0x000000ff
|