diff options
author | Arun Kumar K R <akumarkr@codeaurora.org> | 2021-05-05 10:11:25 +0530 |
---|---|---|
committer | Padmanabhan Komanduru <pkomandu@codeaurora.org> | 2021-09-07 12:25:12 +0530 |
commit | d533c46ca41771e8f9b991922e522061a691d2b5 (patch) | |
tree | d21ef93150e61bf71843fca90a8c4b0759851889 | |
parent | 56fb1052841d19f3619289f6e0ae12c6424c2018 (diff) |
sdm: Remove PU status handling for RC
Driver can now handle the PU with RC based on the ROI, hence
remove the changes in HAL which was setting the PU status to
driver.
Change-Id: I232128b5d3be156bc0aa9486f63ae9c325c0c285
-rw-r--r-- | sdm/include/private/hw_info_types.h | 2 | ||||
-rw-r--r-- | sdm/include/private/rc_intf.h | 4 | ||||
-rw-r--r-- | sdm/libs/core/display_base.cpp | 18 | ||||
-rw-r--r-- | sdm/libs/core/display_base.h | 1 |
4 files changed, 2 insertions, 23 deletions
diff --git a/sdm/include/private/hw_info_types.h b/sdm/include/private/hw_info_types.h index b3ee37ed..342ab09b 100644 --- a/sdm/include/private/hw_info_types.h +++ b/sdm/include/private/hw_info_types.h @@ -715,8 +715,6 @@ struct HWLayersInfo { bool game_present = false; // Indicates there is game layer or not bool rc_config = false; RCLayersInfo rc_layers_info = {}; - uint64_t rc_pu_flag_status = 0; - bool rc_pu_needs_full_roi = false; }; struct HWQosData { diff --git a/sdm/include/private/rc_intf.h b/sdm/include/private/rc_intf.h index 31c99a35..a43e5633 100644 --- a/sdm/include/private/rc_intf.h +++ b/sdm/include/private/rc_intf.h @@ -36,8 +36,6 @@ #include "generic_intf.h" #include "generic_payload.h" -#define SDE_HW_PU_USECASE 0x1000 - namespace sdm { struct RCInputConfig { @@ -69,7 +67,7 @@ enum RCMaskStackStatus { struct RCMaskCfgState { RCMaskStackStatus rc_mask_state = kStatusIgnore; - bool rc_pu_full_roi = false; + bool rc_pu_full_roi = false; // Unused, as driver is handling PU }; // RC specific params as enum diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp index 377a18dd..8cccbf98 100644 --- a/sdm/libs/core/display_base.cpp +++ b/sdm/libs/core/display_base.cpp @@ -367,7 +367,6 @@ DisplayError DisplayBase::Prepare(LayerStack *layer_stack) { hw_layers_.updates_mask.set(kUpdateResources); comp_manager_->GenerateROI(display_comp_ctx_, &hw_layers_); - rc_pu_flag_status_ = hw_layers_.info.rc_pu_flag_status; comp_manager_->PrePrepare(display_comp_ctx_, &hw_layers_); @@ -477,21 +476,13 @@ DisplayError DisplayBase::Commit(LayerStack *layer_stack) { if (rc_panel_feature_init_) { GenericPayload in, out; RCMaskCfgState *mask_status = nullptr; - uint64_t *rc_pu_flag_status = nullptr; int ret = -1; ret = out.CreatePayload<RCMaskCfgState>(mask_status); if (ret) { DLOGE("failed to create the payload. Error:%d", ret); return kErrorUndefined; } - ret = in.CreatePayload<uint64_t>(rc_pu_flag_status); - if (ret) { - DLOGE("failed to create the payload. Error:%d", ret); - return kErrorUndefined; - } - *rc_pu_flag_status = rc_pu_flag_status_; ret = rc_core_->ProcessOps(kRCFeatureCommit, in, &out); - hw_layers_.info.rc_pu_needs_full_roi = (*mask_status).rc_pu_full_roi; if (ret) { // If RC commit failed, fall back to default (GPU/SDE pipes) drawing of "handled" mask layers. DLOGW("Failed to set the data on driver for display: %d-%d, Error: %d, status: %d", @@ -508,14 +499,7 @@ DisplayError DisplayBase::Commit(LayerStack *layer_stack) { return kErrorNotValidated; } } else { - DLOGI_IF(kTagDisplay, "Status of RC mask data: %d., pu_rc_status_: 0x%" PRIx64, - (*mask_status).rc_mask_state, rc_pu_flag_status_); - if ((*mask_status).rc_pu_full_roi) { - if (rc_pu_flag_status_ && rc_pu_flag_status_ != SDE_HW_PU_USECASE) { - needs_validate_ = true; - return kErrorNotValidated; - } - } + DLOGI_IF(kTagDisplay, "Status of RC mask data: %d.", (*mask_status).rc_mask_state); if ((*mask_status).rc_mask_state == kStatusRcMaskStackDirty) { needs_validate_ = true; DLOGI_IF(kTagDisplay, "Mask is ready for display %d-%d, call Corresponding Prepare()", diff --git a/sdm/libs/core/display_base.h b/sdm/libs/core/display_base.h index 3473fcb0..69036fb1 100644 --- a/sdm/libs/core/display_base.h +++ b/sdm/libs/core/display_base.h @@ -274,7 +274,6 @@ class DisplayBase : public DisplayInterface { unsigned int rc_cached_res_width_ = 0; unsigned int rc_cached_res_height_ = 0; std::unique_ptr<RCIntf> rc_core_ = nullptr; - uint64_t rc_pu_flag_status_ = 0; }; } // namespace sdm |