9#ifndef __OSAL_INTERRUPT_H__
10#define __OSAL_INTERRUPT_H__
19#define OSAL_CPU_0 (1 << 1)
20#define OSAL_CPU_1 (1 << 2)
21#define OSAL_CPU_2 (1 << 3)
22#define OSAL_CPU_3 (1 << 4)
26 void (*handler)(
unsigned long data);
int osal_tasklet_init(osal_tasklet *tasklet)
initialize tasklet.
Definition osal_interrupt.c:159
void * osal_irq_get_private_dev(void *param_dev)
get irq_handler dev.
Definition osal_interrupt.c:33
unsigned int osal_irq_clear(unsigned int vector)
Clear the pending status of other interrupts.
Definition osal_interrupt.c:148
unsigned int osal_irq_lock(void)
Disable all interrupts.
Definition osal_interrupt.c:110
void osal_irq_restore(unsigned int irq_status)
Restore interrupts.
Definition osal_interrupt.c:130
int osal_tasklet_schedule(osal_tasklet *tasklet)
schedule tasklet.
Definition osal_interrupt.c:178
void osal_irq_disable(unsigned int irq)
disable an irq and wait for completion.
Definition osal_interrupt.c:104
int osal_irq_request(unsigned int irq, osal_irq_handler handler, osal_irq_handler thread_fn, const char *name, void *dev)
alloc an interrupt line.
Definition osal_interrupt.c:42
void osal_irq_free(unsigned int irq, void *dev)
free an interrupt allocd with request_irq.
Definition osal_interrupt.c:64
int osal_tasklet_update(osal_tasklet *tasklet)
Update tasklet.
Definition osal_interrupt.c:169
int osal_tasklet_kill(osal_tasklet *tasklet)
Close tasklet.
Definition osal_interrupt.c:185
int osal_irq_set_priority(unsigned int irq, unsigned short priority)
Set interrupts priority.
Definition osal_interrupt.c:139
int osal_in_interrupt(void)
Check whether the current interrupt is in interrupt.
Definition osal_interrupt.c:78
unsigned int osal_irq_unlock(void)
Enable all interrupts.
Definition osal_interrupt.c:120
void osal_irq_enable(unsigned int irq)
enable handling of an irq.
Definition osal_interrupt.c:83
int osal_irq_set_affinity(unsigned int irq, const char *name, int cpu_mask)
Setting the CPU Affinity of Interrupts.
Definition osal_interrupt.c:73
int(* osal_irq_handler)(int, void *)
Definition osal_interrupt.h:35
osal_irqreturn
Definition osal_interrupt.h:30
@ OSAL_IRQ_NONE
Definition osal_interrupt.h:31
@ OSAL_IRQ_HANDLED
Definition osal_interrupt.h:32
@ OSAL_IRQ_WAKE_THREAD
Definition osal_interrupt.h:33
Definition osal_interrupt.h:24
unsigned long data
Definition osal_interrupt.h:27
void * tasklet
Definition osal_interrupt.h:25
Definition hal_uart_v151_regs_def.h:38