xref: /openbmc/linux/drivers/scsi/fcoe/libfcoe.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
221b7b2f5SYi Zou #ifndef _FCOE_LIBFCOE_H_
321b7b2f5SYi Zou #define _FCOE_LIBFCOE_H_
421b7b2f5SYi Zou 
521b7b2f5SYi Zou extern unsigned int libfcoe_debug_logging;
621b7b2f5SYi Zou #define LIBFCOE_LOGGING	          0x01 /* General logging, not categorized */
721b7b2f5SYi Zou #define LIBFCOE_FIP_LOGGING       0x02 /* FIP logging */
8fdecf31bSYi Zou #define LIBFCOE_TRANSPORT_LOGGING 0x04 /* FCoE transport logging */
93993de61SRobert Love #define LIBFCOE_SYSFS_LOGGING     0x08 /* fcoe_sysfs logging */
1021b7b2f5SYi Zou 
1121b7b2f5SYi Zou #define LIBFCOE_CHECK_LOGGING(LEVEL, CMD)		\
1221b7b2f5SYi Zou do {							\
1321b7b2f5SYi Zou 	if (unlikely(libfcoe_debug_logging & LEVEL))	\
1421b7b2f5SYi Zou 		do {					\
1521b7b2f5SYi Zou 			CMD;				\
1621b7b2f5SYi Zou 		} while (0);				\
1721b7b2f5SYi Zou } while (0)
1821b7b2f5SYi Zou 
1921b7b2f5SYi Zou #define LIBFCOE_DBG(fmt, args...)					\
2021b7b2f5SYi Zou 	LIBFCOE_CHECK_LOGGING(LIBFCOE_LOGGING,				\
218e6c5363SRobert Love 			      pr_info("libfcoe: " fmt, ##args);)
2221b7b2f5SYi Zou 
2321b7b2f5SYi Zou #define LIBFCOE_FIP_DBG(fip, fmt, args...)				\
2421b7b2f5SYi Zou 	LIBFCOE_CHECK_LOGGING(LIBFCOE_FIP_LOGGING,			\
258e6c5363SRobert Love 			      pr_info("host%d: fip: " fmt,		\
2621b7b2f5SYi Zou 				      (fip)->lp->host->host_no, ##args);)
2721b7b2f5SYi Zou 
28fdecf31bSYi Zou #define LIBFCOE_TRANSPORT_DBG(fmt, args...)				\
29fdecf31bSYi Zou 	LIBFCOE_CHECK_LOGGING(LIBFCOE_TRANSPORT_LOGGING,		\
308e6c5363SRobert Love 			      pr_info("%s: " fmt, __func__, ##args);)
31fdecf31bSYi Zou 
323993de61SRobert Love #define LIBFCOE_SYSFS_DBG(cdev, fmt, args...)				\
333993de61SRobert Love 	LIBFCOE_CHECK_LOGGING(LIBFCOE_SYSFS_LOGGING,			\
343993de61SRobert Love 			      pr_info("ctlr_%d: " fmt, cdev->id, ##args);)
353993de61SRobert Love 
3621b7b2f5SYi Zou #endif /* _FCOE_LIBFCOE_H_ */
37