xref: /freebsd/sys/contrib/dev/rtw88/debug.h (revision 9c951734c28914f51b2fe2f2028272b572ade1ee)
12774f206SBjoern A. Zeeb /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
22774f206SBjoern A. Zeeb /* Copyright(c) 2018-2019  Realtek Corporation
32774f206SBjoern A. Zeeb  */
42774f206SBjoern A. Zeeb 
52774f206SBjoern A. Zeeb #ifndef __RTW_DEBUG_H
62774f206SBjoern A. Zeeb #define __RTW_DEBUG_H
72774f206SBjoern A. Zeeb 
82774f206SBjoern A. Zeeb enum rtw_debug_mask {
92774f206SBjoern A. Zeeb 	RTW_DBG_PCI		= 0x00000001,
102774f206SBjoern A. Zeeb 	RTW_DBG_TX		= 0x00000002,
112774f206SBjoern A. Zeeb 	RTW_DBG_RX		= 0x00000004,
122774f206SBjoern A. Zeeb 	RTW_DBG_PHY		= 0x00000008,
132774f206SBjoern A. Zeeb 	RTW_DBG_FW		= 0x00000010,
142774f206SBjoern A. Zeeb 	RTW_DBG_EFUSE		= 0x00000020,
152774f206SBjoern A. Zeeb 	RTW_DBG_COEX		= 0x00000040,
162774f206SBjoern A. Zeeb 	RTW_DBG_RFK		= 0x00000080,
172774f206SBjoern A. Zeeb 	RTW_DBG_REGD		= 0x00000100,
182774f206SBjoern A. Zeeb 	RTW_DBG_DEBUGFS		= 0x00000200,
192774f206SBjoern A. Zeeb 	RTW_DBG_PS		= 0x00000400,
202774f206SBjoern A. Zeeb 	RTW_DBG_BF		= 0x00000800,
212774f206SBjoern A. Zeeb 	RTW_DBG_WOW		= 0x00001000,
222774f206SBjoern A. Zeeb 	RTW_DBG_CFO		= 0x00002000,
232774f206SBjoern A. Zeeb 	RTW_DBG_PATH_DIV	= 0x00004000,
242774f206SBjoern A. Zeeb 	RTW_DBG_ADAPTIVITY	= 0x00008000,
252774f206SBjoern A. Zeeb 	RTW_DBG_HW_SCAN		= 0x00010000,
26*9c951734SBjoern A. Zeeb 	RTW_DBG_STATE		= 0x00020000,
272774f206SBjoern A. Zeeb 
282774f206SBjoern A. Zeeb #if defined(__FreeBSD__)
292774f206SBjoern A. Zeeb 	RTW_DBG_IO_RW		= 0x80000000,
302774f206SBjoern A. Zeeb #endif
312774f206SBjoern A. Zeeb 	RTW_DBG_ALL		= 0xffffffff
322774f206SBjoern A. Zeeb };
332774f206SBjoern A. Zeeb 
342774f206SBjoern A. Zeeb #ifdef CONFIG_RTW88_DEBUGFS
352774f206SBjoern A. Zeeb 
362774f206SBjoern A. Zeeb void rtw_debugfs_init(struct rtw_dev *rtwdev);
372774f206SBjoern A. Zeeb void rtw_debugfs_get_simple_phy_info(struct seq_file *m);
382774f206SBjoern A. Zeeb 
392774f206SBjoern A. Zeeb #else
402774f206SBjoern A. Zeeb 
412774f206SBjoern A. Zeeb static inline void rtw_debugfs_init(struct rtw_dev *rtwdev) {}
422774f206SBjoern A. Zeeb 
432774f206SBjoern A. Zeeb #endif /* CONFIG_RTW88_DEBUGFS */
442774f206SBjoern A. Zeeb 
452774f206SBjoern A. Zeeb #ifdef CONFIG_RTW88_DEBUG
462774f206SBjoern A. Zeeb 
472774f206SBjoern A. Zeeb __printf(3, 4)
482774f206SBjoern A. Zeeb void __rtw_dbg(struct rtw_dev *rtwdev, enum rtw_debug_mask mask,
492774f206SBjoern A. Zeeb 	       const char *fmt, ...);
502774f206SBjoern A. Zeeb 
512774f206SBjoern A. Zeeb #if defined(__linux__)
522774f206SBjoern A. Zeeb #define rtw_dbg(rtwdev, a...) __rtw_dbg(rtwdev, ##a)
532774f206SBjoern A. Zeeb #elif defined(__FreeBSD__)
542774f206SBjoern A. Zeeb #define	rtw_dbg(rtwdev, ...)	__rtw_dbg(rtwdev, __VA_ARGS__)
552774f206SBjoern A. Zeeb #endif
562774f206SBjoern A. Zeeb 
572774f206SBjoern A. Zeeb #else
582774f206SBjoern A. Zeeb 
592774f206SBjoern A. Zeeb static inline void rtw_dbg(struct rtw_dev *rtwdev, enum rtw_debug_mask mask,
602774f206SBjoern A. Zeeb 			   const char *fmt, ...) {}
612774f206SBjoern A. Zeeb 
622774f206SBjoern A. Zeeb #endif /* CONFIG_RTW88_DEBUG */
632774f206SBjoern A. Zeeb 
642774f206SBjoern A. Zeeb #define rtw_info(rtwdev, a...) dev_info(rtwdev->dev, ##a)
652774f206SBjoern A. Zeeb #define rtw_warn(rtwdev, a...) dev_warn(rtwdev->dev, ##a)
662774f206SBjoern A. Zeeb #define rtw_err(rtwdev, a...) dev_err(rtwdev->dev, ##a)
672774f206SBjoern A. Zeeb 
682774f206SBjoern A. Zeeb #endif
69