Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b18403f authored by Ady Abraham's avatar Ady Abraham Committed by Android (Google) Code Review
Browse files

Merge "SF: do not update mLastUpdatedTime for SetFrameRate" into main

parents c8c4df5b f8fdc458
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -55,10 +55,10 @@ void LayerInfo::setLastPresentTime(nsecs_t lastPresentTime, nsecs_t now, LayerUp
                                   bool pendingModeChange, const LayerProps& props) {
    lastPresentTime = std::max(lastPresentTime, static_cast<nsecs_t>(0));

    mLastUpdatedTime = std::max(lastPresentTime, now);
    *mLayerProps = props;
    switch (updateType) {
        case LayerUpdateType::AnimationTX:
            mLastUpdatedTime = std::max(lastPresentTime, now);
            mLastAnimationTime = std::max(lastPresentTime, now);
            break;
        case LayerUpdateType::SetFrameRate:
@@ -67,6 +67,7 @@ void LayerInfo::setLastPresentTime(nsecs_t lastPresentTime, nsecs_t now, LayerUp
            }
            FALLTHROUGH_INTENDED;
        case LayerUpdateType::Buffer:
            mLastUpdatedTime = std::max(lastPresentTime, now);
            FrameTimeData frameTime = {.presentTime = lastPresentTime,
                                       .queueTime = mLastUpdatedTime,
                                       .pendingModeChange = pendingModeChange,
+1 −7
Original line number Diff line number Diff line
@@ -663,13 +663,7 @@ void Scheduler::onLayerDestroyed(Layer* layer) {

void Scheduler::recordLayerHistory(int32_t id, const LayerProps& layerProps, nsecs_t presentTime,
                                   nsecs_t now, LayerHistory::LayerUpdateType updateType) {
    const auto& selectorPtr = pacesetterSelectorPtr();
    // Skip recording layer history on LayerUpdateType::SetFrameRate for MRR devices when the
    // dVRR vote types are guarded (disabled) for MRR. This is to avoid activity when setting dVRR
    // vote types.
    if (selectorPtr->canSwitch() &&
        (updateType != LayerHistory::LayerUpdateType::SetFrameRate ||
         layerProps.setFrameRateVote.isVoteValidForMrr(selectorPtr->isVrrDevice()))) {
    if (pacesetterSelectorPtr()->canSwitch()) {
        mLayerHistory.record(id, layerProps, presentTime, now, updateType);
    }
}