![]() |
NMSIS-Core
Version 1.4.1
NMSIS-Core support for Nuclei processor-based devices
|
Functions that manage interrupts via the PLIC. More...
Functions | |
| __STATIC_FORCEINLINE void | PLIC_SetContextThreshold (uint32_t ctxid, uint32_t thresh) |
| Set priority threshold value of plic for selected context. More... | |
| __STATIC_FORCEINLINE uint32_t | PLIC_GetContextThreshold (uint32_t ctxid) |
| Get priority threshold value of plic for selected context. More... | |
| __STATIC_FORCEINLINE void | PLIC_EnableContextInterrupt (uint32_t ctxid, uint32_t source) |
| Enable interrupt of selected source plic for selected context. More... | |
| __STATIC_FORCEINLINE void | PLIC_DisableContextInterrupt (uint32_t ctxid, uint32_t source) |
| Disable interrupt of selected source plic for selected context. More... | |
| __STATIC_FORCEINLINE uint32_t | PLIC_GetContextInterruptEnable (uint32_t ctxid, uint32_t source) |
| Get interrupt enable status of selected source plic for selected context. More... | |
| __STATIC_FORCEINLINE void | PLIC_SetInterruptPending (uint32_t source) |
| Set interrupt pending of selected source plic. More... | |
| __STATIC_FORCEINLINE void | PLIC_ClearInterruptPending (uint32_t source) |
| Clear interrupt pending of selected source plic. More... | |
| __STATIC_FORCEINLINE uint32_t | PLIC_GetInterruptPending (uint32_t source) |
| Get interrupt pending status of selected source plic. More... | |
| __STATIC_FORCEINLINE void | PLIC_SetPriority (uint32_t source, uint32_t priority) |
| Set interrupt priority for selected source plic. More... | |
| __STATIC_FORCEINLINE uint32_t | PLIC_GetPriority (uint32_t source) |
| Get interrupt priority for selected source plic. More... | |
| __STATIC_FORCEINLINE uint32_t | PLIC_ClaimContextInterrupt (uint32_t ctxid) |
| Claim interrupt for plic for selected context. More... | |
| __STATIC_FORCEINLINE void | PLIC_CompleteContextInterrupt (uint32_t ctxid, uint32_t source) |
| Complete interrupt for plic for selected context. More... | |
| __STATIC_INLINE void | PLIC_Context_Init (uint32_t ctxid, uint32_t num_sources, uint32_t enable, uint32_t thresh) |
| Perform init for plic for selected context. More... | |
| __STATIC_FORCEINLINE void | __set_trap_entry (rv_csr_t addr) |
| Set Trap entry address. More... | |
| __STATIC_FORCEINLINE rv_csr_t | __get_trap_entry (void) |
| Get trap entry address. More... | |
Functions that manage interrupts via the PLIC.
| #define PLIC_ClaimInterrupt | ( | ) | PLIC_ClaimContextInterrupt(PLIC_GetHartMContextID()) |
Definition at line 368 of file core_feature_plic.h.
| #define PLIC_ClaimInterrupt_S | ( | ) | PLIC_ClaimContextInterrupt(PLIC_GetHartSContextID()) |
Definition at line 369 of file core_feature_plic.h.
| #define PLIC_CompleteInterrupt | ( | source | ) | PLIC_CompleteContextInterrupt(PLIC_GetHartMContextID(), (source)) |
Definition at line 371 of file core_feature_plic.h.
| #define PLIC_CompleteInterrupt_S | ( | source | ) | PLIC_CompleteContextInterrupt(PLIC_GetHartSContextID(), (source)) |
Definition at line 372 of file core_feature_plic.h.
| #define PLIC_DisableInterrupt | ( | source | ) | PLIC_DisableContextInterrupt(PLIC_GetHartMContextID(), (source)) |
Definition at line 380 of file core_feature_plic.h.
| #define PLIC_DisableInterrupt_S | ( | source | ) | PLIC_DisableContextInterrupt(PLIC_GetHartSContextID(), (source)) |
Definition at line 381 of file core_feature_plic.h.
| #define PLIC_EnableInterrupt | ( | source | ) | PLIC_EnableContextInterrupt(PLIC_GetHartMContextID(), (source)) |
Definition at line 377 of file core_feature_plic.h.
| #define PLIC_EnableInterrupt_S | ( | source | ) | PLIC_EnableContextInterrupt(PLIC_GetHartSContextID(), (source)) |
Definition at line 378 of file core_feature_plic.h.
| #define PLIC_GetInterruptEnable | ( | source | ) | PLIC_GetContextInterruptEnable(PLIC_GetHartMContextID(), (source)) |
Definition at line 374 of file core_feature_plic.h.
| #define PLIC_GetInterruptEnable_S | ( | source | ) | PLIC_GetContextInterruptEnable(PLIC_GetHartSContextID(), (source)) |
Definition at line 375 of file core_feature_plic.h.
| #define PLIC_GetThreshold | ( | ) | PLIC_GetContextThreshold(PLIC_GetHartMContextID()) |
Definition at line 386 of file core_feature_plic.h.
| #define PLIC_GetThreshold_S | ( | ) | PLIC_GetContextThreshold(PLIC_GetHartSContextID()) |
Definition at line 387 of file core_feature_plic.h.
| #define PLIC_Init | ( | num_sources, | |
| enable, | |||
| thresh | |||
| ) | PLIC_Context_Init(PLIC_GetHartMContextID(), (num_sources), (enable), (thresh)) |
Definition at line 365 of file core_feature_plic.h.
| #define PLIC_Init_S | ( | num_sources, | |
| enable, | |||
| thresh | |||
| ) | PLIC_Context_Init(PLIC_GetHartSContextID(), (num_sources), (enable), (thresh)) |
Definition at line 366 of file core_feature_plic.h.
| #define PLIC_SetThreshold | ( | source, | |
| thresh | |||
| ) | PLIC_SetContextThreshold(PLIC_GetHartMContextID(), (source), (thresh)) |
Definition at line 383 of file core_feature_plic.h.
| #define PLIC_SetThreshold_S | ( | source, | |
| thresh | |||
| ) | PLIC_SetContextThreshold(PLIC_GetHartSContextID(), (source), (thresh)) |
Definition at line 384 of file core_feature_plic.h.
| __STATIC_FORCEINLINE rv_csr_t __get_trap_entry | ( | void | ) |
Get trap entry address.
This function get trap entry address from 'CSR_MTVEC'.
Definition at line 415 of file core_feature_plic.h.
References __RV_CSR_READ, and CSR_MTVEC.
| __STATIC_FORCEINLINE void __set_trap_entry | ( | rv_csr_t | addr | ) |
Set Trap entry address.
This function set trap entry address to 'CSR_MTVEC'.
| [in] | addr | trap entry address |
Definition at line 399 of file core_feature_plic.h.
References __RV_CSR_WRITE, and CSR_MTVEC.
| __STATIC_FORCEINLINE uint32_t PLIC_ClaimContextInterrupt | ( | uint32_t | ctxid | ) |
Claim interrupt for plic for selected context.
This function claim interrupt for plic for selected context.
| [in] | ctxid | selected context id |
Definition at line 308 of file core_feature_plic.h.
References PLIC_CLAIM_REGADDR.
| __STATIC_FORCEINLINE void PLIC_ClearInterruptPending | ( | uint32_t | source | ) |
Clear interrupt pending of selected source plic.
This function clear interrupt pending of selected source plic
| [in] | source | interrupt source |
Definition at line 231 of file core_feature_plic.h.
References PLIC_PENDING_REGADDR.
| __STATIC_FORCEINLINE void PLIC_CompleteContextInterrupt | ( | uint32_t | ctxid, |
| uint32_t | source | ||
| ) |
Complete interrupt for plic for selected context.
This function complete interrupt for plic for selected context.
| [in] | ctxid | selected context id |
Definition at line 332 of file core_feature_plic.h.
References PLIC_COMPLETE_REGADDR.
| __STATIC_INLINE void PLIC_Context_Init | ( | uint32_t | ctxid, |
| uint32_t | num_sources, | ||
| uint32_t | enable, | ||
| uint32_t | thresh | ||
| ) |
Perform init for plic for selected context.
This function perform initialization steps for plic for selected context.
| [in] | ctxid | selected context id |
| [in] | num_sources | plic interrupt source count number |
| [in] | enable | plic interrupt enable or not |
| [in] | thresh | plic interrupt threshold |
Definition at line 351 of file core_feature_plic.h.
References PLIC_DisableContextInterrupt(), PLIC_EnableContextInterrupt(), and PLIC_SetContextThreshold().
| __STATIC_FORCEINLINE void PLIC_DisableContextInterrupt | ( | uint32_t | ctxid, |
| uint32_t | source | ||
| ) |
Disable interrupt of selected source plic for selected context.
This function disable interrupt of selected source plic for selected context
| [in] | ctxid | selected context id |
| [in] | source | interrupt source |
Definition at line 172 of file core_feature_plic.h.
References PLIC_ENABLE_REGADDR.
Referenced by PLIC_Context_Init().
| __STATIC_FORCEINLINE void PLIC_EnableContextInterrupt | ( | uint32_t | ctxid, |
| uint32_t | source | ||
| ) |
Enable interrupt of selected source plic for selected context.
This function enable interrupt of selected source plic for selected context.
| [in] | ctxid | selected context id |
| [in] | source | interrupt source |
Definition at line 153 of file core_feature_plic.h.
References PLIC_ENABLE_REGADDR.
Referenced by PLIC_Context_Init().
| __STATIC_FORCEINLINE uint32_t PLIC_GetContextInterruptEnable | ( | uint32_t | ctxid, |
| uint32_t | source | ||
| ) |
Get interrupt enable status of selected source plic for selected context.
This function get interrupt enable of selected source plic for selected context.
| [in] | ctxid | selected context id |
| [in] | source | interrupt source |
Definition at line 193 of file core_feature_plic.h.
References PLIC_ENABLE_REGADDR.
| __STATIC_FORCEINLINE uint32_t PLIC_GetContextThreshold | ( | uint32_t | ctxid | ) |
Get priority threshold value of plic for selected context.
This function get priority threshold value of plic for selected context.
| [in] | ctxid | selected context id |
Definition at line 136 of file core_feature_plic.h.
References PLIC_THRESHOLD_REGADDR.
| __STATIC_FORCEINLINE uint32_t PLIC_GetInterruptPending | ( | uint32_t | source | ) |
Get interrupt pending status of selected source plic.
This function get interrupt pending of selected source plic
| [in] | source | interrupt source |
Definition at line 251 of file core_feature_plic.h.
References PLIC_PENDING_REGADDR.
| __STATIC_FORCEINLINE uint32_t PLIC_GetPriority | ( | uint32_t | source | ) |
Get interrupt priority for selected source plic.
This function get interrupt priority for selected source plic.
| [in] | source | interrupt source |
| [in] | priority | interrupt priority |
Definition at line 287 of file core_feature_plic.h.
References PLIC_PRIORITY_REGADDR.
| __STATIC_FORCEINLINE void PLIC_SetContextThreshold | ( | uint32_t | ctxid, |
| uint32_t | thresh | ||
| ) |
Set priority threshold value of plic for selected context.
This function set priority threshold value of plic for selected context.
| [in] | ctxid | selected context id |
| [in] | thresh | threshold value |
Definition at line 119 of file core_feature_plic.h.
References PLIC_THRESHOLD_REGADDR.
Referenced by PLIC_Context_Init().
| __STATIC_FORCEINLINE void PLIC_SetInterruptPending | ( | uint32_t | source | ) |
Set interrupt pending of selected source plic.
This function set interrupt pending of selected source plic.
| [in] | source | interrupt source |
Definition at line 212 of file core_feature_plic.h.
References PLIC_PENDING_REGADDR.
| __STATIC_FORCEINLINE void PLIC_SetPriority | ( | uint32_t | source, |
| uint32_t | priority | ||
| ) |
Set interrupt priority for selected source plic.
This function set interrupt priority for selected source plic.
| [in] | source | interrupt source |
| [in] | priority | interrupt priority |
Definition at line 270 of file core_feature_plic.h.
References PLIC_PRIORITY_REGADDR.
Referenced by PLIC_Register_IRQ(), and PLIC_Register_IRQ_S().