Zephyr API Documentation 4.2.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
intc_nxp_siul2_eirq.h File Reference

Go to the source code of this file.

Typedefs

typedef void(* nxp_siul2_eirq_callback_t) (uint8_t pin, void *arg)
 Driver for NXP SIUL2 external interrupt/event controller.

Enumerations

enum  nxp_siul2_eirq_trigger { NXP_SIUl2_EIRQ_RISING_EDGE , NXP_SIUl2_EIRQ_FALLING_EDGE , NXP_SIUl2_EIRQ_BOTH_EDGES }
 NXP SIUL2 EIRQ pin activation type. More...

Functions

void nxp_siul2_eirq_unset_callback (const struct device *dev, uint8_t irq)
 Unset interrupt callback.
int nxp_siul2_eirq_set_callback (const struct device *dev, uint8_t irq, uint8_t pin, nxp_siul2_eirq_callback_t cb, void *arg)
 Set callback for an interrupt associated with a given pin.
void nxp_siul2_eirq_enable_interrupt (const struct device *dev, uint8_t irq, enum nxp_siul2_eirq_trigger trigger)
 Enable interrupt on a given trigger event.
void nxp_siul2_eirq_disable_interrupt (const struct device *dev, uint8_t irq)
 Disable interrupt.
uint32_t nxp_siul2_eirq_get_pending (const struct device *dev)
 Get pending interrupts.

Typedef Documentation

◆ nxp_siul2_eirq_callback_t

typedef void(* nxp_siul2_eirq_callback_t) (uint8_t pin, void *arg)

Driver for NXP SIUL2 external interrupt/event controller.

NXP SIUL2 EIRQ callback

Enumeration Type Documentation

◆ nxp_siul2_eirq_trigger

NXP SIUL2 EIRQ pin activation type.

Enumerator
NXP_SIUl2_EIRQ_RISING_EDGE 

Interrupt triggered on rising edge.

NXP_SIUl2_EIRQ_FALLING_EDGE 

Interrupt triggered on falling edge.

NXP_SIUl2_EIRQ_BOTH_EDGES 

Interrupt triggered on either edge.

Function Documentation

◆ nxp_siul2_eirq_disable_interrupt()

void nxp_siul2_eirq_disable_interrupt ( const struct device * dev,
uint8_t irq )

Disable interrupt.

Parameters
devSIUL2 EIRQ device
irqinterrupt number

◆ nxp_siul2_eirq_enable_interrupt()

void nxp_siul2_eirq_enable_interrupt ( const struct device * dev,
uint8_t irq,
enum nxp_siul2_eirq_trigger trigger )

Enable interrupt on a given trigger event.

Parameters
devSIUL2 EIRQ device
irqinterrupt number
triggertrigger event

◆ nxp_siul2_eirq_get_pending()

uint32_t nxp_siul2_eirq_get_pending ( const struct device * dev)

Get pending interrupts.

Parameters
devSIUL2 EIRQ device
Returns
A bitmask containing pending pending interrupts

◆ nxp_siul2_eirq_set_callback()

int nxp_siul2_eirq_set_callback ( const struct device * dev,
uint8_t irq,
uint8_t pin,
nxp_siul2_eirq_callback_t cb,
void * arg )

Set callback for an interrupt associated with a given pin.

Parameters
devSIUL2 EIRQ device
irqinterrupt number
pinGPIO pin associated with the interrupt
cbcallback to install
arguser data to include in callback
Return values
0on success
-EBUSYif callback for the interrupt is already set

◆ nxp_siul2_eirq_unset_callback()

void nxp_siul2_eirq_unset_callback ( const struct device * dev,
uint8_t irq )

Unset interrupt callback.

Parameters
devSIUL2 EIRQ device
irqinterrupt number