Function Report

Linux Kernel (v4.4)

Source File:kernel\irq\manage.c Create Date:2016-01-14 10:58:45
Last Modify:2016-01-11 07:01:32 Copyright©Brick
home page Tree
Annotate the kernelChinese

Function Name:__irq_set_trigger

Function:int __irq_set_trigger(struct irq_desc *desc, unsigned long flags)

Return Type:int


Type Parameter NameRemarks
struct irq_desc * desc
unsigned long flags

Function description:

644  *chip = low level interrupt hardware access
645  unmask = 0
647  If !chip || ! set the flow type(IRQ_TYPE_LEVEL/etc.) of an IRQ then
654  dynamic_pr_debug() uses pr_fmt() internally so we don't need it here
655  Returning 0
658  flags &= Mask for all the above bits
660  If chip specific flags & Mask before calling chip.irq_set_type() then
661  If !irqd_irq_masked( &Interrupt descriptor) then mask_irq(Interrupt descriptor)
663  If !irqd_irq_disabled( &Interrupt descriptor) then unmask = 1
668  ret = set the flow type(IRQ_TYPE_LEVEL/etc.) of an IRQ
671  Case :ret == core updates irq_data.affinity
686  ret = 0
687  Break.
688  Default:
690  pr_err
692  If unmask then unmask_irq(Interrupt descriptor)
694  Returning ret
Function NameFunction description
__setup_irqregister an interrupt
irq_set_irq_typeirq_set_type- set the irq trigger type for an irq