xref: /freebsd/sys/contrib/dev/rtw88/debug.h (revision 90aac0d83bc9645f51ef0c2aeae6f9c0540bb031)
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,
269c951734SBjoern A. Zeeb 	RTW_DBG_STATE		= 0x00020000,
27*90aac0d8SBjoern A. Zeeb 	RTW_DBG_SDIO		= 0x00040000,
282774f206SBjoern A. Zeeb 
292774f206SBjoern A. Zeeb #if defined(__FreeBSD__)
302774f206SBjoern A. Zeeb 	RTW_DBG_IO_RW		= 0x80000000,
312774f206SBjoern A. Zeeb #endif
322774f206SBjoern A. Zeeb 	RTW_DBG_ALL		= 0xffffffff
332774f206SBjoern A. Zeeb };
342774f206SBjoern A. Zeeb 
352774f206SBjoern A. Zeeb #ifdef CONFIG_RTW88_DEBUGFS
362774f206SBjoern A. Zeeb 
372774f206SBjoern A. Zeeb void rtw_debugfs_init(struct rtw_dev *rtwdev);
382774f206SBjoern A. Zeeb void rtw_debugfs_get_simple_phy_info(struct seq_file *m);
392774f206SBjoern A. Zeeb 
402774f206SBjoern A. Zeeb #else
412774f206SBjoern A. Zeeb 
422774f206SBjoern A. Zeeb static inline void rtw_debugfs_init(struct rtw_dev *rtwdev) {}
432774f206SBjoern A. Zeeb 
442774f206SBjoern A. Zeeb #endif /* CONFIG_RTW88_DEBUGFS */
452774f206SBjoern A. Zeeb 
462774f206SBjoern A. Zeeb #ifdef CONFIG_RTW88_DEBUG
472774f206SBjoern A. Zeeb 
482774f206SBjoern A. Zeeb __printf(3, 4)
492774f206SBjoern A. Zeeb void __rtw_dbg(struct rtw_dev *rtwdev, enum rtw_debug_mask mask,
502774f206SBjoern A. Zeeb 	       const char *fmt, ...);
512774f206SBjoern A. Zeeb 
522774f206SBjoern A. Zeeb #if defined(__linux__)
532774f206SBjoern A. Zeeb #define rtw_dbg(rtwdev, a...) __rtw_dbg(rtwdev, ##a)
542774f206SBjoern A. Zeeb #elif defined(__FreeBSD__)
552774f206SBjoern A. Zeeb #define	rtw_dbg(rtwdev, ...)	__rtw_dbg(rtwdev, __VA_ARGS__)
562774f206SBjoern A. Zeeb #endif
572774f206SBjoern A. Zeeb 
582774f206SBjoern A. Zeeb #else
592774f206SBjoern A. Zeeb 
602774f206SBjoern A. Zeeb static inline void rtw_dbg(struct rtw_dev *rtwdev, enum rtw_debug_mask mask,
612774f206SBjoern A. Zeeb 			   const char *fmt, ...) {}
622774f206SBjoern A. Zeeb 
632774f206SBjoern A. Zeeb #endif /* CONFIG_RTW88_DEBUG */
642774f206SBjoern A. Zeeb 
652774f206SBjoern A. Zeeb #define rtw_info(rtwdev, a...) dev_info(rtwdev->dev, ##a)
662774f206SBjoern A. Zeeb #define rtw_warn(rtwdev, a...) dev_warn(rtwdev->dev, ##a)
672774f206SBjoern A. Zeeb #define rtw_err(rtwdev, a...) dev_err(rtwdev->dev, ##a)
682774f206SBjoern A. Zeeb 
692774f206SBjoern A. Zeeb #endif
70