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

Commit 85bd15dd authored by Xiang Wang's avatar Xiang Wang Committed by Android (Google) Code Review
Browse files

Merge "Add debug log on Power HAL support and connection status" into tm-dev

parents 3356367c 65a2e6f9
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -564,6 +564,7 @@ PowerAdvisor::HalWrapper* PowerAdvisor::getPowerHal() {
        if (!wrapper->shouldReconnectHAL()) {
        if (!wrapper->shouldReconnectHAL()) {
            return wrapper;
            return wrapper;
        }
        }
        ALOGD("Reconnecting Power HAL");
        sHalWrapper = nullptr;
        sHalWrapper = nullptr;
    }
    }


@@ -576,7 +577,9 @@ PowerAdvisor::HalWrapper* PowerAdvisor::getPowerHal() {
    // If that didn't succeed, attempt to connect to the HIDL Power HAL
    // If that didn't succeed, attempt to connect to the HIDL Power HAL
    if (sHalWrapper == nullptr) {
    if (sHalWrapper == nullptr) {
        sHalWrapper = HidlPowerHalWrapper::connect();
        sHalWrapper = HidlPowerHalWrapper::connect();
    } else { // if AIDL, pass on any existing hint session values
    } else {
        ALOGD("Successfully connecting AIDL Power HAL");
        // if AIDL, pass on any existing hint session values
        // thread ids always safe to set
        // thread ids always safe to set
        sHalWrapper->setPowerHintSessionThreadIds(oldPowerHintSessionThreadIds);
        sHalWrapper->setPowerHintSessionThreadIds(oldPowerHintSessionThreadIds);
        // only set duration and start if duration is defined
        // only set duration and start if duration is defined
+2 −1
Original line number Original line Diff line number Diff line
@@ -96,7 +96,8 @@ int64_t FlagManager::demo_flag() const {
}
}


bool FlagManager::use_adpf_cpu_hint() const {
bool FlagManager::use_adpf_cpu_hint() const {
    std::optional<bool> sysPropVal = std::nullopt;
    std::optional<bool> sysPropVal =
            doParse<bool>(base::GetProperty("debug.sf.enable_adpf_cpu_hint", "").c_str());
    return getValue("AdpfFeature__adpf_cpu_hint", sysPropVal, false);
    return getValue("AdpfFeature__adpf_cpu_hint", sysPropVal, false);
}
}


+6 −2
Original line number Original line Diff line number Diff line
@@ -675,8 +675,12 @@ void SurfaceFlinger::bootFinished() {


        readPersistentProperties();
        readPersistentProperties();
        mPowerAdvisor->onBootFinished();
        mPowerAdvisor->onBootFinished();
        mPowerAdvisor->enablePowerHint(mFlagManager.use_adpf_cpu_hint());
        const bool powerHintEnabled = mFlagManager.use_adpf_cpu_hint();
        if (mPowerAdvisor->usePowerHintSession()) {
        mPowerAdvisor->enablePowerHint(powerHintEnabled);
        const bool powerHintUsed = mPowerAdvisor->usePowerHintSession();
        ALOGD("Power hint is %s",
              powerHintUsed ? "supported" : (powerHintEnabled ? "unsupported" : "disabled"));
        if (powerHintUsed) {
            std::optional<pid_t> renderEngineTid = getRenderEngine().getRenderEngineTid();
            std::optional<pid_t> renderEngineTid = getRenderEngine().getRenderEngineTid();
            std::vector<int32_t> tidList;
            std::vector<int32_t> tidList;
            tidList.emplace_back(gettid());
            tidList.emplace_back(gettid());