hwc: Do not allow MDP Comp on layer with multiple visible rects

MDP Overlay does not support multiple visible regions on a layer.
In non-Video use cases, do not allow MDP Composition on a layer.
In Video use case, do not allow MDP Comp if framework confirmed
that the layer has Opaque content, i.e. blending has been set to
HWC_BLENDING_NONE.

Change-Id: I381221f2501423fb1c69deafce42f37682b6ad94
hwc: Do not program MDP with invalid destination rectangle

In a frame, if a layer is hidden under equal opaque layer, a HAL
optimization results in deducting lower layer with upper, hence
results in a rectangle with zero height. So MDP complains about
invalid destination rectangle in OVERLAY_PREPARE and frame falls
back to GPU Composition. So avoid invalid MDP programming.

Change-Id: I54342866ad8c161ffce7d8047237ebbe06d31cf6
Merge "hwc: Do not allow MDP Comp on layer with multiple visible rects"
Merge "hwc: Do not program MDP with invalid destination rectangle"