no-OS
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
no_os_irq_platform_ops Struct Reference

Structure holding IRQ function pointers that point to the platform specific function. More...

#include <no_os_irq.h>

Public Attributes

int(* init )(struct no_os_irq_ctrl_desc **desc, const struct no_os_irq_init_param *param)
 
int(* register_callback )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *callback)
 
int(* unregister_callback )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *callback)
 
int(* global_enable )(struct no_os_irq_ctrl_desc *desc)
 
int(* global_disable )(struct no_os_irq_ctrl_desc *desc)
 
int(* trigger_level_set )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, enum no_os_irq_trig_level trig)
 
int(* enable )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)
 
int(* disable )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)
 
int(* set_priority )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, uint32_t priority_level)
 
int(* get_priority )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, uint32_t *priority_level)
 
int(* remove )(struct no_os_irq_ctrl_desc *desc)
 
int(* clear_pending )(struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)
 

Detailed Description

Structure holding IRQ function pointers that point to the platform specific function.

Member Data Documentation

◆ clear_pending

int(* no_os_irq_platform_ops::clear_pending) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)

Clear pending interrupt

◆ disable

int(* no_os_irq_platform_ops::disable) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)

Disable specific interrupt

◆ enable

int(* no_os_irq_platform_ops::enable) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id)

Enable specific interrupt

◆ get_priority

int(* no_os_irq_platform_ops::get_priority) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, uint32_t *priority_level)

Get the priority level for a specific interrupt

◆ global_disable

int(* no_os_irq_platform_ops::global_disable) (struct no_os_irq_ctrl_desc *desc)

Global interrupt disable

◆ global_enable

int(* no_os_irq_platform_ops::global_enable) (struct no_os_irq_ctrl_desc *desc)

Global interrupt enable

◆ init

int(* no_os_irq_platform_ops::init) (struct no_os_irq_ctrl_desc **desc, const struct no_os_irq_init_param *param)

Initialize a interrupt controller peripheral.

◆ register_callback

int(* no_os_irq_platform_ops::register_callback) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *callback)

Register a callback to handle the irq events

◆ remove

int(* no_os_irq_platform_ops::remove) (struct no_os_irq_ctrl_desc *desc)

IRQ remove function pointer

◆ set_priority

int(* no_os_irq_platform_ops::set_priority) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, uint32_t priority_level)

Set the priority level for a specific interrupt

◆ trigger_level_set

int(* no_os_irq_platform_ops::trigger_level_set) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, enum no_os_irq_trig_level trig)

Set interrupt trigger level.

◆ unregister_callback

int(* no_os_irq_platform_ops::unregister_callback) (struct no_os_irq_ctrl_desc *desc, uint32_t irq_id, struct no_os_callback_desc *callback)

Unregisters a generic IRQ handling function


The documentation for this struct was generated from the following file: