hwc: Add target specific checks in hwcomposer
* Mdss driver supports DMA-Multiplexing on wb interface for certain targets. Add overlay get function to query this info during pipe allocation for wb. * UI Scaling on external is not supported on certain targets due to the lack of availability of pipes with scalars. Add overlay get function to query this info to disable action-safe calcs, DRC and others which require downscaling. Change-Id: I1726caa4634f72d781561e797078648524ea2eef
This commit is contained in:
@@ -569,7 +569,7 @@ void calcExtDisplayPosition(hwc_context_t *ctx,
|
||||
ovutils::eTransform& orient) {
|
||||
// Swap width and height when there is a 90deg transform
|
||||
int extOrient = getExtOrientation(ctx);
|
||||
if(dpy && !qdutils::MDPVersion::getInstance().is8x26()) {
|
||||
if(dpy && ctx->mOverlay->isUIScalingOnExternalSupported()) {
|
||||
if(!isYuvBuffer(hnd)) {
|
||||
if(extOrient & HWC_TRANSFORM_ROT_90) {
|
||||
int dstWidth = ctx->dpyAttr[dpy].xres;
|
||||
@@ -1943,10 +1943,10 @@ int configureSourceSplit(hwc_context_t *ctx, hwc_layer_1_t *layer,
|
||||
}
|
||||
|
||||
bool canUseRotator(hwc_context_t *ctx, int dpy) {
|
||||
if(qdutils::MDPVersion::getInstance().is8x26() &&
|
||||
if(ctx->mOverlay->isDMAMultiplexingSupported() &&
|
||||
isSecondaryConnected(ctx) &&
|
||||
!ctx->dpyAttr[HWC_DISPLAY_VIRTUAL].isPause) {
|
||||
/* 8x26 mdss driver supports multiplexing of DMA pipe
|
||||
/* mdss driver on certain targets support multiplexing of DMA pipe
|
||||
* in LINE and BLOCK modes for writeback panels.
|
||||
*/
|
||||
if(dpy == HWC_DISPLAY_PRIMARY)
|
||||
|
||||
Reference in New Issue
Block a user