Merge "sdm: Add partial framebuffer roi info into dumpsys."
diff --git a/sdm/include/private/hw_info_types.h b/sdm/include/private/hw_info_types.h
index 3f0d814..6b7d321 100644
--- a/sdm/include/private/hw_info_types.h
+++ b/sdm/include/private/hw_info_types.h
@@ -454,14 +454,15 @@
std::vector<Layer> hw_layers = {}; // Layers which need to be programmed on the HW
- uint32_t index[kMaxSDELayers]; // Indexes of the layers from the layer stack which need to be
- // programmed on hardware.
+ uint32_t index[kMaxSDELayers] = {}; // Indexes of the layers from the layer stack which need to
+ // be programmed on hardware.
uint32_t roi_index[kMaxSDELayers] = {0}; // Stores the ROI index where the layers are visible.
int sync_handle = -1;
- std::vector<LayerRect> left_frame_roi; // Left ROI.
- std::vector<LayerRect> right_frame_roi; // Right ROI.
+ std::vector<LayerRect> left_frame_roi = {}; // Left ROI.
+ std::vector<LayerRect> right_frame_roi = {}; // Right ROI.
+ LayerRect partial_fb_roi = {}; // Damaged area in framebuffer.
bool roi_split = false; // Indicates separated left and right ROI
diff --git a/sdm/libs/core/display_base.cpp b/sdm/libs/core/display_base.cpp
index c1fbf09..3378559 100644
--- a/sdm/libs/core/display_base.cpp
+++ b/sdm/libs/core/display_base.cpp
@@ -560,6 +560,12 @@
}
}
+ LayerRect &fb_roi = layer_info.partial_fb_roi;
+ if (IsValid(fb_roi)) {
+ DumpImpl::AppendString(buffer, length, "\nPartial FB ROI(L T R B) : (%d %d %d %d)",
+ INT(fb_roi.left), INT(fb_roi.top), INT(fb_roi.right), INT(fb_roi.bottom));
+ }
+
const char *header = "\n| Idx | Comp Type | Split | WB | Pipe | W x H | Format | Src Rect (L T R B) | Dst Rect (L T R B) | Z | Flags | Deci(HxV) | CS | Rng |"; //NOLINT
const char *newline = "\n|-----|-------------|--------|----|--------|-------------|--------------------------|---------------------|---------------------|----|------------|-----------|----|-----|"; //NOLINT
const char *format = "\n| %3s | %11s " "| %6s " "| %2s | 0x%04x | %4d x %4d | %24s " "| %4d %4d %4d %4d " "| %4d %4d %4d %4d " "| %2s | %10s " "| %9s | %2s | %3s |"; //NOLINT