123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359 |
- #ifndef INTCTRL_IP_H_
- #define INTCTRL_IP_H_
- #include "IntCtrl_Ip_Cfg.h"
- #include "Devassert.h"
- #define PLATFORM_INTCTRL_IP_VENDOR_ID 43
- #define PLATFORM_INTCTRL_IP_SW_MAJOR_VERSION 1
- #define PLATFORM_INTCTRL_IP_SW_MINOR_VERSION 0
- #define PLATFORM_INTCTRL_IP_SW_PATCH_VERSION 0
- #if (PLATFORM_INTCTRL_IP_VENDOR_ID != PLATFORM_INTCTRL_IP_CFG_VENDOR_ID)
- #error "IntCtrl_Ip.h and IntCtrl_Ip_Cfg.h have different vendor ids"
- #endif
- #if ((PLATFORM_INTCTRL_IP_SW_MAJOR_VERSION != PLATFORM_INTCTRL_IP_CFG_SW_MAJOR_VERSION) || \
- (PLATFORM_INTCTRL_IP_SW_MINOR_VERSION != PLATFORM_INTCTRL_IP_CFG_SW_MINOR_VERSION) || \
- (PLATFORM_INTCTRL_IP_SW_PATCH_VERSION != PLATFORM_INTCTRL_IP_CFG_SW_PATCH_VERSION) \
- )
- #error "Software Version Numbers of IntCtrl_Ip.h and IntCtrl_Ip_Cfg.h are different"
- #endif
- #if defined(__cplusplus)
- extern "C" {
- #endif
- #define PLATFORM_START_SEC_CODE
- #include "Platform_MemMap.h"
- IntCtrl_Ip_StatusType IntCtrl_Ip_Init(const IntCtrl_Ip_CtrlConfigType *pIntCtrlCtrlConfig);
- #if (INT_CTRL_IP_MSCM_SYSTEM_INTERRUPT_ROUTER == STD_ON)
- IntCtrl_Ip_StatusType IntCtrl_Ip_ConfigIrqRouting(const IntCtrl_Ip_GlobalRouteConfigType *routeConfig);
- #endif
- void IntCtrl_Ip_InstallHandler(IRQn_Type eIrqNumber,
- const IntCtrl_Ip_IrqHandlerType pfNewHandler,
- IntCtrl_Ip_IrqHandlerType* const pfOldHandler);
- void IntCtrl_Ip_EnableIrq(IRQn_Type eIrqNumber);
- void IntCtrl_Ip_DisableIrq(IRQn_Type eIrqNumber);
- void IntCtrl_Ip_SetPriority(IRQn_Type eIrqNumber, uint8 u8Priority);
- uint8 IntCtrl_Ip_GetPriority(IRQn_Type eIrqNumber);
- void IntCtrl_Ip_ClearPending(IRQn_Type eIrqNumber);
- #if (INT_CTRL_IP_CORTEXR == STD_ON)
- void IntCtrl_Ip_Group1(IRQn_Type eIrqNumber);
- void IntCtrl_Ip_ConfigureSpi(IRQn_Type eIrqNumber, IntCtrl_Ip_TriggerType conf);
- void IntCtrl_Ip_SetIntTarget(IRQn_Type eIrqNumber, IntCtrl_Ip_Routing_ModeType target);
- #endif
- #if (INT_CTRL_IP_STANDALONE_APIS == STD_ON)
- void IntCtrl_Ip_SetPending(IRQn_Type eIrqNumber);
- boolean IntCtrl_Ip_GetPending(IRQn_Type eIrqNumber);
- #if !defined(S32K116) && !defined(S32K118)
- boolean IntCtrl_Ip_GetActive(IRQn_Type eIrqNumber);
- #endif
- #endif
- #if ((INT_CTRL_IP_MSCM_SYSTEM_INTERRUPT_ROUTER == STD_ON) && (INT_CTRL_IP_ROUTING_CONTROL_REGISTER == STD_ON))
- void IntCtrl_Ip_SetTargetCores(IRQn_Type eIrqNumber, uint8 u8TargetCores);
- #endif
- #if (INT_CTRL_IP_MSI_AVAILABLE == STD_ON)
- void IntCtrl_Ip_ClearDirectedCpuInterrupt(IRQn_Type eIrqNumber);
- boolean IntCtrl_Ip_GetDirectedCpuInterrupt(IRQn_Type eIrqNumber);
- void IntCtrl_Ip_GenerateDirectedCpuInterrupt(IRQn_Type eIrqNumber, IntCtrl_Ip_IrqTargetType eCpuTarget);
- #endif
- #define PLATFORM_STOP_SEC_CODE
- #include "Platform_MemMap.h"
- #if defined(__cplusplus)
- }
- #endif
- #endif
|