u64 dfs_prev_pulse_ts;
        u32 wow_enabled;
        /* relay(fs) channel for spectral scan */
-       struct rchan *rfs_chan_spec_scan;
        enum spectral_mode spectral_mode;
        struct ath_spec_scan spec_config;
+       struct ath_spec_scan_priv spec_priv;
 
        struct ieee80211_vif *tx99_vif;
        struct sk_buff *tx99_skb;
 
                                      struct fft_sample_tlv *fft_sample_tlv)
 {
        int length;
-       if (!sc->rfs_chan_spec_scan)
+       if (!sc->spec_priv.rfs_chan_spec_scan)
                return;
 
        length = __be16_to_cpu(fft_sample_tlv->length) +
                 sizeof(*fft_sample_tlv);
-       relay_write(sc->rfs_chan_spec_scan, fft_sample_tlv, length);
+       relay_write(sc->spec_priv.rfs_chan_spec_scan, fft_sample_tlv, length);
 }
 
 /* returns 1 if this was a spectral frame, even if not handled. */
 
 void ath9k_spectral_deinit_debug(struct ath_softc *sc)
 {
-       if (config_enabled(CONFIG_ATH9K_DEBUGFS) && sc->rfs_chan_spec_scan) {
-               relay_close(sc->rfs_chan_spec_scan);
-               sc->rfs_chan_spec_scan = NULL;
+       if (config_enabled(CONFIG_ATH9K_DEBUGFS) && sc->spec_priv.rfs_chan_spec_scan) {
+               relay_close(sc->spec_priv.rfs_chan_spec_scan);
+               sc->spec_priv.rfs_chan_spec_scan = NULL;
        }
 }
 
 void ath9k_spectral_init_debug(struct ath_softc *sc)
 {
-       sc->rfs_chan_spec_scan = relay_open("spectral_scan",
+       sc->spec_priv.rfs_chan_spec_scan = relay_open("spectral_scan",
                                            sc->debug.debugfs_phy,
                                            1024, 256, &rfs_spec_scan_cb,
                                            NULL);