44 lines · 1.1 KB · C
RawDownload
/* SPDX-License-Identifier: GPL-2.0 */#ifndef _KERNEL_IRQ_DEBUGFS_H#define _KERNEL_IRQ_DEBUGFS_H #ifdef CONFIG_GENERIC_IRQ_DEBUGFS#include <linux/debugfs.h> struct irq_bit_descr {	unsigned int	mask;	char		*name;}; #define BIT_MASK_DESCR(m)	{ .mask = m, .name = #m } void irq_debug_show_bits(struct seq_file *m, int ind, unsigned int state,			 const struct irq_bit_descr *sd, int size); void irq_add_debugfs_entry(unsigned int irq, struct irq_desc *desc);static inline void irq_remove_debugfs_entry(struct irq_desc *desc){	debugfs_remove(desc->debugfs_file);	kfree(desc->dev_name);}void irq_debugfs_copy_devname(int irq, struct device *dev);# ifdef CONFIG_IRQ_DOMAINvoid irq_domain_debugfs_init(struct dentry *root);# elsestatic inline void irq_domain_debugfs_init(struct dentry *root){}# endif#else /* CONFIG_GENERIC_IRQ_DEBUGFS */static inline void irq_add_debugfs_entry(unsigned int irq, struct irq_desc *d){}static inline void irq_remove_debugfs_entry(struct irq_desc *d){}static inline void irq_debugfs_copy_devname(int irq, struct device *dev){}#endif /* CONFIG_GENERIC_IRQ_DEBUGFS */ #endif