cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

spectral.h (1760B)


      1/* SPDX-License-Identifier: ISC */
      2/*
      3 * Copyright (c) 2013-2015 Qualcomm Atheros, Inc.
      4 */
      5
      6#ifndef SPECTRAL_H
      7#define SPECTRAL_H
      8
      9#include "../spectral_common.h"
     10
     11/**
     12 * struct ath10k_spec_scan - parameters for Atheros spectral scan
     13 *
     14 * @count: number of scan results requested for manual mode
     15 * @fft_size: number of bins to be requested = 2^(fft_size - bin_scale)
     16 */
     17struct ath10k_spec_scan {
     18	u8 count;
     19	u8 fft_size;
     20};
     21
     22/* enum ath10k_spectral_mode:
     23 *
     24 * @SPECTRAL_DISABLED: spectral mode is disabled
     25 * @SPECTRAL_BACKGROUND: hardware sends samples when it is not busy with
     26 *	something else.
     27 * @SPECTRAL_MANUAL: spectral scan is enabled, triggering for samples
     28 *	is performed manually.
     29 */
     30enum ath10k_spectral_mode {
     31	SPECTRAL_DISABLED = 0,
     32	SPECTRAL_BACKGROUND,
     33	SPECTRAL_MANUAL,
     34};
     35
     36#ifdef CONFIG_ATH10K_SPECTRAL
     37
     38int ath10k_spectral_process_fft(struct ath10k *ar,
     39				struct wmi_phyerr_ev_arg *phyerr,
     40				const struct phyerr_fft_report *fftr,
     41				size_t bin_len, u64 tsf);
     42int ath10k_spectral_start(struct ath10k *ar);
     43int ath10k_spectral_vif_stop(struct ath10k_vif *arvif);
     44int ath10k_spectral_create(struct ath10k *ar);
     45void ath10k_spectral_destroy(struct ath10k *ar);
     46
     47#else
     48
     49static inline int
     50ath10k_spectral_process_fft(struct ath10k *ar,
     51			    struct wmi_phyerr_ev_arg *phyerr,
     52			    const struct phyerr_fft_report *fftr,
     53			    size_t bin_len, u64 tsf)
     54{
     55	return 0;
     56}
     57
     58static inline int ath10k_spectral_start(struct ath10k *ar)
     59{
     60	return 0;
     61}
     62
     63static inline int ath10k_spectral_vif_stop(struct ath10k_vif *arvif)
     64{
     65	return 0;
     66}
     67
     68static inline int ath10k_spectral_create(struct ath10k *ar)
     69{
     70	return 0;
     71}
     72
     73static inline void ath10k_spectral_destroy(struct ath10k *ar)
     74{
     75}
     76
     77#endif /* CONFIG_ATH10K_SPECTRAL */
     78
     79#endif /* SPECTRAL_H */