Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Microchip SmartFusion2 interrupt controller

Devicetree macros for the Microchip SmartFusion2 interrupt controller. More...

Files

file  microchip-smartfusion2-irq.h
 Microchip SmartFusion2 interrupt controller devicetree macros.

Detailed Description

Devicetree macros for the Microchip SmartFusion2 interrupt controller.

This header provides the MSS interrupt numbers for the SmartFusion2 SoC. Interrupts are routed to the Cortex-M3 NVIC, so an interrupts entry takes two cells: the interrupt number, followed by the NVIC priority.

#include <zephyr/dt-bindings/interrupt-controller/microchip-smartfusion2-irq.h>
uart0: serial@40000000 {
compatible = "ns16550";
reg = <0x40000000 0x1000>;
interrupts = <SMARTFUSION2_IRQ_UART0 4>;
};

Interrupt numbers follow two naming conventions:

  • SMARTFUSION2_IRQ_<peripheral> is the interrupt number for an MSS peripheral, for example SMARTFUSION2_IRQ_UART0, SMARTFUSION2_IRQ_ETHERNET_MAC, or SMARTFUSION2_IRQ_TIMER1. Use these in new devicetree sources.
  • M2S_IRQ_<peripheral> are legacy aliases retained for the existing in-tree sources. Each expands to its SMARTFUSION2_IRQ_* counterpart, and several alias the same underlying interrupt: M2S_IRQ_I2C0_MAIN, M2S_IRQ_I2C0_ALERT and M2S_IRQ_I2C0_SUS all resolve to SMARTFUSION2_IRQ_I2C0.

SMARTFUSION2_IRQ_WDOG_WAKEUP and SMARTFUSION2_IRQ_RTC_WAKEUP name wakeup sources that are not connected to the NVIC.