qdutils: Parse rotator downscale feature
Parse rotator downscale feature from the capabilities sysfs node
Change-Id: I346a20d4879682e115eb2f8f74afd41dca31e930
diff --git a/libqdutils/mdp_version.cpp b/libqdutils/mdp_version.cpp
index aced394..6b53522 100644
--- a/libqdutils/mdp_version.cpp
+++ b/libqdutils/mdp_version.cpp
@@ -90,6 +90,7 @@
mSourceSplit = false;
mSourceSplitAlways = false;
mRGBHasNoScalar = false;
+ mRotDownscale = false;
updatePanelInfo();
@@ -282,22 +283,22 @@
for(int i=1; i<index;i++) {
if(!strncmp(tokens[i], "bwc", strlen("bwc"))) {
mFeatures |= MDP_BWC_EN;
- }
- else if(!strncmp(tokens[i], "decimation",
+ } else if(!strncmp(tokens[i], "decimation",
strlen("decimation"))) {
mFeatures |= MDP_DECIMATION_EN;
- }
- else if(!strncmp(tokens[i], "tile_format",
+ } else if(!strncmp(tokens[i], "tile_format",
strlen("tile_format"))) {
if(enableMacroTile)
mMacroTileEnabled = true;
} else if(!strncmp(tokens[i], "src_split",
strlen("src_split"))) {
mSourceSplit = true;
- }
- else if(!strncmp(tokens[i], "non_scalar_rgb",
+ } else if(!strncmp(tokens[i], "non_scalar_rgb",
strlen("non_scalar_rgb"))) {
mRGBHasNoScalar = true;
+ } else if(!strncmp(tokens[i], "rotator_downscale",
+ strlen("rotator_downscale"))) {
+ mRotDownscale = true;
}
}
}
diff --git a/libqdutils/mdp_version.h b/libqdutils/mdp_version.h
index b2987d2..6c4a3f4 100644
--- a/libqdutils/mdp_version.h
+++ b/libqdutils/mdp_version.h
@@ -139,6 +139,7 @@
bool needsROIMerge() { return mPanelInfo.mNeedsROIMerge; }
unsigned long getLowBw() { return mLowBw; }
unsigned long getHighBw() { return mHighBw; }
+ bool isRotDownscaleEnabled() { return mRotDownscale; }
bool isSrcSplit() const;
bool isSrcSplitAlways() const;
bool isRGBScalarSupported() const;
@@ -175,6 +176,7 @@
//Additional property on top of source split
bool mSourceSplitAlways;
bool mRGBHasNoScalar;
+ bool mRotDownscale;
};
}; //namespace qdutils
#endif //INCLUDE_LIBQCOMUTILS_MDPVER