49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
|
/*
|
||
|
* Copyright (c) 2015 MediaTek Inc.
|
||
|
* Author: CK Hu <ck.hu@mediatek.com>
|
||
|
*
|
||
|
* This program is free software; you can redistribute it and/or modify
|
||
|
* it under the terms of the GNU General Public License version 2 as
|
||
|
* published by the Free Software Foundation.
|
||
|
*
|
||
|
* This program is distributed in the hope that it will be useful,
|
||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
* GNU General Public License for more details.
|
||
|
*/
|
||
|
|
||
|
#ifndef _MTK_DRM_PLANE_H_
|
||
|
#define _MTK_DRM_PLANE_H_
|
||
|
|
||
|
#include <drm/drm_crtc.h>
|
||
|
#include <linux/types.h>
|
||
|
|
||
|
struct mtk_plane_pending_state {
|
||
|
bool config;
|
||
|
bool enable;
|
||
|
dma_addr_t addr;
|
||
|
unsigned int pitch;
|
||
|
unsigned int format;
|
||
|
unsigned int x;
|
||
|
unsigned int y;
|
||
|
unsigned int width;
|
||
|
unsigned int height;
|
||
|
bool dirty;
|
||
|
};
|
||
|
|
||
|
struct mtk_plane_state {
|
||
|
struct drm_plane_state base;
|
||
|
struct mtk_plane_pending_state pending;
|
||
|
};
|
||
|
|
||
|
static inline struct mtk_plane_state *
|
||
|
to_mtk_plane_state(struct drm_plane_state *state)
|
||
|
{
|
||
|
return container_of(state, struct mtk_plane_state, base);
|
||
|
}
|
||
|
|
||
|
int mtk_plane_init(struct drm_device *dev, struct drm_plane *plane,
|
||
|
unsigned long possible_crtcs, enum drm_plane_type type);
|
||
|
|
||
|
#endif
|