]> git.baikalelectronics.ru Git - kernel.git/commit
OMAPDSS: DISPC: lock access to DISPC_CONTROL & DISPC_CONFIG
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Mon, 10 Nov 2014 10:23:00 +0000 (12:23 +0200)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Thu, 26 Feb 2015 10:15:13 +0000 (12:15 +0200)
commitc9e583aa654d099aff0fafd453d07b91b78fe03c
treed6981bf56333c72e98075f2360cbcb0a4020a59f
parentc1dd487c2fdef33756bf51e171cd48980adbb316
OMAPDSS: DISPC: lock access to DISPC_CONTROL & DISPC_CONFIG

Dispc driver presumes that the callers handle locking for all normal
functions. However, omapdrm doesn't handle this, and presumes that all
overlay manager registers are private to that overlay manager, and thus
presumes that configurations for overlay managers can be written via
different threads freely.

For many registers the above is true. The exceptions are DISPC_CONTROL
and DISPC_CONFIG registers, which contain bits for both LCD and TV
overlay managers.

Fixing this properly in omapdrm means a big omapdrm rewrite. So, for
now, add locking to dispc for the problematic registers.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Reported-by: Somnath Mukherjee <somnath@ti.com>
drivers/video/fbdev/omap2/dss/dispc.c