diff options
Diffstat (limited to 'drivers/net/wireless/ti/wlcore/debugfs.c')
| -rw-r--r-- | drivers/net/wireless/ti/wlcore/debugfs.c | 18 | 
1 files changed, 17 insertions, 1 deletions
diff --git a/drivers/net/wireless/ti/wlcore/debugfs.c b/drivers/net/wireless/ti/wlcore/debugfs.c index e17630c2a84..89893c71702 100644 --- a/drivers/net/wireless/ti/wlcore/debugfs.c +++ b/drivers/net/wireless/ti/wlcore/debugfs.c @@ -437,6 +437,7 @@ static ssize_t driver_state_read(struct file *file, char __user *user_buf,  	int res = 0;  	ssize_t ret;  	char *buf; +	struct wl12xx_vif *wlvif;  #define DRIVER_STATE_BUF_LEN 1024 @@ -450,12 +451,28 @@ static ssize_t driver_state_read(struct file *file, char __user *user_buf,  	(res += scnprintf(buf + res, DRIVER_STATE_BUF_LEN - res,\  			  #x " = " fmt "\n", wl->x)) +#define DRIVER_STATE_PRINT_GENERIC(x, fmt, args...)   \ +	(res += scnprintf(buf + res, DRIVER_STATE_BUF_LEN - res,\ +			  #x " = " fmt "\n", args)) +  #define DRIVER_STATE_PRINT_LONG(x) DRIVER_STATE_PRINT(x, "%ld")  #define DRIVER_STATE_PRINT_INT(x)  DRIVER_STATE_PRINT(x, "%d")  #define DRIVER_STATE_PRINT_STR(x)  DRIVER_STATE_PRINT(x, "%s")  #define DRIVER_STATE_PRINT_LHEX(x) DRIVER_STATE_PRINT(x, "0x%lx")  #define DRIVER_STATE_PRINT_HEX(x)  DRIVER_STATE_PRINT(x, "0x%x") +	wl12xx_for_each_wlvif_sta(wl, wlvif) { +		if (!test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags)) +			continue; + +		DRIVER_STATE_PRINT_GENERIC(channel, "%d (%s)", wlvif->channel, +					   wlvif->p2p ? "P2P-CL" : "STA"); +	} + +	wl12xx_for_each_wlvif_ap(wl, wlvif) +		DRIVER_STATE_PRINT_GENERIC(channel, "%d (%s)", wlvif->channel, +					   wlvif->p2p ? "P2P-GO" : "AP"); +  	DRIVER_STATE_PRINT_INT(tx_blocks_available);  	DRIVER_STATE_PRINT_INT(tx_allocated_blocks);  	DRIVER_STATE_PRINT_INT(tx_allocated_pkts[0]); @@ -474,7 +491,6 @@ static ssize_t driver_state_read(struct file *file, char __user *user_buf,  	DRIVER_STATE_PRINT_INT(tx_blocks_freed);  	DRIVER_STATE_PRINT_INT(rx_counter);  	DRIVER_STATE_PRINT_INT(state); -	DRIVER_STATE_PRINT_INT(channel);  	DRIVER_STATE_PRINT_INT(band);  	DRIVER_STATE_PRINT_INT(power_level);  	DRIVER_STATE_PRINT_INT(sg_enabled);  | 
