Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

struct_irq_chip_generic(9) [centos man page]

STRUCT 
IRQ_CHIP_GENE(9) Structures STRUCT IRQ_CHIP_GENE(9) NAME
struct_irq_chip_generic - Generic irq chip data structure SYNOPSIS
struct irq_chip_generic { raw_spinlock_t lock; void __iomem * reg_base; unsigned int irq_base; unsigned int irq_cnt; u32 mask_cache; u32 type_cache; u32 polarity_cache; u32 wake_enabled; u32 wake_active; unsigned int num_ct; void * private; struct list_head list; struct irq_chip_type chip_types[0]; }; MEMBERS
lock Lock to protect register and cache data access reg_base Register base address (virtual) irq_base Interrupt base nr for this chip irq_cnt Number of interrupts handled by this chip mask_cache Cached mask register type_cache Cached type register polarity_cache Cached polarity register wake_enabled Interrupt can wakeup from suspend wake_active Interrupt is marked as an wakeup from suspend source num_ct Number of available irq_chip_type instances (usually 1) private Private data for non generic chip callbacks list List head for keeping track of instances chip_types[0] Array of interrupt irq_chip_types DESCRIPTION
Note, that irq_chip_generic can have multiple irq_chip_type implementations which can be associated to a particular irq line of an irq_chip_generic instance. That allows to share and protect state in an irq_chip_generic instance when we need to implement different flow mechanisms (level/edge) for it. AUTHORS
Thomas Gleixner <tglx@linutronix.de> Author. Ingo Molnar <mingo@elte.hu> Author. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 STRUCT IRQ_CHIP_GENE(9)

Check Out this Related Man Page

STRUCT 
IRQ_DESC(9) Structures STRUCT IRQ_DESC(9) NAME
struct_irq_desc - interrupt descriptor SYNOPSIS
struct irq_desc { unsigned int irq; struct timer_rand_state * timer_rand_state; unsigned int * kstat_irqs; #ifdef CONFIG_INTR_REMAP struct irq_2_iommu * irq_2_iommu; #endif irq_flow_handler_t handle_irq; struct irq_chip * chip; struct msi_desc * msi_desc; void * handler_data; void * chip_data; struct irqaction * action; unsigned int status; unsigned int depth; unsigned int wake_depth; unsigned int irq_count; unsigned long last_unhandled; unsigned int irqs_unhandled; raw_spinlock_t lock; #ifdef CONFIG_SMP cpumask_var_t affinity; unsigned int node; #ifdef CONFIG_GENERIC_PENDING_IRQ cpumask_var_t pending_mask; #endif #endif atomic_t threads_active; wait_queue_head_t wait_for_threads; #ifdef CONFIG_PROC_FS struct proc_dir_entry * dir; #endif const char * name; }; MEMBERS
irq interrupt number for this descriptor timer_rand_state pointer to timer rand state struct kstat_irqs irq stats per cpu irq_2_iommu iommu with this irq handle_irq highlevel irq-events handler [if NULL, __do_IRQ] chip low level interrupt hardware access msi_desc MSI descriptor handler_data per-IRQ data for the irq_chip methods chip_data platform-specific per-chip private data for the chip methods, to allow shared chip implementations action the irq action chain status status information depth disable-depth, for nested irq_disable calls wake_depth enable depth, for multiple set_irq_wake callers irq_count stats field to detect stalled irqs last_unhandled aging timer for unhandled count irqs_unhandled stats field for spurious unhandled interrupts lock locking for SMP affinity IRQ affinity on SMP node node index useful for balancing pending_mask pending rebalanced interrupts threads_active number of irqaction threads currently running wait_for_threads wait queue for sync_irq to wait for threaded handlers dir /proc/irq/ procfs entry name flow handler name for /proc/interrupts output AUTHORS
Thomas Gleixner <tglx@linutronix.de> Author. Ingo Molnar <mingo@elte.hu> Author. COPYRIGHT
Kernel Hackers Manual 2.6. July 2010 STRUCT IRQ_DESC(9)
Man Page