mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 11:36:00 +00:00
configstore: add new configuration item
This change adds to configstore@1.0 HAL a new configuration item
for surfaceflinger; useTripleFramebuffer()
In the default implementation, useTripleFramebuffer() will return true
only if the build flag NUM_FRAMEBUFFER_SURFACE_BUFFERS is defined as 3.
Bug: 34723491
Test: build & run. log message "SurfaceFlinger FrameBuffer: ?"
should be seen.
Change-Id: Iac97e25cd69717c73a135f6b2a44538124544987
This commit is contained in:
@@ -17,4 +17,5 @@ package android.hardware.configstore@1.0;
|
||||
|
||||
interface ISurfaceFlingerConfigs {
|
||||
vsyncEventPhaseOffsetNs() generates (OptionalInt64 value);
|
||||
useTripleFramebuffer() generates (OptionalBool value);
|
||||
};
|
||||
|
||||
@@ -19,6 +19,15 @@ Return<void> SurfaceFlingerConfigs::vsyncEventPhaseOffsetNs(vsyncEventPhaseOffse
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> SurfaceFlingerConfigs::useTripleFramebuffer(useTripleFramebuffer_cb _hidl_cb) {
|
||||
bool value = false;
|
||||
#ifdef USE_TRIPLE_FRAMEBUFFER
|
||||
value = true;
|
||||
#endif
|
||||
_hidl_cb({true, value});
|
||||
LOG(INFO) << "SurfaceFlinger FrameBuffer: " << (value ? "triple" : "double");
|
||||
return Void();
|
||||
}
|
||||
|
||||
// Methods from ::android::hidl::base::V1_0::IBase follow.
|
||||
|
||||
|
||||
@@ -25,6 +25,7 @@ using ::android::sp;
|
||||
struct SurfaceFlingerConfigs : public ISurfaceFlingerConfigs {
|
||||
// Methods from ::android::hardware::configstore::V1_0::ISurfaceFlingerConfigs follow.
|
||||
Return<void> vsyncEventPhaseOffsetNs(vsyncEventPhaseOffsetNs_cb _hidl_cb) override;
|
||||
Return<void> useTripleFramebuffer(useTripleFramebuffer_cb _hidl_cb) override;
|
||||
|
||||
// Methods from ::android::hidl::base::V1_0::IBase follow.
|
||||
|
||||
|
||||
@@ -4,3 +4,7 @@ LOCAL_SRC_FILES += SurfaceFlingerConfigs.cpp
|
||||
ifneq ($(VSYNC_EVENT_PHASE_OFFSET_NS),)
|
||||
LOCAL_CFLAGS += -DVSYNC_EVENT_PHASE_OFFSET_NS=$(VSYNC_EVENT_PHASE_OFFSET_NS)
|
||||
endif
|
||||
|
||||
ifeq ($(NUM_FRAMEBUFFER_SURFACE_BUFFERS),3)
|
||||
LOCAL_CFLAGS += -DUSE_TRIPLE_FRAMEBUFFER
|
||||
endif
|
||||
|
||||
Reference in New Issue
Block a user