diff options
Diffstat (limited to 'kernel/irq/internals.h')
-rw-r--r-- | kernel/irq/internals.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h index 44ed5f8c8759..07d08ca701ec 100644 --- a/kernel/irq/internals.h +++ b/kernel/irq/internals.h | |||
@@ -75,6 +75,8 @@ extern void __enable_irq(struct irq_desc *desc); | |||
75 | #define IRQ_START_FORCE true | 75 | #define IRQ_START_FORCE true |
76 | #define IRQ_START_COND false | 76 | #define IRQ_START_COND false |
77 | 77 | ||
78 | extern int irq_activate(struct irq_desc *desc); | ||
79 | extern void irq_activate_and_startup(struct irq_desc *desc, bool resend); | ||
78 | extern int irq_startup(struct irq_desc *desc, bool resend, bool force); | 80 | extern int irq_startup(struct irq_desc *desc, bool resend, bool force); |
79 | 81 | ||
80 | extern void irq_shutdown(struct irq_desc *desc); | 82 | extern void irq_shutdown(struct irq_desc *desc); |
@@ -437,6 +439,18 @@ static inline bool irq_fixup_move_pending(struct irq_desc *desc, bool fclear) | |||
437 | } | 439 | } |
438 | #endif /* !CONFIG_GENERIC_PENDING_IRQ */ | 440 | #endif /* !CONFIG_GENERIC_PENDING_IRQ */ |
439 | 441 | ||
442 | #if !defined(CONFIG_IRQ_DOMAIN) || !defined(CONFIG_IRQ_DOMAIN_HIERARCHY) | ||
443 | static inline int irq_domain_activate_irq(struct irq_data *data, bool early) | ||
444 | { | ||
445 | irqd_set_activated(data); | ||
446 | return 0; | ||
447 | } | ||
448 | static inline void irq_domain_deactivate_irq(struct irq_data *data) | ||
449 | { | ||
450 | irqd_clr_activated(data); | ||
451 | } | ||
452 | #endif | ||
453 | |||
440 | #ifdef CONFIG_GENERIC_IRQ_DEBUGFS | 454 | #ifdef CONFIG_GENERIC_IRQ_DEBUGFS |
441 | #include <linux/debugfs.h> | 455 | #include <linux/debugfs.h> |
442 | 456 | ||
@@ -444,7 +458,9 @@ void irq_add_debugfs_entry(unsigned int irq, struct irq_desc *desc); | |||
444 | static inline void irq_remove_debugfs_entry(struct irq_desc *desc) | 458 | static inline void irq_remove_debugfs_entry(struct irq_desc *desc) |
445 | { | 459 | { |
446 | debugfs_remove(desc->debugfs_file); | 460 | debugfs_remove(desc->debugfs_file); |
461 | kfree(desc->dev_name); | ||
447 | } | 462 | } |
463 | void irq_debugfs_copy_devname(int irq, struct device *dev); | ||
448 | # ifdef CONFIG_IRQ_DOMAIN | 464 | # ifdef CONFIG_IRQ_DOMAIN |
449 | void irq_domain_debugfs_init(struct dentry *root); | 465 | void irq_domain_debugfs_init(struct dentry *root); |
450 | # else | 466 | # else |
@@ -459,4 +475,7 @@ static inline void irq_add_debugfs_entry(unsigned int irq, struct irq_desc *d) | |||
459 | static inline void irq_remove_debugfs_entry(struct irq_desc *d) | 475 | static inline void irq_remove_debugfs_entry(struct irq_desc *d) |
460 | { | 476 | { |
461 | } | 477 | } |
478 | static inline void irq_debugfs_copy_devname(int irq, struct device *dev) | ||
479 | { | ||
480 | } | ||
462 | #endif /* CONFIG_GENERIC_IRQ_DEBUGFS */ | 481 | #endif /* CONFIG_GENERIC_IRQ_DEBUGFS */ |