]> git.baikalelectronics.ru Git - kernel.git/commit
drm/omap: fix replication logic
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 29 Aug 2016 10:15:02 +0000 (13:15 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 3 Apr 2017 09:36:40 +0000 (12:36 +0300)
commit51bf1655b7fd3ef4bef32e4c561d9d5ea15ced9d
tree9bf6d09c7ab25f5f5cbfe29514ef0312ab92100b
parente513016d5a8f1a29a5a349dbe383597bef4808cc
drm/omap: fix replication logic

DSS uses "replication logic" to convert color components from smaller
bit widths to bigger bit widths. Without replication logic, the color
component would be shifted and the least significant bits would be left
at 0, whereas with replication logic, the least significat bits will be
filled with the most significant bit.

For some reason omapdrm leaves replication logic always to off, which,
in the most common case, means that showing 16-bit RGB colors on 24-bit
display gives a bit darker colors than expected.

The reset value of the replication logic bit is enabled, and it should
always be set, as there's no practical reason to disable it. This patch
removes the option to disable it from omapdrm, and always sets it to
enabled in dispc.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
drivers/gpu/drm/omapdrm/dss/dispc.c
drivers/gpu/drm/omapdrm/dss/omapdss.h
drivers/gpu/drm/omapdrm/omap_plane.c