xref: /openbmc/linux/arch/s390/include/asm/pci_debug.h (revision 9d749629)
1 #ifndef _S390_ASM_PCI_DEBUG_H
2 #define _S390_ASM_PCI_DEBUG_H
3 
4 #include <asm/debug.h>
5 
6 extern debug_info_t *pci_debug_msg_id;
7 extern debug_info_t *pci_debug_err_id;
8 
9 #ifdef CONFIG_PCI_DEBUG
10 #define zpci_dbg(fmt, args...)							\
11 	do {									\
12 		if (pci_debug_msg_id->level >= 2)				\
13 			debug_sprintf_event(pci_debug_msg_id, 2, fmt , ## args);\
14 	} while (0)
15 
16 #else /* !CONFIG_PCI_DEBUG */
17 #define zpci_dbg(fmt, args...) do { } while (0)
18 #endif
19 
20 #define zpci_err(text...)							\
21 	do {									\
22 		char debug_buffer[16];						\
23 		snprintf(debug_buffer, 16, text);				\
24 		debug_text_event(pci_debug_err_id, 0, debug_buffer);		\
25 	} while (0)
26 
27 static inline void zpci_err_hex(void *addr, int len)
28 {
29 	while (len > 0) {
30 		debug_event(pci_debug_err_id, 0, (void *) addr, len);
31 		len -= pci_debug_err_id->buf_size;
32 		addr += pci_debug_err_id->buf_size;
33 	}
34 }
35 
36 #endif
37