surfaceflinger: Don't allow QC HWC virtual display without QC HWC copy

* QC media encoder appears to be incapable of switching between RGBA8888
  buffers and NV12_ENCODEABLE dynamically. This requires that we switch
  the entire stack to use the QC opaque format, or RGBA8888.

REF: CRACKLING-938
Change-Id: Ibd6a8faf8d268d3bfb4d61e4118a778ed82f1ab5
This commit is contained in:
Ethan Chen 2016-02-10 17:12:02 -08:00
parent 5cb1d7fab2
commit 4711655682

View File

@ -175,8 +175,14 @@ bool DisplayUtils::canAllocateHwcDisplayIdForVDS(int usage) {
int flag_mask = 0xffffffff; int flag_mask = 0xffffffff;
#ifdef QTI_BSP #ifdef QTI_BSP
#ifdef FORCE_HWC_COPY_FOR_VIRTUAL_DISPLAYS
// Reserve hardware acceleration for WFD use-case // Reserve hardware acceleration for WFD use-case
flag_mask = GRALLOC_USAGE_PRIVATE_WFD; flag_mask = GRALLOC_USAGE_PRIVATE_WFD;
#else
// Don't allocate HWC display unless we force HWC copy, otherwise
// incompatible buffers are sent to the media stack
flag_mask = 0;
#endif
#endif #endif
return (usage & flag_mask); return (usage & flag_mask);