1a61127c2SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 25c49fd3aSAlan Cox /************************************************************************** 35c49fd3aSAlan Cox * Copyright (c) 2009-2011, Intel Corporation. 45c49fd3aSAlan Cox * All Rights Reserved. 55c49fd3aSAlan Cox * 65c49fd3aSAlan Cox * Authors: 75c49fd3aSAlan Cox * Benjamin Defnet <benjamin.r.defnet@intel.com> 85c49fd3aSAlan Cox * Rajesh Poornachandran <rajesh.poornachandran@intel.com> 95c49fd3aSAlan Cox * 105c49fd3aSAlan Cox **************************************************************************/ 115c49fd3aSAlan Cox 129e8e4636SPatrik Jakobsson #ifndef _PSB_IRQ_H_ 139e8e4636SPatrik Jakobsson #define _PSB_IRQ_H_ 145c49fd3aSAlan Cox 155c49fd3aSAlan Cox #include <drm/drmP.h> 165c49fd3aSAlan Cox 175c49fd3aSAlan Cox bool sysirq_init(struct drm_device *dev); 185c49fd3aSAlan Cox void sysirq_uninit(struct drm_device *dev); 195c49fd3aSAlan Cox 205c49fd3aSAlan Cox void psb_irq_preinstall(struct drm_device *dev); 215c49fd3aSAlan Cox int psb_irq_postinstall(struct drm_device *dev); 225c49fd3aSAlan Cox void psb_irq_uninstall(struct drm_device *dev); 23e9f0d76fSDaniel Vetter irqreturn_t psb_irq_handler(int irq, void *arg); 245c49fd3aSAlan Cox 255c49fd3aSAlan Cox int psb_irq_enable_dpst(struct drm_device *dev); 265c49fd3aSAlan Cox int psb_irq_disable_dpst(struct drm_device *dev); 275c49fd3aSAlan Cox void psb_irq_turn_on_dpst(struct drm_device *dev); 285c49fd3aSAlan Cox void psb_irq_turn_off_dpst(struct drm_device *dev); 2988e72717SThierry Reding int psb_enable_vblank(struct drm_device *dev, unsigned int pipe); 3088e72717SThierry Reding void psb_disable_vblank(struct drm_device *dev, unsigned int pipe); 3188e72717SThierry Reding u32 psb_get_vblank_counter(struct drm_device *dev, unsigned int pipe); 325c49fd3aSAlan Cox 33026abc33SKirill A. Shutemov int mdfld_enable_te(struct drm_device *dev, int pipe); 34026abc33SKirill A. Shutemov void mdfld_disable_te(struct drm_device *dev, int pipe); 359e8e4636SPatrik Jakobsson #endif /* _PSB_IRQ_H_ */ 36