drm_hwcomposer: Really fail on CreateComposition failures

John Stultz requested to merge john.stultz/drm-hwcomposer:validate-fixup into master

The current logic in Validate assumes that if CreateComposition() fails, it was due to overlay planes as sets the avail_planes to 1.

With most multi-plane compositions, this will then cause the avil_planes to be later decremented to zero (to reserve the client composited plane), resulting in all the layers to be set as client composited.

However, in the case where there is only one layer, such as with the Android BootAnimation, if CreateComposition fails, we set avail_planes to one, and since there is only one layer, we don't decrement it further, resulting in the layer to be validated as a Device rendered layer, as if CreateComposition succeeded.

This adds an extra flag we don't mix up a single layer failure as a success.

On HiKey/HiKey960, this patch fixes the issue where the BootAnimation wouldn't display.

Change-Id: I58bf5f332667a46e8e997d1743b73dd4a768657f Signed-off-by: John Stultz john.stultz@linaro.org

Merge request reports