Fix rotation on hardware composer (msm8226)

Add RGBX_8888 as a supported format.

Also, fixes a mistake introduced by 3e344bb1ba
If we try OV_MDP_PIPE_DMA and it doesn't work, try the other pipes
instead of just aborting.

Change-Id: Ice557d58abe700ff8b10c90c43bfbbfa371ab286
This commit is contained in:
Matthew Bouyack 2016-04-01 16:43:45 -07:00
parent c6334026c7
commit 9fae8b8b5b
2 changed files with 7 additions and 5 deletions

View File

@ -966,6 +966,7 @@ bool isRotatorSupportedFormat(private_handle_t *hnd) {
// TODO: Add more formats in future, if mdp driver adds support
switch(hnd->format) {
case HAL_PIXEL_FORMAT_RGBA_8888:
case HAL_PIXEL_FORMAT_RGBX_8888:
case HAL_PIXEL_FORMAT_RGB_565:
case HAL_PIXEL_FORMAT_RGB_888:
case HAL_PIXEL_FORMAT_BGRA_8888:

View File

@ -218,12 +218,13 @@ utils::eDest Overlay::getPipe_8x26(const PipeSpecs& pipeSpecs) {
Try for DMA pipe for FB first, if FB does not have scaling*/
if (not pipeSpecs.needsScaling) {
dest = nextPipe(OV_MDP_PIPE_DMA, pipeSpecs.dpy, pipeSpecs.mixer);
} else {
}
if (dest == OV_INVALID) {
dest = nextPipe(OV_MDP_PIPE_RGB, pipeSpecs.dpy, pipeSpecs.mixer);
if (dest == OV_INVALID) {
// FB needs scaling, and RGB pipe is not available - try VG
dest = nextPipe(OV_MDP_PIPE_VG, pipeSpecs.dpy, pipeSpecs.mixer);
}
}
if (dest == OV_INVALID) {
// FB needs scaling, and RGB pipe is not available - try VG
dest = nextPipe(OV_MDP_PIPE_VG, pipeSpecs.dpy, pipeSpecs.mixer);
}
}
if(dest == OV_INVALID and (not pipeSpecs.needsScaling) and