2019-06-03 13:44:50 +08:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
2017-10-13 22:59:05 +08:00
|
|
|
/*
|
|
|
|
* omap_crtc.h -- OMAP DRM CRTC
|
|
|
|
*
|
|
|
|
* Copyright (C) 2011 Texas Instruments
|
|
|
|
* Author: Rob Clark <rob@ti.com>
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __OMAPDRM_CRTC_H__
|
|
|
|
#define __OMAPDRM_CRTC_H__
|
|
|
|
|
|
|
|
#include <linux/types.h>
|
|
|
|
|
|
|
|
enum omap_channel;
|
|
|
|
|
|
|
|
struct drm_crtc;
|
|
|
|
struct drm_device;
|
|
|
|
struct drm_plane;
|
2018-03-07 05:37:25 +08:00
|
|
|
struct omap_drm_pipeline;
|
2017-10-13 22:59:05 +08:00
|
|
|
struct omap_dss_device;
|
|
|
|
struct videomode;
|
|
|
|
|
|
|
|
struct videomode *omap_crtc_timings(struct drm_crtc *crtc);
|
|
|
|
enum omap_channel omap_crtc_channel(struct drm_crtc *crtc);
|
2018-02-13 20:00:39 +08:00
|
|
|
void omap_crtc_pre_init(struct omap_drm_private *priv);
|
2018-03-02 09:05:10 +08:00
|
|
|
void omap_crtc_pre_uninit(struct omap_drm_private *priv);
|
2017-10-13 22:59:05 +08:00
|
|
|
struct drm_crtc *omap_crtc_init(struct drm_device *dev,
|
2018-03-07 05:37:25 +08:00
|
|
|
struct omap_drm_pipeline *pipe,
|
|
|
|
struct drm_plane *plane);
|
2017-10-13 22:59:05 +08:00
|
|
|
int omap_crtc_wait_pending(struct drm_crtc *crtc);
|
2018-02-11 21:07:33 +08:00
|
|
|
void omap_crtc_error_irq(struct drm_crtc *crtc, u32 irqstatus);
|
2017-10-13 22:59:05 +08:00
|
|
|
void omap_crtc_vblank_irq(struct drm_crtc *crtc);
|
2019-05-24 04:07:55 +08:00
|
|
|
void omap_crtc_framedone_irq(struct drm_crtc *crtc, uint32_t irqstatus);
|
2019-05-24 04:07:56 +08:00
|
|
|
void omap_crtc_flush(struct drm_crtc *crtc);
|
2017-10-13 22:59:05 +08:00
|
|
|
|
|
|
|
#endif /* __OMAPDRM_CRTC_H__ */
|