diff options
Diffstat (limited to 'drivers/net/wireless/iwlegacy/common.c')
| -rw-r--r-- | drivers/net/wireless/iwlegacy/common.c | 247 | 
1 files changed, 0 insertions, 247 deletions
| diff --git a/drivers/net/wireless/iwlegacy/common.c b/drivers/net/wireless/iwlegacy/common.c index 1bf861626c86..21b355a9171f 100644 --- a/drivers/net/wireless/iwlegacy/common.c +++ b/drivers/net/wireless/iwlegacy/common.c @@ -4574,253 +4574,6 @@ il_txq_mem(struct il_priv *il)  }  EXPORT_SYMBOL(il_txq_mem); -#ifdef CONFIG_IWLEGACY_DEBUGFS - -#define IL_TRAFFIC_DUMP_SIZE	(IL_TRAFFIC_ENTRY_SIZE * IL_TRAFFIC_ENTRIES) - -void -il_reset_traffic_log(struct il_priv *il) -{ -	il->tx_traffic_idx = 0; -	il->rx_traffic_idx = 0; -	if (il->tx_traffic) -		memset(il->tx_traffic, 0, IL_TRAFFIC_DUMP_SIZE); -	if (il->rx_traffic) -		memset(il->rx_traffic, 0, IL_TRAFFIC_DUMP_SIZE); -} - -int -il_alloc_traffic_mem(struct il_priv *il) -{ -	u32 traffic_size = IL_TRAFFIC_DUMP_SIZE; - -	if (il_debug_level & IL_DL_TX) { -		if (!il->tx_traffic) { -			il->tx_traffic = kzalloc(traffic_size, GFP_KERNEL); -			if (!il->tx_traffic) -				return -ENOMEM; -		} -	} -	if (il_debug_level & IL_DL_RX) { -		if (!il->rx_traffic) { -			il->rx_traffic = kzalloc(traffic_size, GFP_KERNEL); -			if (!il->rx_traffic) -				return -ENOMEM; -		} -	} -	il_reset_traffic_log(il); -	return 0; -} -EXPORT_SYMBOL(il_alloc_traffic_mem); - -void -il_free_traffic_mem(struct il_priv *il) -{ -	kfree(il->tx_traffic); -	il->tx_traffic = NULL; - -	kfree(il->rx_traffic); -	il->rx_traffic = NULL; -} -EXPORT_SYMBOL(il_free_traffic_mem); - -void -il_dbg_log_tx_data_frame(struct il_priv *il, u16 length, -			 struct ieee80211_hdr *header) -{ -	__le16 fc; -	u16 len; - -	if (likely(!(il_debug_level & IL_DL_TX))) -		return; - -	if (!il->tx_traffic) -		return; - -	fc = header->frame_control; -	if (ieee80211_is_data(fc)) { -		len = -		    (length > -		     IL_TRAFFIC_ENTRY_SIZE) ? IL_TRAFFIC_ENTRY_SIZE : length; -		memcpy((il->tx_traffic + -			(il->tx_traffic_idx * IL_TRAFFIC_ENTRY_SIZE)), header, -		       len); -		il->tx_traffic_idx = -		    (il->tx_traffic_idx + 1) % IL_TRAFFIC_ENTRIES; -	} -} -EXPORT_SYMBOL(il_dbg_log_tx_data_frame); - -void -il_dbg_log_rx_data_frame(struct il_priv *il, u16 length, -			 struct ieee80211_hdr *header) -{ -	__le16 fc; -	u16 len; - -	if (likely(!(il_debug_level & IL_DL_RX))) -		return; - -	if (!il->rx_traffic) -		return; - -	fc = header->frame_control; -	if (ieee80211_is_data(fc)) { -		len = -		    (length > -		     IL_TRAFFIC_ENTRY_SIZE) ? IL_TRAFFIC_ENTRY_SIZE : length; -		memcpy((il->rx_traffic + -			(il->rx_traffic_idx * IL_TRAFFIC_ENTRY_SIZE)), header, -		       len); -		il->rx_traffic_idx = -		    (il->rx_traffic_idx + 1) % IL_TRAFFIC_ENTRIES; -	} -} -EXPORT_SYMBOL(il_dbg_log_rx_data_frame); - -const char * -il_get_mgmt_string(int cmd) -{ -	switch (cmd) { -		IL_CMD(MANAGEMENT_ASSOC_REQ); -		IL_CMD(MANAGEMENT_ASSOC_RESP); -		IL_CMD(MANAGEMENT_REASSOC_REQ); -		IL_CMD(MANAGEMENT_REASSOC_RESP); -		IL_CMD(MANAGEMENT_PROBE_REQ); -		IL_CMD(MANAGEMENT_PROBE_RESP); -		IL_CMD(MANAGEMENT_BEACON); -		IL_CMD(MANAGEMENT_ATIM); -		IL_CMD(MANAGEMENT_DISASSOC); -		IL_CMD(MANAGEMENT_AUTH); -		IL_CMD(MANAGEMENT_DEAUTH); -		IL_CMD(MANAGEMENT_ACTION); -	default: -		return "UNKNOWN"; - -	} -} - -const char * -il_get_ctrl_string(int cmd) -{ -	switch (cmd) { -		IL_CMD(CONTROL_BACK_REQ); -		IL_CMD(CONTROL_BACK); -		IL_CMD(CONTROL_PSPOLL); -		IL_CMD(CONTROL_RTS); -		IL_CMD(CONTROL_CTS); -		IL_CMD(CONTROL_ACK); -		IL_CMD(CONTROL_CFEND); -		IL_CMD(CONTROL_CFENDACK); -	default: -		return "UNKNOWN"; - -	} -} - -void -il_clear_traffic_stats(struct il_priv *il) -{ -	memset(&il->tx_stats, 0, sizeof(struct traffic_stats)); -	memset(&il->rx_stats, 0, sizeof(struct traffic_stats)); -} - -/* - * if CONFIG_IWLEGACY_DEBUGFS defined, - * il_update_stats function will - * record all the MGMT, CTRL and DATA pkt for both TX and Rx pass - * Use debugFs to display the rx/rx_stats - * if CONFIG_IWLEGACY_DEBUGFS not being defined, then no MGMT and CTRL - * information will be recorded, but DATA pkt still will be recorded - * for the reason of il_led.c need to control the led blinking based on - * number of tx and rx data. - * - */ -void -il_update_stats(struct il_priv *il, bool is_tx, __le16 fc, u16 len) -{ -	struct traffic_stats *stats; - -	if (is_tx) -		stats = &il->tx_stats; -	else -		stats = &il->rx_stats; - -	if (ieee80211_is_mgmt(fc)) { -		switch (fc & cpu_to_le16(IEEE80211_FCTL_STYPE)) { -		case cpu_to_le16(IEEE80211_STYPE_ASSOC_REQ): -			stats->mgmt[MANAGEMENT_ASSOC_REQ]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_ASSOC_RESP): -			stats->mgmt[MANAGEMENT_ASSOC_RESP]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_REASSOC_REQ): -			stats->mgmt[MANAGEMENT_REASSOC_REQ]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_REASSOC_RESP): -			stats->mgmt[MANAGEMENT_REASSOC_RESP]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_PROBE_REQ): -			stats->mgmt[MANAGEMENT_PROBE_REQ]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_PROBE_RESP): -			stats->mgmt[MANAGEMENT_PROBE_RESP]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_BEACON): -			stats->mgmt[MANAGEMENT_BEACON]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_ATIM): -			stats->mgmt[MANAGEMENT_ATIM]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_DISASSOC): -			stats->mgmt[MANAGEMENT_DISASSOC]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_AUTH): -			stats->mgmt[MANAGEMENT_AUTH]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_DEAUTH): -			stats->mgmt[MANAGEMENT_DEAUTH]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_ACTION): -			stats->mgmt[MANAGEMENT_ACTION]++; -			break; -		} -	} else if (ieee80211_is_ctl(fc)) { -		switch (fc & cpu_to_le16(IEEE80211_FCTL_STYPE)) { -		case cpu_to_le16(IEEE80211_STYPE_BACK_REQ): -			stats->ctrl[CONTROL_BACK_REQ]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_BACK): -			stats->ctrl[CONTROL_BACK]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_PSPOLL): -			stats->ctrl[CONTROL_PSPOLL]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_RTS): -			stats->ctrl[CONTROL_RTS]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_CTS): -			stats->ctrl[CONTROL_CTS]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_ACK): -			stats->ctrl[CONTROL_ACK]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_CFEND): -			stats->ctrl[CONTROL_CFEND]++; -			break; -		case cpu_to_le16(IEEE80211_STYPE_CFENDACK): -			stats->ctrl[CONTROL_CFENDACK]++; -			break; -		} -	} else { -		/* data */ -		stats->data_cnt++; -		stats->data_bytes += len; -	} -} -EXPORT_SYMBOL(il_update_stats); -#endif -  int  il_force_reset(struct il_priv *il, bool external)  { | 
