drm/exynos: expose struct exynos_drm_crtc
Let other pieces of the driver access struct exynos_drm_crtc as well. struct exynos_drm_manager will be merged into struct exynos_drm_crtc, in the sense we will move all its members to exynos_drm_crtc, so to start this conversion exynos_drm_crtc need to be exposed as well. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk> Signed-off-by: Inki Dae <inki.dae@samsung.com>
This commit is contained in:
parent
ffceaed64e
commit
2bf053eb26
2 changed files with 30 additions and 30 deletions
|
@ -20,36 +20,6 @@
|
||||||
#include "exynos_drm_encoder.h"
|
#include "exynos_drm_encoder.h"
|
||||||
#include "exynos_drm_plane.h"
|
#include "exynos_drm_plane.h"
|
||||||
|
|
||||||
enum exynos_crtc_mode {
|
|
||||||
CRTC_MODE_NORMAL, /* normal mode */
|
|
||||||
CRTC_MODE_BLANK, /* The private plane of crtc is blank */
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Exynos specific crtc structure.
|
|
||||||
*
|
|
||||||
* @drm_crtc: crtc object.
|
|
||||||
* @manager: the manager associated with this crtc
|
|
||||||
* @pipe: a crtc index created at load() with a new crtc object creation
|
|
||||||
* and the crtc object would be set to private->crtc array
|
|
||||||
* to get a crtc object corresponding to this pipe from private->crtc
|
|
||||||
* array when irq interrupt occurred. the reason of using this pipe is that
|
|
||||||
* drm framework doesn't support multiple irq yet.
|
|
||||||
* we can refer to the crtc to current hardware interrupt occurred through
|
|
||||||
* this pipe value.
|
|
||||||
* @dpms: store the crtc dpms value
|
|
||||||
* @mode: store the crtc mode value
|
|
||||||
*/
|
|
||||||
struct exynos_drm_crtc {
|
|
||||||
struct drm_crtc drm_crtc;
|
|
||||||
struct exynos_drm_manager *manager;
|
|
||||||
unsigned int pipe;
|
|
||||||
unsigned int dpms;
|
|
||||||
enum exynos_crtc_mode mode;
|
|
||||||
wait_queue_head_t pending_flip_queue;
|
|
||||||
atomic_t pending_flip;
|
|
||||||
};
|
|
||||||
|
|
||||||
static void exynos_drm_crtc_dpms(struct drm_crtc *crtc, int mode)
|
static void exynos_drm_crtc_dpms(struct drm_crtc *crtc, int mode)
|
||||||
{
|
{
|
||||||
struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc);
|
struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc);
|
||||||
|
|
|
@ -215,6 +215,36 @@ struct exynos_drm_manager {
|
||||||
struct exynos_drm_manager_ops *ops;
|
struct exynos_drm_manager_ops *ops;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum exynos_crtc_mode {
|
||||||
|
CRTC_MODE_NORMAL, /* normal mode */
|
||||||
|
CRTC_MODE_BLANK, /* The private plane of crtc is blank */
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Exynos specific crtc structure.
|
||||||
|
*
|
||||||
|
* @drm_crtc: crtc object.
|
||||||
|
* @manager: the manager associated with this crtc
|
||||||
|
* @pipe: a crtc index created at load() with a new crtc object creation
|
||||||
|
* and the crtc object would be set to private->crtc array
|
||||||
|
* to get a crtc object corresponding to this pipe from private->crtc
|
||||||
|
* array when irq interrupt occurred. the reason of using this pipe is that
|
||||||
|
* drm framework doesn't support multiple irq yet.
|
||||||
|
* we can refer to the crtc to current hardware interrupt occurred through
|
||||||
|
* this pipe value.
|
||||||
|
* @dpms: store the crtc dpms value
|
||||||
|
* @mode: store the crtc mode value
|
||||||
|
*/
|
||||||
|
struct exynos_drm_crtc {
|
||||||
|
struct drm_crtc drm_crtc;
|
||||||
|
struct exynos_drm_manager *manager;
|
||||||
|
unsigned int pipe;
|
||||||
|
unsigned int dpms;
|
||||||
|
enum exynos_crtc_mode mode;
|
||||||
|
wait_queue_head_t pending_flip_queue;
|
||||||
|
atomic_t pending_flip;
|
||||||
|
};
|
||||||
|
|
||||||
struct exynos_drm_g2d_private {
|
struct exynos_drm_g2d_private {
|
||||||
struct device *dev;
|
struct device *dev;
|
||||||
struct list_head inuse_cmdlist;
|
struct list_head inuse_cmdlist;
|
||||||
|
|
Loading…
Add table
Reference in a new issue