Nios® V Processor Software Developer Handbook

ID 743810
Date 10/06/2025
Public
Document Table of Contents

9.3.2.1. Enhanced HAL Hardware Interrupt and CLIC Interrupt Configuration API

The Nios® V processor CLIC mode is built on top of the existing platform interrupt services management HAL APIs. CLIC adopts the same Enhanced HAL Hardware Interrupt API functions, while adding new CLIC Interrupt Configuration API functions.

The following overview lists key points about the CLIC Interrupt Configuration API functions:

  • CLIC Interrupt Configuration API functions apply to platform interrupts only.
  • The CLIC Interrupt Configuration API functions do not support machine software and timer interrupts. They are defined as “logic 1”-level triggered and one interrupt level above the application level.
  • Make sure that you disable the interrupt support globally before configuring the CLIC interrupts.
Table 48.  Enhanced HAL Hardware Interrupt API Functions
Function Name Description
alt_ic_isr_register() Register an interrupt handler to handle the platform interrupts.
alt_ic_irq_enable() Enables a single interrupt.
alt_ic_irq_disable() Disables a single interrupt.
alt_ic_irq_enabled() Determine if corresponding interrupt is enabled.
alt_irq_disable_all() Disable all interrupts and return context value correspond to the previous state.
alt_irq_enable_all() Enable all interrupts to the previous state based on the returned context value from prior alt_irq_disable_all().
alt_irq_enabled() Determine if the processor's global interrupt enable is asserted.
Table 49.  New CLIC Interrupt Configuration API Functions
Function Name Description
alt_clic_set_level() Set an interrupt’s level in the clicintctl register.
alt_clic_get_level()

Get an interrupt’s level from the clicintctl register.

alt_clic_set_priority()

Set an interrupt’s priority in the clicintctl register.

alt_clic_get_priority()

Get an interrupt’s priority from the clicintctl register.

alt_clic_set_trigger_mode()

Set an interrupt’s trigger mode in the clicintattr register.

alt_clic_get_trigger_mode()

Get an interrupt’s trigger mode from the clicintctl register.