summaryrefslogtreecommitdiff
path: root/libgralloc
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-05-25 07:28:56 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-05-25 07:28:56 -0700
commit3abfa785bd44ccc2ee7b701478464a65e3ad0a40 (patch)
tree26f7d8bb03dc59e9e7cd92fee516d2961294a470 /libgralloc
parent149b8bc32b176f088587fa3652d27c774f604296 (diff)
parent013614183e083cf6bf8fa82e9eaf3c7a8493214f (diff)
downloaddisplay-3abfa785bd44ccc2ee7b701478464a65e3ad0a40.tar.gz
Merge "qdutils: Query MDP caps for UBWC feature"
Diffstat (limited to 'libgralloc')
-rw-r--r--libgralloc/alloc_controller.cpp35
-rw-r--r--libgralloc/gr.h14
2 files changed, 28 insertions, 21 deletions
diff --git a/libgralloc/alloc_controller.cpp b/libgralloc/alloc_controller.cpp
index 2a5d0996..e9cdc73f 100644
--- a/libgralloc/alloc_controller.cpp
+++ b/libgralloc/alloc_controller.cpp
@@ -99,14 +99,10 @@ static bool useUncached(const int& usage) {
//------------- MDPCapabilityInfo-----------------------//
MDPCapabilityInfo :: MDPCapabilityInfo() {
- isMacroTileSupported = false;
qdutils::querySDEInfo(HAS_MACRO_TILE, &isMacroTileSupported);
+ qdutils::querySDEInfo(HAS_UBWC, &isUBwcSupported);
}
-int MDPCapabilityInfo :: isMacroTilingSupportedByMDP(){
- return isMacroTileSupported;
- }
-
//------------- AdrenoMemInfo-----------------------//
AdrenoMemInfo::AdrenoMemInfo()
{
@@ -932,20 +928,23 @@ static bool isUBwcFormat(int format)
static bool isUBwcSupported(int format)
{
- // Existing HAL formats with UBWC support
- switch(format)
- {
- case HAL_PIXEL_FORMAT_BGR_565:
- case HAL_PIXEL_FORMAT_RGBA_8888:
- case HAL_PIXEL_FORMAT_RGBX_8888:
- case HAL_PIXEL_FORMAT_NV12_ENCODEABLE:
- case HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS:
- case HAL_PIXEL_FORMAT_RGBA_1010102:
- case HAL_PIXEL_FORMAT_RGBX_1010102:
- return true;
- default:
- return false;
+ if (MDPCapabilityInfo::getInstance().isUBwcSupportedByMDP()) {
+ // Existing HAL formats with UBWC support
+ switch(format)
+ {
+ case HAL_PIXEL_FORMAT_BGR_565:
+ case HAL_PIXEL_FORMAT_RGBA_8888:
+ case HAL_PIXEL_FORMAT_RGBX_8888:
+ case HAL_PIXEL_FORMAT_NV12_ENCODEABLE:
+ case HAL_PIXEL_FORMAT_YCbCr_420_SP_VENUS:
+ case HAL_PIXEL_FORMAT_RGBA_1010102:
+ case HAL_PIXEL_FORMAT_RGBX_1010102:
+ return true;
+ default:
+ break;
+ }
}
+ return false;
}
bool isUBwcEnabled(int format, int usage)
diff --git a/libgralloc/gr.h b/libgralloc/gr.h
index e7d449e7..5fe1bdb7 100644
--- a/libgralloc/gr.h
+++ b/libgralloc/gr.h
@@ -201,7 +201,9 @@ class AdrenoMemInfo : public android::Singleton <AdrenoMemInfo>
class MDPCapabilityInfo : public android::Singleton <MDPCapabilityInfo>
{
- int isMacroTileSupported;
+ int isMacroTileSupported = 0;
+ int isUBwcSupported = 0;
+
public:
MDPCapabilityInfo();
/*
@@ -210,8 +212,14 @@ class MDPCapabilityInfo : public android::Singleton <MDPCapabilityInfo>
* @return 1 : supported
* 0 : not supported
*/
- int isMacroTilingSupportedByMDP();
-
+ int isMacroTilingSupportedByMDP() { return isMacroTileSupported; }
+ /*
+ * Function to return whether MDP supports UBWC feature
+ *
+ * @return 1 : supported
+ * 0 : not supported
+ */
+ int isUBwcSupportedByMDP() { return isUBwcSupported; }
};
#endif /* GR_H_ */