libhwcomposer: MDP composition for Higher Resolution panels
This patch:
-Implements MDP composition for higher resolution
panels of width more than 2k.
-Adds DMA pipe support for high res. MDP composition
Change-Id: Ib7b1f822e3600eca81521294fedfe05e948b65c3
diff --git a/liboverlay/overlay.cpp b/liboverlay/overlay.cpp
index 441b822..851422f 100644
--- a/liboverlay/overlay.cpp
+++ b/liboverlay/overlay.cpp
@@ -40,7 +40,7 @@
int numPipes = 0;
int mdpVersion = qdutils::MDPVersion::getInstance().getMDPVersion();
if (mdpVersion > qdutils::MDP_V3_1) numPipes = 4;
- if (mdpVersion >= qdutils::MDSS_V5) numPipes = 6;
+ if (mdpVersion >= qdutils::MDSS_V5) numPipes = 8;
PipeBook::NUM_PIPES = numPipes;
for(int i = 0; i < PipeBook::NUM_PIPES; i++) {
@@ -184,6 +184,13 @@
} else {
clearMdpFlags(newArgs.mdpFlags, OV_MDP_PIPE_SHARE);
}
+
+ if(dest == OV_DMA0 || dest == OV_DMA1) {
+ setMdpFlags(newArgs.mdpFlags, OV_MDP_PIPE_FORCE_DMA);
+ } else {
+ clearMdpFlags(newArgs.mdpFlags, OV_MDP_PIPE_FORCE_DMA);
+ }
+
mPipeBook[index].mPipe->setSource(newArgs);
}