summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/sti/sti_layer.c
diff options
context:
space:
mode:
authorBenjamin Gaignard <benjamin.gaignard@linaro.org>2014-12-11 13:34:42 +0100
committerBenjamin Gaignard <benjamin.gaignard@linaro.org>2014-12-11 14:00:09 +0100
commit96006a770df80d69cbde4802e1e7cdfd70c510b3 (patch)
tree8f99791fa1a346effdff490dc880dd341cebca9a /drivers/gpu/drm/sti/sti_layer.c
parentdrm: sti: enable auxiliary CRTC (diff)
downloadlinux-96006a770df80d69cbde4802e1e7cdfd70c510b3.tar.xz
linux-96006a770df80d69cbde4802e1e7cdfd70c510b3.zip
drm: sti: add cursor plane
stih407 SoC have a dedicated hardware cursor plane, this patch enable it. The hardware have a color look up table, fix it to be able to use ARGB8888. Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Diffstat (limited to 'drivers/gpu/drm/sti/sti_layer.c')
-rw-r--r--drivers/gpu/drm/sti/sti_layer.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/sti/sti_layer.c b/drivers/gpu/drm/sti/sti_layer.c
index 06a587c4f1bb..5051b4cfc46b 100644
--- a/drivers/gpu/drm/sti/sti_layer.c
+++ b/drivers/gpu/drm/sti/sti_layer.c
@@ -11,6 +11,7 @@
#include <drm/drm_fb_cma_helper.h>
#include "sti_compositor.h"
+#include "sti_cursor.h"
#include "sti_gdp.h"
#include "sti_layer.h"
#include "sti_vid.h"
@@ -50,6 +51,9 @@ struct sti_layer *sti_layer_create(struct device *dev, int desc,
case STI_VID:
layer = sti_vid_create(dev);
break;
+ case STI_CUR:
+ layer = sti_cursor_create(dev);
+ break;
}
if (!layer) {
@@ -100,6 +104,7 @@ int sti_layer_prepare(struct sti_layer *layer, struct drm_framebuffer *fb,
layer->src_w = src_w;
layer->src_h = src_h;
layer->format = fb->pixel_format;
+ layer->vaddr = cma_obj->vaddr;
layer->paddr = cma_obj->paddr;
for (i = 0; i < 4; i++) {
layer->pitches[i] = fb->pitches[i];