162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 OR MIT */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * This header provides constants for the ARM GIC.
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#ifndef _DT_BINDINGS_INTERRUPT_CONTROLLER_ARM_GIC_H
762306a36Sopenharmony_ci#define _DT_BINDINGS_INTERRUPT_CONTROLLER_ARM_GIC_H
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/* interrupt specifier cell 0 */
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci#define GIC_SPI 0
1462306a36Sopenharmony_ci#define GIC_PPI 1
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci/*
1762306a36Sopenharmony_ci * Interrupt specifier cell 2.
1862306a36Sopenharmony_ci * The flags in irq.h are valid, plus those below.
1962306a36Sopenharmony_ci */
2062306a36Sopenharmony_ci#define GIC_CPU_MASK_RAW(x) ((x) << 8)
2162306a36Sopenharmony_ci#define GIC_CPU_MASK_SIMPLE(num) GIC_CPU_MASK_RAW((1 << (num)) - 1)
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci#endif
24