Loading services/surfaceflinger/DisplayHardware/HWComposer.cpp +14 −0 Original line number Diff line number Diff line Loading @@ -422,6 +422,10 @@ status_t HWComposer::prepare(DisplayDevice& displayDevice) { Mutex::Autolock _l(mDisplayLock); auto displayId = displayDevice.getHwcDisplayId(); if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { ALOGV("Skipping HWComposer prepare for non-HWC display"); return NO_ERROR; } if (!isValidDisplay(displayId)) { return BAD_INDEX; } Loading Loading @@ -515,6 +519,11 @@ status_t HWComposer::prepare(DisplayDevice& displayDevice) { } bool HWComposer::hasDeviceComposition(int32_t displayId) const { if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { // Displays without a corresponding HWC display are never composed by // the device return false; } if (!isValidDisplay(displayId)) { ALOGE("hasDeviceComposition: Invalid display %d", displayId); return false; Loading @@ -523,6 +532,11 @@ bool HWComposer::hasDeviceComposition(int32_t displayId) const { } bool HWComposer::hasClientComposition(int32_t displayId) const { if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { // Displays without a corresponding HWC display are always composed by // the client return true; } if (!isValidDisplay(displayId)) { ALOGE("hasClientComposition: Invalid display %d", displayId); return true; Loading services/surfaceflinger/Layer.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -1053,8 +1053,13 @@ void Layer::setCompositionType(int32_t hwcId, HWC2::Composition type, } HWC2::Composition Layer::getCompositionType(int32_t hwcId) const { if (hwcId == DisplayDevice::DISPLAY_ID_INVALID) { // If we're querying the composition type for a display that does not // have a HWC counterpart, then it will always be Client return HWC2::Composition::Client; } if (mHwcLayers.count(hwcId) == 0) { ALOGE("getCompositionType called without a valid HWC layer"); ALOGE("getCompositionType called with an invalid HWC layer"); return HWC2::Composition::Invalid; } return mHwcLayers.at(hwcId).compositionType; Loading Loading
services/surfaceflinger/DisplayHardware/HWComposer.cpp +14 −0 Original line number Diff line number Diff line Loading @@ -422,6 +422,10 @@ status_t HWComposer::prepare(DisplayDevice& displayDevice) { Mutex::Autolock _l(mDisplayLock); auto displayId = displayDevice.getHwcDisplayId(); if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { ALOGV("Skipping HWComposer prepare for non-HWC display"); return NO_ERROR; } if (!isValidDisplay(displayId)) { return BAD_INDEX; } Loading Loading @@ -515,6 +519,11 @@ status_t HWComposer::prepare(DisplayDevice& displayDevice) { } bool HWComposer::hasDeviceComposition(int32_t displayId) const { if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { // Displays without a corresponding HWC display are never composed by // the device return false; } if (!isValidDisplay(displayId)) { ALOGE("hasDeviceComposition: Invalid display %d", displayId); return false; Loading @@ -523,6 +532,11 @@ bool HWComposer::hasDeviceComposition(int32_t displayId) const { } bool HWComposer::hasClientComposition(int32_t displayId) const { if (displayId == DisplayDevice::DISPLAY_ID_INVALID) { // Displays without a corresponding HWC display are always composed by // the client return true; } if (!isValidDisplay(displayId)) { ALOGE("hasClientComposition: Invalid display %d", displayId); return true; Loading
services/surfaceflinger/Layer.cpp +6 −1 Original line number Diff line number Diff line Loading @@ -1053,8 +1053,13 @@ void Layer::setCompositionType(int32_t hwcId, HWC2::Composition type, } HWC2::Composition Layer::getCompositionType(int32_t hwcId) const { if (hwcId == DisplayDevice::DISPLAY_ID_INVALID) { // If we're querying the composition type for a display that does not // have a HWC counterpart, then it will always be Client return HWC2::Composition::Client; } if (mHwcLayers.count(hwcId) == 0) { ALOGE("getCompositionType called without a valid HWC layer"); ALOGE("getCompositionType called with an invalid HWC layer"); return HWC2::Composition::Invalid; } return mHwcLayers.at(hwcId).compositionType; Loading