Lines Matching refs:disp
171 DisplayData& disp(mDisplayData[HWC_DISPLAY_PRIMARY]); in HWComposer() local
172 disp.connected = true; in HWComposer()
173 disp.format = mFbDev->format; in HWComposer()
180 disp.configs.push_back(config); in HWComposer()
181 disp.currentConfig = 0; in HWComposer()
263 void HWComposer::hook_vsync(const struct hwc_procs* procs, int disp, in hook_vsync() argument
267 ctx->hwc->vsync(disp, timestamp); in hook_vsync()
270 void HWComposer::hook_hotplug(const struct hwc_procs* procs, int disp, in hook_hotplug() argument
274 ctx->hwc->hotplug(disp, connected); in hook_hotplug()
281 void HWComposer::vsync(int disp, int64_t timestamp) { in vsync() argument
282 if (uint32_t(disp) < HWC_NUM_PHYSICAL_DISPLAY_TYPES) { in vsync()
290 if (timestamp == mLastHwVSync[disp]) { in vsync()
296 mLastHwVSync[disp] = timestamp; in vsync()
300 snprintf(tag, sizeof(tag), "HW_VSYNC_%1u", disp); in vsync()
301 ATRACE_INT(tag, ++mVSyncCounts[disp] & 1); in vsync()
303 mEventHandler.onVSyncReceived(disp, timestamp); in vsync()
307 void HWComposer::hotplug(int disp, int connected) { in hotplug() argument
308 if (disp >= VIRTUAL_DISPLAY_ID_BASE) { in hotplug()
310 disp, connected); in hotplug()
313 queryDisplayProperties(disp); in hotplug()
315 if (disp != HWC_DISPLAY_PRIMARY) { in hotplug()
316 mEventHandler.onHotplugReceived(disp, bool(connected)); in hotplug()
353 status_t HWComposer::queryDisplayProperties(int disp) { in queryDisplayProperties() argument
364 status_t err = mHwc->getDisplayConfigs(mHwc, disp, configs, &numConfigs); in queryDisplayProperties()
367 mDisplayData[disp].connected = false; in queryDisplayProperties()
371 mDisplayData[disp].currentConfig = 0; in queryDisplayProperties()
373 err = mHwc->getDisplayAttributes(mHwc, disp, configs[c], in queryDisplayProperties()
378 err = mHwc->getDisplayAttributes(mHwc, disp, configs[c], in queryDisplayProperties()
383 mDisplayData[disp].connected = false; in queryDisplayProperties()
421 mDisplayData[disp].configs.push_back(config); in queryDisplayProperties()
425 mDisplayData[disp].format = HAL_PIXEL_FORMAT_RGBA_8888; in queryDisplayProperties()
426 mDisplayData[disp].connected = true; in queryDisplayProperties()
470 nsecs_t HWComposer::getRefreshTimestamp(int disp) const { in getRefreshTimestamp()
476 size_t configId = mDisplayData[disp].currentConfig; in getRefreshTimestamp()
477 return now - ((now - mLastHwVSync[disp]) % in getRefreshTimestamp()
478 mDisplayData[disp].configs[configId].refresh); in getRefreshTimestamp()
481 sp<Fence> HWComposer::getDisplayFence(int disp) const { in getDisplayFence()
482 return mDisplayData[disp].lastDisplayFence; in getDisplayFence()
485 uint32_t HWComposer::getFormat(int disp) const { in getFormat()
486 if (static_cast<uint32_t>(disp) >= MAX_HWC_DISPLAYS || !mAllocatedDisplayIDs.hasBit(disp)) { in getFormat()
489 return mDisplayData[disp].format; in getFormat()
493 bool HWComposer::isConnected(int disp) const { in isConnected()
494 return mDisplayData[disp].connected; in isConnected()
497 uint32_t HWComposer::getWidth(int disp) const { in getWidth()
498 size_t currentConfig = mDisplayData[disp].currentConfig; in getWidth()
499 return mDisplayData[disp].configs[currentConfig].width; in getWidth()
502 uint32_t HWComposer::getHeight(int disp) const { in getHeight()
503 size_t currentConfig = mDisplayData[disp].currentConfig; in getHeight()
504 return mDisplayData[disp].configs[currentConfig].height; in getHeight()
507 float HWComposer::getDpiX(int disp) const { in getDpiX()
508 size_t currentConfig = mDisplayData[disp].currentConfig; in getDpiX()
509 return mDisplayData[disp].configs[currentConfig].xdpi; in getDpiX()
512 float HWComposer::getDpiY(int disp) const { in getDpiY()
513 size_t currentConfig = mDisplayData[disp].currentConfig; in getDpiY()
514 return mDisplayData[disp].configs[currentConfig].ydpi; in getDpiY()
517 nsecs_t HWComposer::getRefreshPeriod(int disp) const { in getRefreshPeriod()
518 size_t currentConfig = mDisplayData[disp].currentConfig; in getRefreshPeriod()
519 return mDisplayData[disp].configs[currentConfig].refresh; in getRefreshPeriod()
522 const Vector<HWComposer::DisplayConfig>& HWComposer::getConfigs(int disp) const { in getConfigs()
523 return mDisplayData[disp].configs; in getConfigs()
526 size_t HWComposer::getCurrentConfig(int disp) const { in getCurrentConfig()
527 return mDisplayData[disp].currentConfig; in getCurrentConfig()
530 void HWComposer::eventControl(int disp, int event, int enabled) { in eventControl() argument
531 if (uint32_t(disp)>31 || !mAllocatedDisplayIDs.hasBit(disp)) { in eventControl()
533 event, disp, enabled); in eventControl()
538 event, disp, enabled); in eventControl()
550 const int32_t oldValue = mDisplayData[disp].events & eventBit; in eventControl()
553 err = mHwc->eventControl(mHwc, disp, event, enabled); in eventControl()
555 int32_t& events(mDisplayData[disp].events); in eventControl()
559 snprintf(tag, sizeof(tag), "HW_VSYNC_ON_%1u", disp); in eventControl()
580 DisplayData& disp(mDisplayData[id]); in createWorkList() local
585 if (disp.capacity < numLayers || disp.list == NULL) { in createWorkList()
588 free(disp.list); in createWorkList()
589 disp.list = (hwc_display_contents_1_t*)malloc(size); in createWorkList()
590 disp.capacity = numLayers; in createWorkList()
593 disp.framebufferTarget = &disp.list->hwLayers[numLayers - 1]; in createWorkList()
594 memset(disp.framebufferTarget, 0, sizeof(hwc_layer_1_t)); in createWorkList()
596 disp.configs[disp.currentConfig]; in createWorkList()
599 disp.framebufferTarget->compositionType = HWC_FRAMEBUFFER_TARGET; in createWorkList()
600 disp.framebufferTarget->hints = 0; in createWorkList()
601 disp.framebufferTarget->flags = 0; in createWorkList()
602 disp.framebufferTarget->handle = disp.fbTargetHandle; in createWorkList()
603 disp.framebufferTarget->transform = 0; in createWorkList()
604 disp.framebufferTarget->blending = HWC_BLENDING_PREMULT; in createWorkList()
606 disp.framebufferTarget->sourceCropf.left = 0; in createWorkList()
607 disp.framebufferTarget->sourceCropf.top = 0; in createWorkList()
608 disp.framebufferTarget->sourceCropf.right = in createWorkList()
610 disp.framebufferTarget->sourceCropf.bottom = in createWorkList()
613 disp.framebufferTarget->sourceCrop = r; in createWorkList()
615 disp.framebufferTarget->displayFrame = r; in createWorkList()
616 disp.framebufferTarget->visibleRegionScreen.numRects = 1; in createWorkList()
617 disp.framebufferTarget->visibleRegionScreen.rects = in createWorkList()
618 &disp.framebufferTarget->displayFrame; in createWorkList()
619 disp.framebufferTarget->acquireFenceFd = -1; in createWorkList()
620 disp.framebufferTarget->releaseFenceFd = -1; in createWorkList()
621 disp.framebufferTarget->planeAlpha = 0xFF; in createWorkList()
623 disp.list->retireFenceFd = -1; in createWorkList()
624 disp.list->flags = HWC_GEOMETRY_CHANGED; in createWorkList()
625 disp.list->numHwLayers = numLayers; in createWorkList()
635 DisplayData& disp(mDisplayData[id]); in setFramebufferTarget() local
636 if (!disp.framebufferTarget) { in setFramebufferTarget()
650 disp.fbTargetHandle = buf->handle; in setFramebufferTarget()
651 disp.framebufferTarget->handle = disp.fbTargetHandle; in setFramebufferTarget()
652 disp.framebufferTarget->acquireFenceFd = acquireFenceFd; in setFramebufferTarget()
659 DisplayData& disp(mDisplayData[i]); in prepare() local
660 if (disp.framebufferTarget) { in prepare()
665 LOG_FATAL_IF(disp.list == NULL); in prepare()
666 disp.framebufferTarget->compositionType = HWC_FRAMEBUFFER_TARGET; in prepare()
668 if (!disp.connected && disp.list != NULL) { in prepare()
670 i, disp.list->numHwLayers); in prepare()
672 mLists[i] = disp.list; in prepare()
675 mLists[i]->outbuf = disp.outbufHandle; in prepare()
700 DisplayData& disp(mDisplayData[i]); in prepare() local
701 disp.hasFbComp = false; in prepare()
702 disp.hasOvComp = false; in prepare()
703 if (disp.list) { in prepare()
704 for (size_t i=0 ; i<disp.list->numHwLayers ; i++) { in prepare()
705 hwc_layer_1_t& l = disp.list->hwLayers[i]; in prepare()
714 disp.hasFbComp = true; in prepare()
717 disp.hasOvComp = true; in prepare()
720 disp.hasOvComp = true; in prepare()
723 if (disp.list->numHwLayers == (disp.framebufferTarget ? 1 : 0)) { in prepare()
724 disp.hasFbComp = true; in prepare()
727 disp.hasFbComp = true; in prepare()
752 const DisplayData& disp(mDisplayData[id]); in getAndResetReleaseFence() local
753 if (disp.framebufferTarget) { in getAndResetReleaseFence()
754 fd = disp.framebufferTarget->releaseFenceFd; in getAndResetReleaseFence()
755 disp.framebufferTarget->acquireFenceFd = -1; in getAndResetReleaseFence()
756 disp.framebufferTarget->releaseFenceFd = -1; in getAndResetReleaseFence()
774 DisplayData& disp(mDisplayData[i]); in commit() local
775 if (disp.outbufHandle) { in commit()
776 mLists[i]->outbuf = disp.outbufHandle; in commit()
778 disp.outbufAcquireFence->dup(); in commit()
785 DisplayData& disp(mDisplayData[i]); in commit() local
786 disp.lastDisplayFence = disp.lastRetireFence; in commit()
787 disp.lastRetireFence = Fence::NO_FENCE; in commit()
788 if (disp.list) { in commit()
789 if (disp.list->retireFenceFd != -1) { in commit()
790 disp.lastRetireFence = new Fence(disp.list->retireFenceFd); in commit()
791 disp.list->retireFenceFd = -1; in commit()
793 disp.list->flags &= ~HWC_GEOMETRY_CHANGED; in commit()
800 status_t HWComposer::setPowerMode(int disp, int mode) { in setPowerMode() argument
801 LOG_FATAL_IF(disp >= VIRTUAL_DISPLAY_ID_BASE); in setPowerMode()
804 eventControl(disp, HWC_EVENT_VSYNC, 0); in setPowerMode()
807 return (status_t)mHwc->setPowerMode(mHwc, disp, mode); in setPowerMode()
809 return (status_t)mHwc->blank(mHwc, disp, in setPowerMode()
816 status_t HWComposer::setActiveConfig(int disp, int mode) { in setActiveConfig() argument
817 LOG_FATAL_IF(disp >= VIRTUAL_DISPLAY_ID_BASE); in setActiveConfig()
818 DisplayData& dd(mDisplayData[disp]); in setActiveConfig()
821 return (status_t)mHwc->setActiveConfig(mHwc, disp, mode); in setActiveConfig()
828 void HWComposer::disconnectDisplay(int disp) { in disconnectDisplay() argument
829 LOG_ALWAYS_FATAL_IF(disp < 0 || disp == HWC_DISPLAY_PRIMARY); in disconnectDisplay()
830 DisplayData& dd(mDisplayData[disp]); in disconnectDisplay()
897 DisplayData& disp(mDisplayData[id]); in setOutputBuffer() local
898 disp.outbufHandle = buf->handle; in setOutputBuffer()
899 disp.outbufAcquireFence = acquireFence; in setOutputBuffer()
1106 DisplayData& disp(mDisplayData[id]); in getLayerIterator() local
1107 if (!mHwc || !disp.list || index > disp.list->numHwLayers) { in getLayerIterator()
1110 if (disp.visibleRegions.size() < disp.list->numHwLayers) { in getLayerIterator()
1111 disp.visibleRegions.resize(disp.list->numHwLayers); in getLayerIterator()
1113 if (disp.surfaceDamageRegions.size() < disp.list->numHwLayers) { in getLayerIterator()
1114 disp.surfaceDamageRegions.resize(disp.list->numHwLayers); in getLayerIterator()
1116 return LayerListIterator(new HWCLayerVersion1(mHwc, disp.list->hwLayers, in getLayerIterator()
1117 &disp.visibleRegions, &disp.surfaceDamageRegions), index); in getLayerIterator()
1133 const DisplayData& disp(mDisplayData[id]); in end() local
1134 if (mHwc && disp.list) { in end()
1135 numLayers = disp.list->numHwLayers; in end()
1173 const DisplayData& disp(mDisplayData[i]); in dump() local
1174 if (!disp.connected) in dump()
1182 for (size_t c = 0; c < disp.configs.size(); ++c) { in dump()
1183 const DisplayConfig& config(disp.configs[c]); in dump()
1186 c == disp.currentConfig ? "* " : "", c, in dump()
1191 if (disp.list) { in dump()
1194 disp.list->numHwLayers, disp.list->flags); in dump()
1200 for (size_t i=0 ; i<disp.list->numHwLayers ; i++) { in dump()
1201 const hwc_layer_1_t&l = disp.list->hwLayers[i]; in dump()
1218 format = disp.format; in dump()