Sound Open Firmware
Loading...
Searching...
No Matches
interrupt-legacy.h File Reference
Include dependency graph for interrupt-legacy.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 interrupt_is_dsp_direct(irq)
 
#define irq_local_disable(flags)    (flags = interrupt_global_disable())
 
#define irq_local_enable(flags)    interrupt_global_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

◆ 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)     (flags = interrupt_global_disable())

◆ irq_local_enable

#define irq_local_enable (   flags)     interrupt_global_enable(flags)

Function Documentation

◆ cascade_root_get()

static struct cascade_root * cascade_root_get ( void  )
inlinestatic

◆ interrupt_cascade_register()

int interrupt_cascade_register ( const struct irq_cascade_tmpl *  tmpl)

◆ interrupt_clear()

static void interrupt_clear ( int  irq)
inlinestatic

◆ interrupt_clear_mask()

static 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()

static uint32_t interrupt_global_disable ( void  )
inlinestatic

◆ interrupt_global_enable()

static 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(*)(void *arg)  handler,
void *  arg 
)

◆ interrupt_set()

static 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)