summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/omapdrm
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2015-03-06 17:00:18 (GMT)
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2015-06-12 19:52:49 (GMT)
commitdee8260d9c2e6f43ebecd2777caff3524477bf9f (patch)
tree3481cd30baf63e929e0e4fa4c5434680e64a0281 /drivers/gpu/drm/omapdrm
parentfb730c9b7097373b30bce0bed326942acdf467de (diff)
downloadlinux-dee8260d9c2e6f43ebecd2777caff3524477bf9f.tar.xz
drm: omapdrm: Move crtc info out of the crtc structure
The crtc info structure is only used to setup the crtc through the DSS API. Move it from the crtc structure to local variables in omap_crtc_dss_enable(). Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm')
-rw-r--r--drivers/gpu/drm/omapdrm/omap_crtc.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c b/drivers/gpu/drm/omapdrm/omap_crtc.c
index b32a6fb..430bf64 100644
--- a/drivers/gpu/drm/omapdrm/omap_crtc.c
+++ b/drivers/gpu/drm/omapdrm/omap_crtc.c
@@ -35,7 +35,6 @@ struct omap_crtc {
const char *name;
enum omap_channel channel;
- struct omap_overlay_manager_info info;
struct drm_encoder *current_encoder;
/*
@@ -188,8 +187,15 @@ static void omap_crtc_set_enabled(struct drm_crtc *crtc, bool enable)
static int omap_crtc_dss_enable(struct omap_overlay_manager *mgr)
{
struct omap_crtc *omap_crtc = omap_crtcs[mgr->id];
+ struct omap_overlay_manager_info info;
- dispc_mgr_setup(omap_crtc->channel, &omap_crtc->info);
+ memset(&info, 0, sizeof(info));
+ info.default_color = 0x00000000;
+ info.trans_key = 0x00000000;
+ info.trans_key_type = OMAP_DSS_COLOR_KEY_GFX_DST;
+ info.trans_enabled = false;
+
+ dispc_mgr_setup(omap_crtc->channel, &info);
dispc_mgr_set_timings(omap_crtc->channel,
&omap_crtc->timings);
omap_crtc_set_enabled(&omap_crtc->base, true);
@@ -628,7 +634,6 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev,
{
struct drm_crtc *crtc = NULL;
struct omap_crtc *omap_crtc;
- struct omap_overlay_manager_info *info;
int ret;
DBG("%s", channel_names[channel]);
@@ -656,13 +661,6 @@ struct drm_crtc *omap_crtc_init(struct drm_device *dev,
/* temporary: */
omap_crtc->mgr = omap_dss_get_overlay_manager(channel);
- /* TODO: fix hard-coded setup.. add properties! */
- info = &omap_crtc->info;
- info->default_color = 0x00000000;
- info->trans_key = 0x00000000;
- info->trans_key_type = OMAP_DSS_COLOR_KEY_GFX_DST;
- info->trans_enabled = false;
-
ret = drm_crtc_init_with_planes(dev, crtc, plane, NULL,
&omap_crtc_funcs);
if (ret < 0) {