summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Kumar K R <akumarkr@codeaurora.org>2021-05-05 10:11:25 +0530
committerPadmanabhan Komanduru <pkomandu@codeaurora.org>2021-09-07 12:25:12 +0530
commitd533c46ca41771e8f9b991922e522061a691d2b5 (patch)
treed21ef93150e61bf71843fca90a8c4b0759851889
parent56fb1052841d19f3619289f6e0ae12c6424c2018 (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.h2
-rw-r--r--sdm/include/private/rc_intf.h4
-rw-r--r--sdm/libs/core/display_base.cpp18
-rw-r--r--sdm/libs/core/display_base.h1
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