diff options
Diffstat (limited to 'kernel/irq/chip.c')
-rw-r--r-- | kernel/irq/chip.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index 27f4332c7f84..ae216824e8ca 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c | |||
@@ -985,6 +985,23 @@ int irq_chip_set_affinity_parent(struct irq_data *data, | |||
985 | } | 985 | } |
986 | 986 | ||
987 | /** | 987 | /** |
988 | * irq_chip_set_type_parent - Set IRQ type on the parent interrupt | ||
989 | * @data: Pointer to interrupt specific data | ||
990 | * @type: IRQ_TYPE_{LEVEL,EDGE}_* value - see include/linux/irq.h | ||
991 | * | ||
992 | * Conditional, as the underlying parent chip might not implement it. | ||
993 | */ | ||
994 | int irq_chip_set_type_parent(struct irq_data *data, unsigned int type) | ||
995 | { | ||
996 | data = data->parent_data; | ||
997 | |||
998 | if (data->chip->irq_set_type) | ||
999 | return data->chip->irq_set_type(data, type); | ||
1000 | |||
1001 | return -ENOSYS; | ||
1002 | } | ||
1003 | |||
1004 | /** | ||
988 | * irq_chip_retrigger_hierarchy - Retrigger an interrupt in hardware | 1005 | * irq_chip_retrigger_hierarchy - Retrigger an interrupt in hardware |
989 | * @data: Pointer to interrupt specific data | 1006 | * @data: Pointer to interrupt specific data |
990 | * | 1007 | * |
@@ -997,7 +1014,7 @@ int irq_chip_retrigger_hierarchy(struct irq_data *data) | |||
997 | if (data->chip && data->chip->irq_retrigger) | 1014 | if (data->chip && data->chip->irq_retrigger) |
998 | return data->chip->irq_retrigger(data); | 1015 | return data->chip->irq_retrigger(data); |
999 | 1016 | ||
1000 | return -ENOSYS; | 1017 | return 0; |
1001 | } | 1018 | } |
1002 | 1019 | ||
1003 | /** | 1020 | /** |