msm_fb: fixup MDP 3.00 vsync events

This is the sum of several fixes and improvements to the MDP 3.00
vsync event code.

Make sure to never switch off MDP command clock twice; add timeout
to the vsync wait completion and interpret the return value of the
completion function correctly.

Change-Id: Ic0a699c98a90e896a9ba185793cc7d9187bb6ec1

Conflicts:
	drivers/video/msm/mdp.c
	drivers/video/msm/mdp_dma_lcdc.c