1324c74adSRajkumar Manoharan /* 2324c74adSRajkumar Manoharan * Copyright (c) 2010-2011 Atheros Communications Inc. 3324c74adSRajkumar Manoharan * 4324c74adSRajkumar Manoharan * Permission to use, copy, modify, and/or distribute this software for any 5324c74adSRajkumar Manoharan * purpose with or without fee is hereby granted, provided that the above 6324c74adSRajkumar Manoharan * copyright notice and this permission notice appear in all copies. 7324c74adSRajkumar Manoharan * 8324c74adSRajkumar Manoharan * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9324c74adSRajkumar Manoharan * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10324c74adSRajkumar Manoharan * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 11324c74adSRajkumar Manoharan * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12324c74adSRajkumar Manoharan * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 13324c74adSRajkumar Manoharan * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14324c74adSRajkumar Manoharan * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15324c74adSRajkumar Manoharan */ 16324c74adSRajkumar Manoharan 17324c74adSRajkumar Manoharan #ifndef AR9003_RTT_H 18324c74adSRajkumar Manoharan #define AR9003_RTT_H 19324c74adSRajkumar Manoharan 20*935477edSFelix Fietkau #ifdef CONFIG_ATH9K_PCOEM 21324c74adSRajkumar Manoharan void ar9003_hw_rtt_enable(struct ath_hw *ah); 22324c74adSRajkumar Manoharan void ar9003_hw_rtt_disable(struct ath_hw *ah); 23324c74adSRajkumar Manoharan void ar9003_hw_rtt_set_mask(struct ath_hw *ah, u32 rtt_mask); 24324c74adSRajkumar Manoharan bool ar9003_hw_rtt_force_restore(struct ath_hw *ah); 258a90555fSSujith Manoharan void ar9003_hw_rtt_load_hist(struct ath_hw *ah); 268a90555fSSujith Manoharan void ar9003_hw_rtt_fill_hist(struct ath_hw *ah); 27324c74adSRajkumar Manoharan void ar9003_hw_rtt_clear_hist(struct ath_hw *ah); 288a90555fSSujith Manoharan bool ar9003_hw_rtt_restore(struct ath_hw *ah, struct ath9k_channel *chan); 29*935477edSFelix Fietkau #else 30*935477edSFelix Fietkau static inline void ar9003_hw_rtt_enable(struct ath_hw *ah) 31*935477edSFelix Fietkau { 32*935477edSFelix Fietkau } 33*935477edSFelix Fietkau 34*935477edSFelix Fietkau static inline void ar9003_hw_rtt_disable(struct ath_hw *ah) 35*935477edSFelix Fietkau { 36*935477edSFelix Fietkau } 37*935477edSFelix Fietkau 38*935477edSFelix Fietkau static inline void ar9003_hw_rtt_set_mask(struct ath_hw *ah, u32 rtt_mask) 39*935477edSFelix Fietkau { 40*935477edSFelix Fietkau } 41*935477edSFelix Fietkau 42*935477edSFelix Fietkau static inline bool ar9003_hw_rtt_force_restore(struct ath_hw *ah) 43*935477edSFelix Fietkau { 44*935477edSFelix Fietkau return false; 45*935477edSFelix Fietkau } 46*935477edSFelix Fietkau 47*935477edSFelix Fietkau static inline void ar9003_hw_rtt_load_hist(struct ath_hw *ah) 48*935477edSFelix Fietkau { 49*935477edSFelix Fietkau } 50*935477edSFelix Fietkau 51*935477edSFelix Fietkau static inline void ar9003_hw_rtt_fill_hist(struct ath_hw *ah) 52*935477edSFelix Fietkau { 53*935477edSFelix Fietkau } 54*935477edSFelix Fietkau 55*935477edSFelix Fietkau static inline void ar9003_hw_rtt_clear_hist(struct ath_hw *ah) 56*935477edSFelix Fietkau { 57*935477edSFelix Fietkau } 58*935477edSFelix Fietkau 59*935477edSFelix Fietkau static inline bool ar9003_hw_rtt_restore(struct ath_hw *ah, struct ath9k_channel *chan) 60*935477edSFelix Fietkau { 61*935477edSFelix Fietkau return false; 62*935477edSFelix Fietkau } 63*935477edSFelix Fietkau #endif 64324c74adSRajkumar Manoharan 65324c74adSRajkumar Manoharan #endif 66