67 lines
1.7 KiB
C
67 lines
1.7 KiB
C
/*****************************************************************************
|
|
|
|
(c) Cambridge Silicon Radio Limited 2011
|
|
All rights reserved and confidential information of CSR
|
|
|
|
Refer to LICENSE.txt included with this source for details
|
|
on the license terms.
|
|
|
|
*****************************************************************************/
|
|
|
|
/*
|
|
* ---------------------------------------------------------------------------
|
|
* FILE: csr_wifi_hip_ta_sampling.h
|
|
*
|
|
* PURPOSE:
|
|
* This file contains Traffic Analysis definitions common to the
|
|
* sampling and analysis modules.
|
|
*
|
|
* ---------------------------------------------------------------------------
|
|
*/
|
|
#ifndef __TA_SAMPLING_H__
|
|
#define __TA_SAMPLING_H__
|
|
|
|
#include "csr_wifi_hip_unifi.h"
|
|
|
|
typedef struct ta_l4stats
|
|
{
|
|
u32 rxTcpBytesCount;
|
|
u32 txTcpBytesCount;
|
|
u32 rxUdpBytesCount;
|
|
u32 txUdpBytesCount;
|
|
} ta_l4stats_t;
|
|
|
|
/*
|
|
* Context structure to preserve state between calls.
|
|
*/
|
|
|
|
typedef struct ta_data
|
|
{
|
|
/* Current packet filter configuration */
|
|
u16 packet_filter;
|
|
|
|
/* Current packet custom filter configuration */
|
|
CsrWifiRouterCtrlTrafficFilter custom_filter;
|
|
|
|
/* The timestamp of the last tx packet processed. */
|
|
u32 tx_last_ts;
|
|
|
|
/* The timestamp of the last packet processed. */
|
|
u32 last_indication_time;
|
|
|
|
/* Statistics */
|
|
CsrWifiRouterCtrlTrafficStats stats;
|
|
|
|
/* Current traffic classification */
|
|
CsrWifiRouterCtrlTrafficType traffic_type;
|
|
|
|
/* Sum of packet rx rates for this interval used to calculate mean */
|
|
u32 rx_sum_rate;
|
|
ta_l4stats_t ta_l4stats;
|
|
} ta_data_t;
|
|
|
|
|
|
void unifi_ta_sampling_init(card_t *card);
|
|
|
|
#endif /* __TA_SAMPLING_H__ */
|