1*2ae09687SHuang, Sean Z /* SPDX-License-Identifier: MIT */ 2*2ae09687SHuang, Sean Z /* 3*2ae09687SHuang, Sean Z * Copyright(c) 2020, Intel Corporation. All rights reserved. 4*2ae09687SHuang, Sean Z */ 5*2ae09687SHuang, Sean Z 6*2ae09687SHuang, Sean Z #ifndef __INTEL_PXP_IRQ_H__ 7*2ae09687SHuang, Sean Z #define __INTEL_PXP_IRQ_H__ 8*2ae09687SHuang, Sean Z 9*2ae09687SHuang, Sean Z #include <linux/types.h> 10*2ae09687SHuang, Sean Z 11*2ae09687SHuang, Sean Z struct intel_pxp; 12*2ae09687SHuang, Sean Z 13*2ae09687SHuang, Sean Z #define GEN12_DISPLAY_PXP_STATE_TERMINATED_INTERRUPT BIT(1) 14*2ae09687SHuang, Sean Z #define GEN12_DISPLAY_APP_TERMINATED_PER_FW_REQ_INTERRUPT BIT(2) 15*2ae09687SHuang, Sean Z #define GEN12_DISPLAY_STATE_RESET_COMPLETE_INTERRUPT BIT(3) 16*2ae09687SHuang, Sean Z 17*2ae09687SHuang, Sean Z #define GEN12_PXP_INTERRUPTS \ 18*2ae09687SHuang, Sean Z (GEN12_DISPLAY_PXP_STATE_TERMINATED_INTERRUPT | \ 19*2ae09687SHuang, Sean Z GEN12_DISPLAY_APP_TERMINATED_PER_FW_REQ_INTERRUPT | \ 20*2ae09687SHuang, Sean Z GEN12_DISPLAY_STATE_RESET_COMPLETE_INTERRUPT) 21*2ae09687SHuang, Sean Z 22*2ae09687SHuang, Sean Z #ifdef CONFIG_DRM_I915_PXP 23*2ae09687SHuang, Sean Z void intel_pxp_irq_enable(struct intel_pxp *pxp); 24*2ae09687SHuang, Sean Z void intel_pxp_irq_disable(struct intel_pxp *pxp); 25*2ae09687SHuang, Sean Z void intel_pxp_irq_handler(struct intel_pxp *pxp, u16 iir); 26*2ae09687SHuang, Sean Z #else 27*2ae09687SHuang, Sean Z static inline void intel_pxp_irq_handler(struct intel_pxp *pxp, u16 iir) 28*2ae09687SHuang, Sean Z { 29*2ae09687SHuang, Sean Z } 30*2ae09687SHuang, Sean Z #endif 31*2ae09687SHuang, Sean Z 32*2ae09687SHuang, Sean Z #endif /* __INTEL_PXP_IRQ_H__ */ 33