1 /* SPDX-License-Identifier: GPL-2.0+ */
3 * shmob_drm_crtc.h -- SH Mobile DRM CRTCs
5 * Copyright (C) 2012 Renesas Electronics Corporation
7 * Laurent Pinchart (laurent.pinchart@ideasonboard.com)
10 #ifndef __SHMOB_DRM_CRTC_H__
11 #define __SHMOB_DRM_CRTC_H__
14 #include <drm/drm_crtc.h>
15 #include <drm/drm_encoder.h>
17 struct backlight_device;
18 struct shmob_drm_device;
20 struct shmob_drm_crtc {
23 struct drm_pending_vblank_event *event;
26 const struct shmob_drm_format_info *format;
28 unsigned int line_size;
32 struct shmob_drm_encoder {
33 struct drm_encoder encoder;
37 struct shmob_drm_connector {
38 struct drm_connector connector;
39 struct drm_encoder *encoder;
41 struct backlight_device *backlight;
44 int shmob_drm_crtc_create(struct shmob_drm_device *sdev);
45 void shmob_drm_crtc_finish_page_flip(struct shmob_drm_crtc *scrtc);
46 void shmob_drm_crtc_suspend(struct shmob_drm_crtc *scrtc);
47 void shmob_drm_crtc_resume(struct shmob_drm_crtc *scrtc);
49 int shmob_drm_encoder_create(struct shmob_drm_device *sdev);
50 int shmob_drm_connector_create(struct shmob_drm_device *sdev,
51 struct drm_encoder *encoder);
53 #endif /* __SHMOB_DRM_CRTC_H__ */