Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\irq\generic-chip.c Create Date:2022-07-28 10:12:56
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:q_setup_generic_chip - Setup a range of interrupts with a generic chip*@gc: Generic irq chip holding all data*@msk: Bitmask holding the irqs to initialize relative to gc->irq_base*@flags: Flags for initialization*@clr: IRQ_* bits to clear*@set: IRQ_* bits

Proto:void irq_setup_generic_chip(struct irq_chip_generic *gc, unsigned int msk, enum irq_gc_flags flags, unsigned int clr, unsigned int set)

Type:void

Parameter:

TypeParameterName
struct irq_chip_generic *gc
unsigned intmsk
enum irq_gc_flagsflags
unsigned intclr
unsigned intset
470  ct = chip_types
471  chip = chip
474  raw_spin_lock( & gc_lock)
475  list_add_tail - add a new entry*@new: new entry to be added*@head: list head to add it before* Insert a new entry before the specified head.* This is useful for implementing queues.
476  raw_spin_unlock( & gc_lock)
478  irq_gc_init_mask_cache(gc, flags)
480  When msk cycle
481  If Not (msk & 0x01) Then Continue
484  If flags & IRQ_GC_INIT_NESTED_LOCK Then irq_set_lockdep_class(i, & Separate lockdep classes for interrupt chip which can nest irq_desc* lock and request mutex., & irq_nested_request_class)
488  If Not (flags & IRQ_GC_NO_MASK) Then
489  d = irq_get_irq_data(i)
491  If irq_calc_mask Then irq_calc_mask(d)
493  Else mask = 1 << i - irq_base
496  irq_set_chip_and_handler(i, chip, handler)
497  q_set_chip_data - set irq chip data for an irq*@irq: Interrupt number*@data: Pointer to chip specific data* Set the hardware irq chip data for an irq
498  irq_modify_status(i, clr, set)
500  irq_cnt = i - irq_base