Sound Open Firmware
Loading...
Searching...
No Matches
interrupt.h File Reference
Include dependency graph for interrupt.h:

Go to the source code of this file.

Data Structures

struct  irq_child
 child IRQ descriptor for cascading IRQ controllers. More...
struct  irq_desc
 interrupt client descriptor More...
struct  irq_cascade_ops
 cascading IRQ controller operations. More...
struct  irq_cascade_desc
 cascading interrupt controller descriptor. More...
struct  irq_cascade_tmpl
struct  cascade_root
 Cascading interrupt controller root. More...

Macros

#define arch_irq_lock()
#define interrupt_is_dsp_direct(irq)
#define irq_local_disable(flags)
#define irq_local_enable(flags)

Functions

static struct cascade_root * cascade_root_get (void)
int interrupt_register (uint32_t irq, void(*handler)(void *arg), void *arg)
void interrupt_unregister (uint32_t irq, const void *arg)
uint32_t interrupt_enable (uint32_t irq, void *arg)
uint32_t interrupt_disable (uint32_t irq, void *arg)
void platform_interrupt_init (void)
void platform_interrupt_set (uint32_t irq)
void platform_interrupt_clear (uint32_t irq, uint32_t mask)
uint32_t platform_interrupt_get_enabled (void)
void interrupt_mask (uint32_t irq, unsigned int cpu)
void interrupt_unmask (uint32_t irq, unsigned int cpu)
void interrupt_init (struct sof *sof)
int interrupt_cascade_register (const struct irq_cascade_tmpl *tmpl)
struct irq_cascade_desc * interrupt_get_parent (uint32_t irq)
int interrupt_get_irq (unsigned int irq, const char *cascade)
static void interrupt_set (int irq)
static void interrupt_clear_mask (int irq, uint32_t mask)
static void interrupt_clear (int irq)
static uint32_t interrupt_global_disable (void)
static void interrupt_global_enable (uint32_t flags)

Macro Definition Documentation

◆ arch_irq_lock

#define arch_irq_lock ( )
Value:
arch_interrupt_disable_mask(0xffffffff)

◆ interrupt_is_dsp_direct

#define interrupt_is_dsp_direct ( irq)
Value:
(!PLATFORM_IRQ_CHILDREN || \
irq < PLATFORM_IRQ_HW_NUM)

◆ irq_local_disable

#define irq_local_disable ( flags)
Value:
static uint32_t interrupt_global_disable(void)
Definition interrupt.h:178

◆ irq_local_enable

#define irq_local_enable ( flags)
Value:
static void interrupt_global_enable(uint32_t flags)
Definition interrupt.h:183

Function Documentation

◆ cascade_root_get()

struct cascade_root * cascade_root_get ( void )
inlinestatic

◆ interrupt_cascade_register()

int interrupt_cascade_register ( const struct irq_cascade_tmpl * tmpl)

◆ interrupt_clear()

void interrupt_clear ( int irq)
inlinestatic

◆ interrupt_clear_mask()

void interrupt_clear_mask ( int irq,
uint32_t mask )
inlinestatic

◆ interrupt_disable()

uint32_t interrupt_disable ( uint32_t irq,
void * arg )

◆ interrupt_enable()

uint32_t interrupt_enable ( uint32_t irq,
void * arg )

◆ interrupt_get_irq()

int interrupt_get_irq ( unsigned int irq,
const char * cascade )

◆ interrupt_get_parent()

struct irq_cascade_desc * interrupt_get_parent ( uint32_t irq)

◆ interrupt_global_disable()

uint32_t interrupt_global_disable ( void )
inlinestatic

◆ interrupt_global_enable()

void interrupt_global_enable ( uint32_t flags)
inlinestatic

◆ interrupt_init()

void interrupt_init ( struct sof * sof)

◆ interrupt_mask()

void interrupt_mask ( uint32_t irq,
unsigned int cpu )

◆ interrupt_register()

int interrupt_register ( uint32_t irq,
void(* handler )(void *arg),
void * arg )

◆ interrupt_set()

void interrupt_set ( int irq)
inlinestatic

◆ interrupt_unmask()

void interrupt_unmask ( uint32_t irq,
unsigned int cpu )

◆ interrupt_unregister()

void interrupt_unregister ( uint32_t irq,
const void * arg )

◆ platform_interrupt_clear()

void platform_interrupt_clear ( uint32_t irq,
uint32_t mask )

◆ platform_interrupt_get_enabled()

uint32_t platform_interrupt_get_enabled ( void )

◆ platform_interrupt_init()

void platform_interrupt_init ( void )

◆ platform_interrupt_set()

void platform_interrupt_set ( uint32_t irq)