diff options
author | Linux Build Service Account <lnxbuild@localhost> | 2016-05-25 07:28:56 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-05-25 07:28:56 -0700 |
commit | 3abfa785bd44ccc2ee7b701478464a65e3ad0a40 (patch) | |
tree | 26f7d8bb03dc59e9e7cd92fee516d2961294a470 /libgralloc | |
parent | 149b8bc32b176f088587fa3652d27c774f604296 (diff) | |
parent | 013614183e083cf6bf8fa82e9eaf3c7a8493214f (diff) | |
download | display-3abfa785bd44ccc2ee7b701478464a65e3ad0a40.tar.gz |
Merge "qdutils: Query MDP caps for UBWC feature"
Diffstat (limited to 'libgralloc')
-rw-r--r-- | libgralloc/alloc_controller.cpp | 35 | ||||
-rw-r--r-- | libgralloc/gr.h | 14 |
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_ */ |