drm/malidp: Fix writeback in NV12
authorAlexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com>
Wed, 22 Aug 2018 15:18:19 +0000 (16:18 +0100)
committerLiviu Dudau <Liviu.Dudau@arm.com>
Fri, 21 Sep 2018 09:55:00 +0000 (10:55 +0100)
commit89578d04b52c872aef6b1257b5f6caf6bcc35abe
tree36095777cd93c9c1b07cf078718c957e0dfa654d
parent69be1984ded00a11b1ed0888c6d8e4f35370372f
drm/malidp: Fix writeback in NV12

When we want to writeback to memory in NV12 format we need to program
the RGB2YUV coefficients. Currently, we don't program the coefficients
and NV12 doesn't work at all.

This patchset fixes that by programming a sane default(bt709, limited
range) as rgb2yuv coefficients.

In the long run, probably we need to think of a way for userspace to
be able to program that, but for now I think this is better than not
working at all or not advertising NV12 as a supported format for
memwrite.

Changes since v1:
 - Write the rgb2yuv coefficients only once, since we don't change
   them at all, just write them the first time NV12 is programmed,
   suggested by Brian Starkey, here [1]

[1] https://lists.freedesktop.org/archives/dri-devel/2018-August/186819.html

Signed-off-by: Alexandru Gheorghe <alexandru-cosmin.gheorghe@arm.com>
Acked-by: Liviu Dudau <liviu.dudau@arm.com>
Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
drivers/gpu/drm/arm/malidp_hw.c
drivers/gpu/drm/arm/malidp_hw.h
drivers/gpu/drm/arm/malidp_mw.c
drivers/gpu/drm/arm/malidp_regs.h