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