1.28.8 Generic Interrupt Controller (GIC)

The integrated GIC collates and arbitrates from a large number of interrupt sources. It provides:

  • Masking of interrupts.

  • Prioritization of interrupts.

  • Distribution of the interrupts to the target processors.

  • Tracking the status of interrupts.

  • Generation of interrupts by software.

  • Support for Security Extensions. Support for Virtualization Extensions.

Using The Library

Functions provided by CMSIS for accessing GIC registers are used for GIC configuration. GIC plib provides functions for setting up the software vector table for used for interrupt redirection.

Library Interface

Generic Interrupt Controller peripheral library provides the following interfaces:

Functions

Name Description
GIC_Initialize Initializes GIC hardware and in memory vector table for interrupt redirection
GIC_RegisterSGIInterruptHandler Registers handler for Software Generated Interrupts
GIC_RegisterPeripheralInterruptHandler Registers handler for Software Generated Interrupts

Data types and constants

Name Type Description
SGI_HANDLER Typedef SGI interrupt handler function pointer
PPI_SPI_HANDLER Typedef PPI/SPI interrupt handler function pointer