mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 16:50:18 +00:00
graphics: ignore/reduce spurious vsync in VTS
Bug: 62802718
Test: VTS
Change-Id: I1ed73e0b2f14414f540865a96e6bd5ac1599fbf3
(cherry picked from commit e0ff3e4a26)
This commit is contained in:
@@ -290,6 +290,11 @@ void ComposerClient::setVsyncEnabled(Display display, bool enabled) {
|
||||
: IComposerClient::Vsync::DISABLE;
|
||||
Error error = mClient->setVsyncEnabled(display, vsync);
|
||||
ASSERT_EQ(Error::NONE, error) << "failed to set vsync mode";
|
||||
|
||||
// give the hwbinder thread some time to handle any pending vsync callback
|
||||
if (!enabled) {
|
||||
usleep(5 * 1000);
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace tests
|
||||
|
||||
@@ -118,7 +118,7 @@ class GraphicsComposerCallback : public IComposerCallback {
|
||||
// the set of all currently connected displays
|
||||
std::unordered_set<Display> mDisplays;
|
||||
// true only when vsync is enabled
|
||||
bool mVsyncAllowed = false;
|
||||
bool mVsyncAllowed = true;
|
||||
|
||||
// track invalid callbacks
|
||||
int mInvalidHotplugCount = 0;
|
||||
@@ -137,6 +137,10 @@ class GraphicsComposerHidlTest : public ::testing::VtsHalHidlTargetTestBase {
|
||||
|
||||
// assume the first display is primary and is never removed
|
||||
mPrimaryDisplay = waitForFirstDisplay();
|
||||
|
||||
// explicitly disable vsync
|
||||
mComposerClient->setVsyncEnabled(mPrimaryDisplay, false);
|
||||
mComposerCallback->setVsyncAllowed(false);
|
||||
}
|
||||
|
||||
void TearDown() override {
|
||||
|
||||
Reference in New Issue
Block a user