@@ -1028,8 +1028,7 @@ struct ath_softc {
struct dfs_pattern_detector *dfs_detector;
u64 dfs_prev_pulse_ts;
u32 wow_enabled;
- /* relay(fs) channel for spectral scan */
- struct ath_spec_scan spec_config;
+
struct ath_spec_scan_priv spec_priv;
struct ieee80211_vif *tx99_vif;
@@ -348,12 +348,12 @@ static void ath9k_init_misc(struct ath_softc *sc)
if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_ANT_DIV_COMB)
sc->ant_comb.count = ATH_ANT_DIV_COMB_INIT_COUNT;
- sc->spec_config.enabled = 0;
- sc->spec_config.short_repeat = true;
- sc->spec_config.count = 8;
- sc->spec_config.endless = false;
- sc->spec_config.period = 0xFF;
- sc->spec_config.fft_period = 0xF;
+ sc->spec_priv.spec_config.enabled = 0;
+ sc->spec_priv.spec_config.short_repeat = true;
+ sc->spec_priv.spec_config.count = 8;
+ sc->spec_priv.spec_config.endless = false;
+ sc->spec_priv.spec_config.period = 0xFF;
+ sc->spec_priv.spec_config.fft_period = 0xF;
}
static void ath9k_init_pcoem_platform(struct ath_softc *sc)
@@ -1384,26 +1384,26 @@ int ath9k_spectral_scan_config(struct ieee80211_hw *hw,
switch (spectral_mode) {
case SPECTRAL_DISABLED:
- sc->spec_config.enabled = 0;
+ sc->spec_priv.spec_config.enabled = 0;
break;
case SPECTRAL_BACKGROUND:
/* send endless samples.
* TODO: is this really useful for "background"?
*/
- sc->spec_config.endless = 1;
- sc->spec_config.enabled = 1;
+ sc->spec_priv.spec_config.endless = 1;
+ sc->spec_priv.spec_config.enabled = 1;
break;
case SPECTRAL_CHANSCAN:
case SPECTRAL_MANUAL:
- sc->spec_config.endless = 0;
- sc->spec_config.enabled = 1;
+ sc->spec_priv.spec_config.endless = 0;
+ sc->spec_priv.spec_config.enabled = 1;
break;
default:
return -1;
}
ath9k_ps_wakeup(sc);
- ath9k_hw_ops(ah)->spectral_scan_config(ah, &sc->spec_config);
+ ath9k_hw_ops(ah)->spectral_scan_config(ah, &sc->spec_priv.spec_config);
ath9k_ps_restore(sc);
sc->spec_priv.spectral_mode = spectral_mode;
@@ -292,7 +292,7 @@ static ssize_t read_file_spectral_short_repeat(struct file *file,
char buf[32];
unsigned int len;
- len = sprintf(buf, "%d\n", sc->spec_config.short_repeat);
+ len = sprintf(buf, "%d\n", sc->spec_priv.spec_config.short_repeat);
return simple_read_from_buffer(user_buf, count, ppos, buf, len);
}
@@ -316,7 +316,7 @@ static ssize_t write_file_spectral_short_repeat(struct file *file,
if (val > 1)
return -EINVAL;
- sc->spec_config.short_repeat = val;
+ sc->spec_priv.spec_config.short_repeat = val;
return count;
}
@@ -340,7 +340,7 @@ static ssize_t read_file_spectral_count(struct file *file,
char buf[32];
unsigned int len;
- len = sprintf(buf, "%d\n", sc->spec_config.count);
+ len = sprintf(buf, "%d\n", sc->spec_priv.spec_config.count);
return simple_read_from_buffer(user_buf, count, ppos, buf, len);
}
@@ -364,7 +364,7 @@ static ssize_t write_file_spectral_count(struct file *file,
if (val > 255)
return -EINVAL;
- sc->spec_config.count = val;
+ sc->spec_priv.spec_config.count = val;
return count;
}
@@ -388,7 +388,7 @@ static ssize_t read_file_spectral_period(struct file *file,
char buf[32];
unsigned int len;
- len = sprintf(buf, "%d\n", sc->spec_config.period);
+ len = sprintf(buf, "%d\n", sc->spec_priv.spec_config.period);
return simple_read_from_buffer(user_buf, count, ppos, buf, len);
}
@@ -412,7 +412,7 @@ static ssize_t write_file_spectral_period(struct file *file,
if (val > 255)
return -EINVAL;
- sc->spec_config.period = val;
+ sc->spec_priv.spec_config.period = val;
return count;
}
@@ -436,7 +436,7 @@ static ssize_t read_file_spectral_fft_period(struct file *file,
char buf[32];
unsigned int len;
- len = sprintf(buf, "%d\n", sc->spec_config.fft_period);
+ len = sprintf(buf, "%d\n", sc->spec_priv.spec_config.fft_period);
return simple_read_from_buffer(user_buf, count, ppos, buf, len);
}
@@ -460,7 +460,7 @@ static ssize_t write_file_spectral_fft_period(struct file *file,
if (val > 15)
return -EINVAL;
- sc->spec_config.fft_period = val;
+ sc->spec_priv.spec_config.fft_period = val;
return count;
}
@@ -93,8 +93,10 @@ struct ath_ht20_40_fft_packet {
} __packed;
struct ath_spec_scan_priv {
+ /* relay(fs) channel for spectral scan */
struct rchan *rfs_chan_spec_scan;
enum spectral_mode spectral_mode;
+ struct ath_spec_scan spec_config;
};
#define SPECTRAL_HT20_40_TOTAL_DATA_LEN (sizeof(struct ath_ht20_40_fft_packet))
Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> --- drivers/net/wireless/ath/ath9k/ath9k.h | 3 +-- drivers/net/wireless/ath/ath9k/init.c | 12 ++++++------ drivers/net/wireless/ath/ath9k/main.c | 12 ++++++------ drivers/net/wireless/ath/ath9k/spectral.c | 16 ++++++++-------- drivers/net/wireless/ath/ath9k/spectral.h | 2 ++ 5 files changed, 23 insertions(+), 22 deletions(-)