OSDN Git Service

OMAPDSS: DISPC: always set ALIGN when available
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Wed, 21 Oct 2015 10:08:59 +0000 (13:08 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 17 Dec 2015 11:42:31 +0000 (13:42 +0200)
commite5f809171a217a83850e49b48b091188b27ce9f0
treed2c6ef9951ad9d0c0ae777196d5127f65153a5af
parent5038bb8cb2c9dfec6d188bdf9fc0d7a358e1e2ee
OMAPDSS: DISPC: always set ALIGN when available

By default DISPC asserts hsync and vsync sequentially, i.e. there's
first hsync and that is immediately followed by vsync. This is the only
available behaviour on OMAP2/3, and default behaviour on OMAP4+.

OMAP4+ has ALIGN bit in POL_FREQ register, which makes DISPC assert both
syncs at the same time.

It has been observed that some panels don't like sequential syncs (AM5
EVM's panel). After studying the datasheets for multiple panels and
encoders, and MIPI DPI spec, it looks like there is no standard way to
handle this.

Sometimes the datasheets don't mention the required syncs behaviour at
all, sometimes the datasheets have images that hint towards simultaneous
syncs, and sometimes it is explicitly mentioned that simultaneous syncs
are needed. No panels or encoders requiring sequential sync was found.

It thus seems to be safe to default to simultaneous syncs when the ALIGN
bit is available. This fixed AM5 EVM's panel, and no side effects have
been observed on other panels or encoders.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
drivers/video/fbdev/omap2/dss/dispc.c