diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/debug.c')
| -rw-r--r-- | drivers/net/wireless/ath/ath9k/debug.c | 10 | 
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c index bad1a87249b..d55ffd7d4bd 100644 --- a/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c @@ -1,5 +1,5 @@  /* - * Copyright (c) 2008-2009 Atheros Communications Inc. + * Copyright (c) 2008-2011 Atheros Communications Inc.   *   * Permission to use, copy, modify, and/or distribute this software for any   * purpose with or without fee is hereby granted, provided that the above @@ -435,6 +435,7 @@ static ssize_t read_file_wiphy(struct file *file, char __user *user_buf,  			conf->channel_type,  			channel_type_str(conf->channel_type)); +	ath9k_ps_wakeup(sc);  	put_unaligned_le32(REG_READ_D(sc->sc_ah, AR_STA_ID0), addr);  	put_unaligned_le16(REG_READ_D(sc->sc_ah, AR_STA_ID1) & 0xffff, addr + 4);  	len += snprintf(buf + len, sizeof(buf) - len, @@ -444,6 +445,7 @@ static ssize_t read_file_wiphy(struct file *file, char __user *user_buf,  	len += snprintf(buf + len, sizeof(buf) - len,  			"addrmask: %pM\n", addr);  	tmp = ath9k_hw_getrxfilter(sc->sc_ah); +	ath9k_ps_restore(sc);  	len += snprintf(buf + len, sizeof(buf) - len,  			"rfilt: 0x%x", tmp);  	if (tmp & ATH9K_RX_FILTER_UCAST) @@ -725,6 +727,7 @@ static ssize_t read_file_misc(struct file *file, char __user *user_buf,  		break;  	} +	ath9k_ps_wakeup(sc);  	len += snprintf(buf + len, size - len,  			"curbssid: %pM\n"  			"OP-Mode: %s(%i)\n" @@ -734,6 +737,7 @@ static ssize_t read_file_misc(struct file *file, char __user *user_buf,  			REG_READ(ah, AR_BEACON_PERIOD));  	reg = REG_READ(ah, AR_TIMER_MODE); +	ath9k_ps_restore(sc);  	len += snprintf(buf + len, size - len, "Timer-Mode-Register: 0x%x (",  			reg);  	if (reg & AR_TBTT_TIMER_EN) @@ -1050,7 +1054,9 @@ static ssize_t read_file_regval(struct file *file, char __user *user_buf,  	unsigned int len;  	u32 regval; +	ath9k_ps_wakeup(sc);  	regval = REG_READ_D(ah, sc->debug.regidx); +	ath9k_ps_restore(sc);  	len = sprintf(buf, "0x%08x\n", regval);  	return simple_read_from_buffer(user_buf, count, ppos, buf, len);  } @@ -1072,7 +1078,9 @@ static ssize_t write_file_regval(struct file *file, const char __user *user_buf,  	if (strict_strtoul(buf, 0, ®val))  		return -EINVAL; +	ath9k_ps_wakeup(sc);  	REG_WRITE_D(ah, sc->debug.regidx, regval); +	ath9k_ps_restore(sc);  	return count;  }  |