From 845dc4ce852674f289e840f41e7814fab4126f8f Mon Sep 17 00:00:00 2001 From: Christopher Braga Date: Tue, 18 Oct 2022 17:49:36 -0400 Subject: [PATCH 1/2] gralloc: Introduce custom content metadata structure Introduce a structure definition for custom content metadata. This structure is intended to be used with the new dynamic memory region intended to store custom content metadata that exceeds the base 1KB region allocated. Change-Id: I66880102b4c441422bcd4a60923010098f641d8c --- gralloc/color_extensions.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 gralloc/color_extensions.h diff --git a/gralloc/color_extensions.h b/gralloc/color_extensions.h new file mode 100644 index 00000000..f670162b --- /dev/null +++ b/gralloc/color_extensions.h @@ -0,0 +1,18 @@ +/* +* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. +* SPDX-License-Identifier: BSD-3-Clause-Clear +*/ +#include + +#ifndef __COLOREXTENSIONS_H__ +#define __COLOREXTENSIONS_H__ + +#define CUSTOM_METADATA_SIZE_BYTES 1024*42 +typedef struct CustomContentMetadata { + uint64_t size; + uint8_t metadataPayload[CUSTOM_METADATA_SIZE_BYTES]; +} CustomContentMetadata; + + +#endif // __COLOREXTENSIONS_H__ + From 3ea5a2a44885f672f9cabc32a1bd83f301615139 Mon Sep 17 00:00:00 2001 From: Jatin Srivastava Date: Fri, 17 Mar 2023 13:54:47 +0530 Subject: [PATCH 2/2] aidl: Add setClientUp API setClientUp API will be called when Surfaceflinger is up. Change-Id: I141626327cabe781382202b7cb6a8d35cf3be45f --- aidl/config/Android.bp | 4 + .../7/.hash | 1 + .../hardware/display/config/Attributes.aidl | 57 ++++++++++ .../display/config/CameraSmoothOp.aidl | 52 +++++++++ .../hardware/display/config/Concurrency.aidl | 56 ++++++++++ .../display/config/DisplayPortType.aidl | 58 ++++++++++ .../hardware/display/config/DisplayType.aidl | 55 +++++++++ .../display/config/DynRefreshRateOp.aidl | 54 +++++++++ .../display/config/ExternalStatus.aidl | 55 +++++++++ .../display/config/HDRCapsParams.aidl | 53 +++++++++ .../display/config/IDisplayConfig.aidl | 104 ++++++++++++++++++ .../config/IDisplayConfigCallback.aidl | 91 +++++++++++++++ .../hardware/display/config/PowerMode.aidl | 54 +++++++++ .../hardware/display/config/QsyncMode.aidl | 54 +++++++++ .../qti/hardware/display/config/Rect.aidl | 54 +++++++++ .../hardware/display/config/TUIEventType.aidl | 54 +++++++++ .../display/config/IDisplayConfig.aidl | 36 ++++++ .../display/config/IDisplayConfig.aidl | 45 +++++++- 18 files changed, 936 insertions(+), 1 deletion(-) create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/.hash create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Attributes.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/CameraSmoothOp.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Concurrency.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayPortType.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayType.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DynRefreshRateOp.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/ExternalStatus.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/HDRCapsParams.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfig.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfigCallback.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/PowerMode.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/QsyncMode.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Rect.aidl create mode 100644 aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/TUIEventType.aidl diff --git a/aidl/config/Android.bp b/aidl/config/Android.bp index 4c07a77b..7f54b39b 100644 --- a/aidl/config/Android.bp +++ b/aidl/config/Android.bp @@ -43,6 +43,10 @@ aidl_interface { version: "6", imports: ["android.hardware.common-V2"], }, + { + version: "7", + imports: ["android.hardware.common-V2"], + }, ], frozen: true, diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/.hash b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/.hash new file mode 100644 index 00000000..3a8923db --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/.hash @@ -0,0 +1 @@ +66582a25e6a7582844321e2e68c8b48dfb54013a diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Attributes.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Attributes.aidl new file mode 100644 index 00000000..d21e8e88 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Attributes.aidl @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@VintfStability +parcelable Attributes { + int vsyncPeriod; + int xRes; + int yRes; + float xDpi; + float yDpi; + vendor.qti.hardware.display.config.DisplayPortType panelType; + boolean isYuv; +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/CameraSmoothOp.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/CameraSmoothOp.aidl new file mode 100644 index 00000000..685f78cc --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/CameraSmoothOp.aidl @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum CameraSmoothOp { + OFF = 0, + ON = 1, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Concurrency.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Concurrency.aidl new file mode 100644 index 00000000..fe1b8742 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Concurrency.aidl @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum Concurrency { + NONE = 0, + WFD = 1, + DP = 2, + DUAL = 3, + CWB = 4, + CAMERA = 5, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayPortType.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayPortType.aidl new file mode 100644 index 00000000..3fdba188 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayPortType.aidl @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum DisplayPortType { + INVALID = 0, + DEFAULT = 1, + DSI = 2, + DTV = 3, + WRITEBACK = 4, + LVDS = 5, + EDP = 6, + DP = 7, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayType.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayType.aidl new file mode 100644 index 00000000..f9f54a6e --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DisplayType.aidl @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum DisplayType { + INVALID = 0, + PRIMARY = 1, + EXTERNAL = 2, + VIRTUAL = 3, + BUILTIN2 = 4, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DynRefreshRateOp.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DynRefreshRateOp.aidl new file mode 100644 index 00000000..8b73c1b9 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/DynRefreshRateOp.aidl @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum DynRefreshRateOp { + INVALID = 0, + DISABLE_METADATA = 1, + ENABLE_METADATA = 2, + SET_BINDER = 3, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/ExternalStatus.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/ExternalStatus.aidl new file mode 100644 index 00000000..b8f4ba5d --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/ExternalStatus.aidl @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum ExternalStatus { + INVALID = 0, + OFFLINE = 1, + ONLINE = 2, + PAUSE = 3, + RESUME = 4, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/HDRCapsParams.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/HDRCapsParams.aidl new file mode 100644 index 00000000..d0f95c0c --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/HDRCapsParams.aidl @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@VintfStability +parcelable HDRCapsParams { + int[] supportedHdrTypes; + float maxAvgLuminance; + float minLuminance; +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfig.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfig.aidl new file mode 100644 index 00000000..59d00daf --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfig.aidl @@ -0,0 +1,104 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@VintfStability +interface IDisplayConfig { + boolean isDisplayConnected(in vendor.qti.hardware.display.config.DisplayType dpy); + void setDisplayStatus(in vendor.qti.hardware.display.config.DisplayType dpy, in vendor.qti.hardware.display.config.ExternalStatus status); + void configureDynRefreshRate(in vendor.qti.hardware.display.config.DynRefreshRateOp op, in int refrestRate); + int getConfigCount(in vendor.qti.hardware.display.config.DisplayType dpy); + int getActiveConfig(in vendor.qti.hardware.display.config.DisplayType dpy); + void setActiveConfig(in vendor.qti.hardware.display.config.DisplayType dpy, in int config); + vendor.qti.hardware.display.config.Attributes getDisplayAttributes(in int configIndex, in vendor.qti.hardware.display.config.DisplayType dpy); + void setPanelBrightness(in int level); + int getPanelBrightness(); + void minHdcpEncryptionLevelChanged(in vendor.qti.hardware.display.config.DisplayType dpy, in int minEncLevel); + void refreshScreen(); + void controlPartialUpdate(in vendor.qti.hardware.display.config.DisplayType dpy, in boolean enable); + void toggleScreenUpdate(in boolean on); + void setIdleTimeout(in int value); + vendor.qti.hardware.display.config.HDRCapsParams getHDRCapabilities(in vendor.qti.hardware.display.config.DisplayType dpy); + void setCameraLaunchStatus(in int on); + boolean displayBWTransactionPending(); + void setDisplayAnimating(in long displayId, in boolean animating); + void controlIdlePowerCollapse(in boolean enable, in boolean synchronous); + boolean getWriteBackCapabilities(); + void setDisplayDppsAdROI(in int displayId, in int hStart, in int hEnd, in int vStart, in int vEnd, in int factorIn, in int factorOut); + void updateVSyncSourceOnPowerModeOff(); + void updateVSyncSourceOnPowerModeDoze(); + void setPowerMode(in int dispId, in vendor.qti.hardware.display.config.PowerMode powerMode); + boolean isPowerModeOverrideSupported(in int dispId); + boolean isHDRSupported(in int dispId); + boolean isWCGSupported(in int dispId); + void setLayerAsMask(in int dispId, in long layerId); + String getDebugProperty(in String propName); + vendor.qti.hardware.display.config.Attributes getActiveBuiltinDisplayAttributes(); + void setPanelLuminanceAttributes(in int dispId, in float minLum, in float maxLum); + boolean isBuiltInDisplay(in int dispId); + boolean isAsyncVDSCreationSupported(); + void createVirtualDisplay(in int width, in int height, in int format); + long[] getSupportedDSIBitClks(in int dispId); + long getDSIClk(in int dispId); + void setDSIClk(in int dispId, in long bitClk); + void setCWBOutputBuffer(in vendor.qti.hardware.display.config.IDisplayConfigCallback callback, in int dispId, in vendor.qti.hardware.display.config.Rect rect, in boolean postProcessed, in android.hardware.common.NativeHandle buffer); + void setQsyncMode(in int dispId, in vendor.qti.hardware.display.config.QsyncMode mode); + boolean isSmartPanelConfig(in int dispId, in int configId); + boolean isRotatorSupportedFormat(in int halFormat, in boolean ubwc); + void controlQsyncCallback(in boolean enable); + void sendTUIEvent(in vendor.qti.hardware.display.config.DisplayType dpy, in vendor.qti.hardware.display.config.TUIEventType eventType); + int getDisplayHwId(in int dispId); + int[] getSupportedDisplayRefreshRates(in vendor.qti.hardware.display.config.DisplayType dpy); + boolean isRCSupported(in int dispId); + void controlIdleStatusCallback(in boolean enable); + boolean isSupportedConfigSwitch(in int dispId, in int config); + vendor.qti.hardware.display.config.DisplayType getDisplayType(in long physicalDispId); + void setCameraSmoothInfo(in vendor.qti.hardware.display.config.CameraSmoothOp op, in int fps); + long registerCallback(in vendor.qti.hardware.display.config.IDisplayConfigCallback callback); + void unRegisterCallback(in long handle); + void notifyDisplayIdleState(in int[] dispId); + void setClientUp(); +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfigCallback.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfigCallback.aidl new file mode 100644 index 00000000..36be528a --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/IDisplayConfigCallback.aidl @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + *//* + * Changes from Qualcomm Innovation Center are provided under the following license: + * + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted (subject to the limitations in the + * disclaimer below) provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE + * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT + * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@VintfStability +interface IDisplayConfigCallback { + oneway void notifyCWBBufferDone(in int error, in android.hardware.common.NativeHandle buffer); + oneway void notifyQsyncChange(in boolean qsyncEnabled, in int refreshRate, in int qsyncRefreshRate); + oneway void notifyIdleStatus(in boolean isIdle); + oneway void notifyCameraSmoothInfo(in vendor.qti.hardware.display.config.CameraSmoothOp op, in int fps); + oneway void notifyResolutionChange(in int displayId, in vendor.qti.hardware.display.config.Attributes attr); + oneway void notifyFpsMitigation(in int displayId, in vendor.qti.hardware.display.config.Attributes attr, in vendor.qti.hardware.display.config.Concurrency concurrency); + oneway void notifyTUIEventDone(in int error, in vendor.qti.hardware.display.config.DisplayType disp_type, in vendor.qti.hardware.display.config.TUIEventType eventType); +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/PowerMode.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/PowerMode.aidl new file mode 100644 index 00000000..77534dcb --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/PowerMode.aidl @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum PowerMode { + OFF = 0, + DOZE = 1, + ON = 2, + DOZE_SUSPEND = 3, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/QsyncMode.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/QsyncMode.aidl new file mode 100644 index 00000000..5121fc80 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/QsyncMode.aidl @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum QsyncMode { + NONE = 0, + WAIT_FOR_FENCES_ONE_FRAME = 1, + WAIT_FOR_FENCES_EACH_FRAME = 2, + WAIT_FOR_COMMIT_EACH_FRAME = 3, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Rect.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Rect.aidl new file mode 100644 index 00000000..61f83a97 --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/Rect.aidl @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@VintfStability +parcelable Rect { + int left; + int top; + int right; + int bottom; +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/TUIEventType.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/TUIEventType.aidl new file mode 100644 index 00000000..ae50648a --- /dev/null +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/7/vendor/qti/hardware/display/config/TUIEventType.aidl @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2021 The Linux Foundation. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * * Neither the name of The Linux Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +/////////////////////////////////////////////////////////////////////////////// +// 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 vendor.qti.hardware.display.config; +@Backing(type="int") @VintfStability +enum TUIEventType { + NONE = 0, + PREPARE_TUI_TRANSITION = 1, + START_TUI_TRANSITION = 2, + END_TUI_TRANSITION = 3, +} diff --git a/aidl/config/aidl_api/vendor.qti.hardware.display.config/current/vendor/qti/hardware/display/config/IDisplayConfig.aidl b/aidl/config/aidl_api/vendor.qti.hardware.display.config/current/vendor/qti/hardware/display/config/IDisplayConfig.aidl index 96b54c36..3bcfbd86 100644 --- a/aidl/config/aidl_api/vendor.qti.hardware.display.config/current/vendor/qti/hardware/display/config/IDisplayConfig.aidl +++ b/aidl/config/aidl_api/vendor.qti.hardware.display.config/current/vendor/qti/hardware/display/config/IDisplayConfig.aidl @@ -26,6 +26,41 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ + /* + * Changes from Qualcomm Innovation Center are provided under the following license: + * + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted (subject to the limitations in the + * disclaimer below) provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE + * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT + * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ /////////////////////////////////////////////////////////////////////////////// // THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. // /////////////////////////////////////////////////////////////////////////////// @@ -100,4 +135,5 @@ interface IDisplayConfig { long registerCallback(in vendor.qti.hardware.display.config.IDisplayConfigCallback callback); void unRegisterCallback(in long handle); void notifyDisplayIdleState(in int[] dispId); + void setClientUp(); } diff --git a/aidl/config/vendor/qti/hardware/display/config/IDisplayConfig.aidl b/aidl/config/vendor/qti/hardware/display/config/IDisplayConfig.aidl index f7f91614..fc5dc72e 100644 --- a/aidl/config/vendor/qti/hardware/display/config/IDisplayConfig.aidl +++ b/aidl/config/vendor/qti/hardware/display/config/IDisplayConfig.aidl @@ -26,7 +26,41 @@ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - +/* +* Changes from Qualcomm Innovation Center are provided under the following license: + * + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted (subject to the limitations in the + * disclaimer below) provided that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * * Neither the name of Qualcomm Innovation Center, Inc. nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE + * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT + * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER + * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN + * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package vendor.qti.hardware.display.config; import android.hardware.common.NativeHandle; @@ -556,4 +590,13 @@ interface IDisplayConfig { * @return error is NONE upon success */ void notifyDisplayIdleState(in int[] dispId); + + /* + * Notify client is up + * + * @param NONE + * + * @return error is NONE upon success + */ + void setClientUp(); }