^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #ifndef __MAC80211_DEBUG_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define __MAC80211_DEBUG_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #include <net/cfg80211.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #ifdef CONFIG_MAC80211_OCB_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #define MAC80211_OCB_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #define MAC80211_OCB_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #ifdef CONFIG_MAC80211_IBSS_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) #define MAC80211_IBSS_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) #define MAC80211_IBSS_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) #ifdef CONFIG_MAC80211_PS_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define MAC80211_PS_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) #define MAC80211_PS_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) #ifdef CONFIG_MAC80211_HT_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define MAC80211_HT_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) #define MAC80211_HT_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) #ifdef CONFIG_MAC80211_MPL_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) #define MAC80211_MPL_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) #define MAC80211_MPL_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) #ifdef CONFIG_MAC80211_MPATH_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) #define MAC80211_MPATH_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) #define MAC80211_MPATH_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) #ifdef CONFIG_MAC80211_MHWMP_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) #define MAC80211_MHWMP_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) #define MAC80211_MHWMP_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) #ifdef CONFIG_MAC80211_MESH_SYNC_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) #define MAC80211_MESH_SYNC_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) #define MAC80211_MESH_SYNC_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) #ifdef CONFIG_MAC80211_MESH_CSA_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) #define MAC80211_MESH_CSA_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) #define MAC80211_MESH_CSA_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) #ifdef CONFIG_MAC80211_MESH_PS_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) #define MAC80211_MESH_PS_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) #define MAC80211_MESH_PS_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) #ifdef CONFIG_MAC80211_TDLS_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) #define MAC80211_TDLS_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) #define MAC80211_TDLS_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) #ifdef CONFIG_MAC80211_STA_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) #define MAC80211_STA_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) #define MAC80211_STA_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) #ifdef CONFIG_MAC80211_MLME_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) #define MAC80211_MLME_DEBUG 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) #define MAC80211_MLME_DEBUG 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) #ifdef CONFIG_MAC80211_MESSAGE_TRACING
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) void __sdata_info(const char *fmt, ...) __printf(1, 2);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) void __sdata_dbg(bool print, const char *fmt, ...) __printf(2, 3);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) void __sdata_err(const char *fmt, ...) __printf(1, 2);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) void __wiphy_dbg(struct wiphy *wiphy, bool print, const char *fmt, ...)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) __printf(3, 4);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) #define _sdata_info(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) __sdata_info("%s: " fmt, (sdata)->name, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) #define _sdata_dbg(print, sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) __sdata_dbg(print, "%s: " fmt, (sdata)->name, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) #define _sdata_err(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) __sdata_err("%s: " fmt, (sdata)->name, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) #define _wiphy_dbg(print, wiphy, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) __wiphy_dbg(wiphy, print, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) #else
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) #define _sdata_info(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) do { \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) pr_info("%s: " fmt, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) (sdata)->name, ##__VA_ARGS__); \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) } while (0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) #define _sdata_dbg(print, sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) do { \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) if (print) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) pr_debug("%s: " fmt, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) (sdata)->name, ##__VA_ARGS__); \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) } while (0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) #define _sdata_err(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) do { \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) pr_err("%s: " fmt, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) (sdata)->name, ##__VA_ARGS__); \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) } while (0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) #define _wiphy_dbg(print, wiphy, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) do { \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) if (print) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) wiphy_dbg((wiphy), fmt, ##__VA_ARGS__); \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) } while (0)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) #endif
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) #define sdata_info(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) _sdata_info(sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) #define sdata_err(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) _sdata_err(sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) #define sdata_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) _sdata_dbg(1, sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) #define ht_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) _sdata_dbg(MAC80211_HT_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) #define ht_dbg_ratelimited(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) _sdata_dbg(MAC80211_HT_DEBUG && net_ratelimit(), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) #define ocb_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) _sdata_dbg(MAC80211_OCB_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) #define ibss_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) _sdata_dbg(MAC80211_IBSS_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) #define ps_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) _sdata_dbg(MAC80211_PS_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) #define ps_dbg_hw(hw, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) _wiphy_dbg(MAC80211_PS_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) (hw)->wiphy, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) #define ps_dbg_ratelimited(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) _sdata_dbg(MAC80211_PS_DEBUG && net_ratelimit(), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) #define mpl_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) _sdata_dbg(MAC80211_MPL_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) #define mpath_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) _sdata_dbg(MAC80211_MPATH_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) #define mhwmp_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) _sdata_dbg(MAC80211_MHWMP_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) #define msync_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) _sdata_dbg(MAC80211_MESH_SYNC_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) #define mcsa_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) _sdata_dbg(MAC80211_MESH_CSA_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) #define mps_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) _sdata_dbg(MAC80211_MESH_PS_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) #define tdls_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) _sdata_dbg(MAC80211_TDLS_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) #define sta_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) _sdata_dbg(MAC80211_STA_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) #define mlme_dbg(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) _sdata_dbg(MAC80211_MLME_DEBUG, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) #define mlme_dbg_ratelimited(sdata, fmt, ...) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) _sdata_dbg(MAC80211_MLME_DEBUG && net_ratelimit(), \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) sdata, fmt, ##__VA_ARGS__)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) #endif /* __MAC80211_DEBUG_H */