diff --git a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/BufferAheadResult.aidl b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/BufferAheadResult.aidl deleted file mode 100644 index 94fd91b2fa..0000000000 --- a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/BufferAheadResult.aidl +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Copyright (c) 2022, The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/////////////////////////////////////////////////////////////////////////////// -// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. // -/////////////////////////////////////////////////////////////////////////////// - -// This file is a snapshot of an AIDL file. Do not edit it manually. There are -// two cases: -// 1). this is a frozen version file - do not edit this in any case. -// 2). this is a 'current' file. If you make a backwards compatible change to -// the interface (from the latest frozen version), the build system will -// prompt you to update this file with `m -update-api`. -// -// You must not make a backward incompatible change to any AIDL file built -// with the aidl_interface module type with versions property set. The module -// type is used to build AIDL files in a way that they can be used across -// independently updatable components of the system. If a device is shipped -// with such a backward incompatible change, it has a high risk of breaking -// later when a module using the interface is updated, e.g., Mainline modules. - -package android.hardware.graphics.composer3; -@VintfStability -parcelable BufferAheadResult { - long display; - android.hardware.graphics.composer3.BufferAheadResult.Layer[] layers; - @VintfStability - parcelable Layer { - long layer; - boolean presented; - } -} diff --git a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/Capability.aidl b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/Capability.aidl index e989b6c24d..9c49583fd2 100644 --- a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/Capability.aidl +++ b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/Capability.aidl @@ -39,5 +39,4 @@ enum Capability { SKIP_CLIENT_COLOR_TRANSFORM = 2, PRESENT_FENCE_IS_NOT_RELIABLE = 3, SKIP_VALIDATE = 4, - BUFFER_AHEAD = 5, } diff --git a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/CommandResultPayload.aidl b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/CommandResultPayload.aidl index fb39172dd9..ebbb31e59f 100644 --- a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/CommandResultPayload.aidl +++ b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/CommandResultPayload.aidl @@ -39,7 +39,6 @@ union CommandResultPayload { android.hardware.graphics.composer3.DisplayRequest displayRequest; android.hardware.graphics.composer3.PresentFence presentFence; android.hardware.graphics.composer3.ReleaseFences releaseFences; - android.hardware.graphics.composer3.BufferAheadResult bufferAheadResult; android.hardware.graphics.composer3.PresentOrValidate presentOrValidateResult; android.hardware.graphics.composer3.ClientTargetPropertyWithNits clientTargetProperty; } diff --git a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/LayerCommand.aidl b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/LayerCommand.aidl index 1429c3511f..c1c01172c1 100644 --- a/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/LayerCommand.aidl +++ b/graphics/composer/aidl/aidl_api/android.hardware.graphics.composer3/current/android/hardware/graphics/composer3/LayerCommand.aidl @@ -37,7 +37,6 @@ parcelable LayerCommand { long layer; @nullable android.hardware.graphics.common.Point cursorPosition; @nullable android.hardware.graphics.composer3.Buffer buffer; - @nullable android.hardware.graphics.composer3.Buffer bufferAhead; @nullable android.hardware.graphics.common.Rect[] damage; @nullable android.hardware.graphics.composer3.ParcelableBlendMode blendMode; @nullable android.hardware.graphics.composer3.Color color; diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/BufferAheadResult.aidl b/graphics/composer/aidl/android/hardware/graphics/composer3/BufferAheadResult.aidl deleted file mode 100644 index 7ca45784ec..0000000000 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/BufferAheadResult.aidl +++ /dev/null @@ -1,46 +0,0 @@ -/** - * Copyright (c) 2022, The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package android.hardware.graphics.composer3; - -@VintfStability -parcelable BufferAheadResult { - /** - * The display which this commands refers to. - * @see IComposer.createDisplay - */ - long display; - - @VintfStability - parcelable Layer { - /** - * The layer which this commands refers to. - * @see IComposer.createLayer - */ - long layer; - - /** - * Represents whether BufferAhead was presented as part of the last - * present or not. - */ - boolean presented; - } - - /** - * The layers which has BufferAheadResult populated. - */ - Layer[] layers; -} diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/Capability.aidl b/graphics/composer/aidl/android/hardware/graphics/composer3/Capability.aidl index 77ad1e0645..ea619aeaf3 100644 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/Capability.aidl +++ b/graphics/composer/aidl/android/hardware/graphics/composer3/Capability.aidl @@ -57,9 +57,4 @@ enum Capability { * validateDisplay step is needed. */ SKIP_VALIDATE = 4, - /** - * Specifies that a device is able to use the LayerCommand.bufferAhead - * when provided. - */ - BUFFER_AHEAD = 5 } diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/CommandResultPayload.aidl b/graphics/composer/aidl/android/hardware/graphics/composer3/CommandResultPayload.aidl index fd1e4cc30b..f2de68e025 100644 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/CommandResultPayload.aidl +++ b/graphics/composer/aidl/android/hardware/graphics/composer3/CommandResultPayload.aidl @@ -16,7 +16,6 @@ package android.hardware.graphics.composer3; -import android.hardware.graphics.composer3.BufferAheadResult; import android.hardware.graphics.composer3.ChangedCompositionTypes; import android.hardware.graphics.composer3.ClientTargetPropertyWithNits; import android.hardware.graphics.composer3.CommandError; @@ -78,13 +77,6 @@ union CommandResultPayload { */ ReleaseFences releaseFences; - /** - * Represents the result of the LayerCommand.bufferAhead that was - * sent in the last presentDisplay call. That is, the presentDisplay - * call prior to this presentDisplay. - */ - BufferAheadResult bufferAheadResult; - /** * Sets the state of PRESENT_OR_VALIDATE_DISPLAY command. */ diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/LayerCommand.aidl b/graphics/composer/aidl/android/hardware/graphics/composer3/LayerCommand.aidl index ab937948ab..6f6894fcdd 100644 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/LayerCommand.aidl +++ b/graphics/composer/aidl/android/hardware/graphics/composer3/LayerCommand.aidl @@ -69,30 +69,6 @@ parcelable LayerCommand { */ @nullable Buffer buffer; - /** - * Sets a buffer handle to be displayed for this layer and a file descriptor - * referring to an acquire sync fence object, which must be signaled when it is - * safe to read from the given buffer. - * - * When bufferAhead is provided, the implementation should try to - * present it on the next scanout as long as its acquire sync fence - * is signaled by that time. Otherwise the bufferAhead should be dropped. - * This allows the client to set an - * unsignaled buffer on the layer without causing the entire display to miss - * an update if the buffer is not ready by the next scanout time. - * - * In case bufferAhead is dropped and LayerCommand.buffer is provided, LayerCommand.buffer - * should be used as the next layer buffer. - * - * The implementation is expected to populate the CommandResultPayload.bufferAheadResult - * with information about whether bufferAhead was presented or dropped. - * Since this information is not known at the current presentDisplay call - * of frame N (as the scanout happens after the call returns), - * the implementation should populate it when presentDisplay is - * called for frame N+1. - */ - @nullable Buffer bufferAhead; - /** * Provides the region of the source buffer which has been modified since * the last frame. This region does not need to be validated before diff --git a/graphics/composer/aidl/android/hardware/graphics/composer3/vts/functional/VtsHalGraphicsComposer3_TargetTest.cpp b/graphics/composer/aidl/android/hardware/graphics/composer3/vts/functional/VtsHalGraphicsComposer3_TargetTest.cpp index 404b548dbf..17ec8854e9 100644 --- a/graphics/composer/aidl/android/hardware/graphics/composer3/vts/functional/VtsHalGraphicsComposer3_TargetTest.cpp +++ b/graphics/composer/aidl/android/hardware/graphics/composer3/vts/functional/VtsHalGraphicsComposer3_TargetTest.cpp @@ -984,7 +984,6 @@ class GraphicsComposerAidlCommandTest : public GraphicsComposerAidlTest { const auto errors = mReader.takeErrors(); ASSERT_TRUE(mReader.takeErrors().empty()); ASSERT_TRUE(mReader.takeChangedCompositionTypes(getPrimaryDisplayId()).empty()); - ASSERT_TRUE(mReader.takeBufferAheadResultLayers(getPrimaryDisplayId()).empty()); ASSERT_NO_FATAL_FAILURE(GraphicsComposerAidlTest::TearDown()); } diff --git a/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientReader.h b/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientReader.h index 8f8c98f7f0..f9e35e94e0 100644 --- a/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientReader.h +++ b/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientReader.h @@ -77,10 +77,6 @@ class ComposerClientReader { parseSetClientTargetProperty(std::move( result.get())); break; - case CommandResultPayload::Tag::bufferAheadResult: - parseSetBufferAheadResultLayers( - result.get()); - break; } } } @@ -172,16 +168,6 @@ class ComposerClientReader { return std::move(data.clientTargetProperty); } - std::vector takeBufferAheadResultLayers(int64_t display) { - const auto found = mReturnData.find(display); - - if (found == mReturnData.end()) { - return {}; - } - - return std::move(found->second.bufferAheadResultLayers); - } - private: void resetData() { mErrors.clear(); @@ -220,18 +206,12 @@ class ComposerClientReader { data.clientTargetProperty = std::move(clientTargetProperty); } - void parseSetBufferAheadResultLayers(const BufferAheadResult& bufferAheadResult) { - auto& data = mReturnData[bufferAheadResult.display]; - data.bufferAheadResultLayers = std::move(bufferAheadResult.layers); - } - struct ReturnData { DisplayRequest displayRequests; std::vector changedLayers; ndk::ScopedFileDescriptor presentFence; std::vector releasedLayers; PresentOrValidate::Result presentOrValidateState; - std::vector bufferAheadResultLayers; ClientTargetPropertyWithNits clientTargetProperty = { .clientTargetProperty = {common::PixelFormat::RGBA_8888, Dataspace::UNKNOWN}, diff --git a/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientWriter.h b/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientWriter.h index 02405ba70a..a04b9824c4 100644 --- a/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientWriter.h +++ b/graphics/composer/aidl/include/android/hardware/graphics/composer3/ComposerClientWriter.h @@ -131,11 +131,6 @@ class ComposerClientWriter { getLayerCommand(display, layer).buffer = getBuffer(slot, buffer, acquireFence); } - void setLayerBufferAhead(int64_t display, int64_t layer, uint32_t slot, - const native_handle_t* buffer, int acquireFence) { - getLayerCommand(display, layer).bufferAhead = getBuffer(slot, buffer, acquireFence); - } - void setLayerSurfaceDamage(int64_t display, int64_t layer, const std::vector& damage) { getLayerCommand(display, layer).damage.emplace(damage.begin(), damage.end()); }