PDK API Guide for J721E
HwiP.h File Reference

Introduction

Hardware Interrupt module for the RTOS Porting Interface.

============================================================================

The HwiP_disable/HwiP_restore APIs can be called recursively. The order of the HwiP_restore calls, must be in reversed order. For example:

uintptr_t key1, key2;
key1 = HwiP_disable();
key2 = HwiP_disable();

Go to the source code of this file.

Enumerates the types different trigger types.

#define OSAL_ARM_GIC_TRIG_TYPE_LEVEL   ((uint32_t) 1U)
 
#define OSAL_ARM_GIC_TRIG_TYPE_EDGE   ((uint32_t) 2U)
 
#define OSAL_ARM_GIC_TRIG_TYPE_HIGH_LEVEL   ((uint32_t) 3U)
 
#define OSAL_ARM_GIC_TRIG_TYPE_LOW_LEVEL   ((uint32_t) 4U)
 
#define OSAL_ARM_GIC_TRIG_TYPE_RISING_EDGE   ((uint32_t) 5U)
 
#define OSAL_ARM_GIC_TRIG_TYPE_FALLING_EDGE   ((uint32_t) 6U)
 
typedef uint32_t OSAL_armGicTrigType_t
 Enumerates the types different trigger types. Please refer to Section 4.3.13 Interrupt Configuration Registers, GICD_ICFGRn of ARM Generic Interrupt Controller Architecture version 2.0 Architecture Specification document for details. More...
 

Data Structures

struct  HwiP_Params
 Basic HwiP Parameters. More...
 

Macros

#define HWIP_USE_DEFAULT_PRIORITY   (~((uint32_t)0))
 

Typedefs

typedef void * HwiP_Handle
 Opaque client reference to an instance of a HwiP. More...
 
typedef void(* HwiP_Fxn) (uintptr_t arg)
 Prototype for the entry function for a hardware interrupt. More...
 
typedef void(* HwiP_DirectFxn) (void)
 Prototype for the entry function for a hardware interrupt registered using HwiP_createDirect. More...
 

Enumerations

enum  HwiP_Status { HwiP_OK = 0, HwiP_FAILURE = (-(int32_t)1) }
 Status codes for HwiP APIs. More...
 

Functions

void HwiP_clearInterrupt (uint32_t interruptNum)
 Function to clear a single interrupt. More...
 
HwiP_Handle HwiP_create (uint32_t interruptNum, HwiP_Fxn hwiFxn, const HwiP_Params *hwipParams)
 Function to create an interrupt on CortexM devices. More...
 
HwiP_Handle HwiP_createDirect (uint32_t interruptNum, HwiP_DirectFxn hwiFxn, const HwiP_Params *hwipParams)
 Function to create an interrupt using VIM direct registration. More...
 
HwiP_Status HwiP_delete (HwiP_Handle hwiPhandle)
 Function to delete an interrupt on CortexM devices. More...
 
uintptr_t HwiP_disable (void)
 Function to disable interrupts to enter a critical region. More...
 
void HwiP_disableInterrupt (uint32_t interruptNum)
 Function to disable a single interrupt. More...
 
void HwiP_enableInterrupt (uint32_t interruptNum)
 Function to enable a single interrupt. More...
 
void HwiP_Params_init (HwiP_Params *hwipParams)
 Initialize params structure to default values. More...
 
void HwiP_restore (uintptr_t key)
 Function to restore interrupts to exit a critical region. More...
 
HwiP_Handle HwiP_getHandle (uint32_t interruptNum)
 Function to get HwiP Handle from an interrupt number. More...
 
uint32_t HwiP_getEventId (uint32_t interruptNum)
 Function to get the eventId associated with an interrupt number. More...
 
int32_t HwiP_post (uint32_t interruptNum)
 Function to post the Hwi interrupt by software. More...