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

Commit e0bd3251 authored by Dominik Laskowski's avatar Dominik Laskowski Committed by Android (Google) Code Review
Browse files

Merge "SF: Add details to setDesiredMode trace and log" into main

parents 74962b78 f5c21512
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

#pragma once

#include <android-base/stringprintf.h>
#include <ftl/non_null.h>

#include <scheduler/FrameRateMode.h>
@@ -36,4 +37,10 @@ inline bool operator==(const DisplayModeRequest& lhs, const DisplayModeRequest&
    return lhs.mode == rhs.mode && lhs.emitEvent == rhs.emitEvent;
}

inline std::string to_string(const DisplayModeRequest& request) {
    constexpr const char* kBool[] = {"false", "true"};
    return base::StringPrintf("{mode=%s, emitEvent=%s, force=%s}", to_string(request.mode).c_str(),
                              kBool[request.emitEvent], kBool[request.force]);
}

} // namespace android::display
+4 −11
Original line number Diff line number Diff line
@@ -530,16 +530,8 @@ void DisplayDevice::animateOverlay() {
}

auto DisplayDevice::setDesiredMode(display::DisplayModeRequest&& desiredMode) -> DesiredModeAction {
    ATRACE_CALL();

    const auto& desiredModePtr = desiredMode.mode.modePtr;

    LOG_ALWAYS_FATAL_IF(getPhysicalId() != desiredModePtr->getPhysicalDisplayId(),
                        "DisplayId mismatch");

    // TODO (b/318533819): Stringize DisplayModeRequest.
    ALOGD("%s(%s, force=%s)", __func__, to_string(*desiredModePtr).c_str(),
          desiredMode.force ? "true" : "false");
    ATRACE_NAME(concatId(__func__).c_str());
    ALOGD("%s %s", concatId(__func__).c_str(), to_string(desiredMode).c_str());

    std::scoped_lock lock(mDesiredModeLock);
    if (mDesiredModeOpt) {
@@ -556,7 +548,8 @@ auto DisplayDevice::setDesiredMode(display::DisplayModeRequest&& desiredMode) ->

    // If the desired mode is already active...
    const auto activeMode = refreshRateSelector().getActiveMode();
    if (!desiredMode.force && activeMode.modePtr->getId() == desiredModePtr->getId()) {
    if (const auto& desiredModePtr = desiredMode.mode.modePtr;
        !desiredMode.force && activeMode.modePtr->getId() == desiredModePtr->getId()) {
        if (activeMode == desiredMode.mode) {
            return DesiredModeAction::None;
        }