irq.h (1101B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2 3#ifndef __QCOM_IRQ_H 4#define __QCOM_IRQ_H 5 6#include <linux/irqdomain.h> 7 8#define GPIO_NO_WAKE_IRQ ~0U 9 10/* 11 * QCOM specific IRQ domain flags that distinguishes the handling of wakeup 12 * capable interrupts by different interrupt controllers. 13 * 14 * IRQ_DOMAIN_FLAG_QCOM_PDC_WAKEUP: Line must be masked at TLMM and the 15 * interrupt configuration is done at PDC 16 * IRQ_DOMAIN_FLAG_QCOM_MPM_WAKEUP: Interrupt configuration is handled at TLMM 17 */ 18#define IRQ_DOMAIN_FLAG_QCOM_PDC_WAKEUP (IRQ_DOMAIN_FLAG_NONCORE << 0) 19#define IRQ_DOMAIN_FLAG_QCOM_MPM_WAKEUP (IRQ_DOMAIN_FLAG_NONCORE << 1) 20 21/** 22 * irq_domain_qcom_handle_wakeup: Return if the domain handles interrupt 23 * configuration 24 * @d: irq domain 25 * 26 * This QCOM specific irq domain call returns if the interrupt controller 27 * requires the interrupt be masked at the child interrupt controller. 28 */ 29static inline bool irq_domain_qcom_handle_wakeup(const struct irq_domain *d) 30{ 31 return (d->flags & IRQ_DOMAIN_FLAG_QCOM_PDC_WAKEUP); 32} 33 34#endif