Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04ee1a4f authored by Venkatarama Avadhani's avatar Venkatarama Avadhani
Browse files

HDMI: Add Hotplug Detection Signal support

The HPD (Hotplug Detection) signal indicates the type of signal that the
HAL should use.

Bug: 258394639
Test: atest VtsHalTvHdmiAidlTargetTest
Change-Id: Ic391064d10636aca3c8e5c256c41d40144fbfe9c
parent b55e63fb
Loading
Loading
Loading
Loading
+39 −0
Original line number Original line Diff line number Diff line
/*
 * 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 <name>-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.tv.hdmi;
@Backing(type="byte") @VintfStability
enum HpdSignal {
  HDMI_HPD_PHYSICAL = 0,
  HDMI_HPD_STATUS_BIT = 1,
}
+2 −0
Original line number Original line Diff line number Diff line
@@ -37,4 +37,6 @@ interface IHdmi {
  android.hardware.tv.hdmi.HdmiPortInfo[] getPortInfo();
  android.hardware.tv.hdmi.HdmiPortInfo[] getPortInfo();
  boolean isConnected(in int portId);
  boolean isConnected(in int portId);
  void setCallback(in android.hardware.tv.hdmi.IHdmiCallback callback);
  void setCallback(in android.hardware.tv.hdmi.IHdmiCallback callback);
  void setHpdSignal(android.hardware.tv.hdmi.HpdSignal signal);
  android.hardware.tv.hdmi.HpdSignal getHpdSignal();
}
}
+42 −0
Original line number Original line Diff line number Diff line
/*
 * 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 <name>-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.tv.hdmi;
@VintfStability
enum Result {
  SUCCESS = 0,
  FAILURE_UNKNOWN = 1,
  FAILURE_INVALID_ARGS = 2,
  FAILURE_INVALID_STATE = 3,
  FAILURE_NOT_SUPPORTED = 4,
}
+27 −0
Original line number Original line Diff line number Diff line
/*
 * 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.tv.hdmi;

/**
 * HPD (Hotplug Detection) Signal Types
 */
@VintfStability
@Backing(type="byte")
enum HpdSignal {
    HDMI_HPD_PHYSICAL = 0,
    HDMI_HPD_STATUS_BIT = 1,
}
+14 −0
Original line number Original line Diff line number Diff line
@@ -17,6 +17,7 @@
package android.hardware.tv.hdmi;
package android.hardware.tv.hdmi;


import android.hardware.tv.hdmi.HdmiPortInfo;
import android.hardware.tv.hdmi.HdmiPortInfo;
import android.hardware.tv.hdmi.HpdSignal;
import android.hardware.tv.hdmi.IHdmiCallback;
import android.hardware.tv.hdmi.IHdmiCallback;


/**
/**
@@ -48,4 +49,17 @@ interface IHdmi {
     *        setCallback(null) should deregister the callback.
     *        setCallback(null) should deregister the callback.
     */
     */
    void setCallback(in IHdmiCallback callback);
    void setCallback(in IHdmiCallback callback);

    /**
     * Method to set the HPD (Hot Plug Detection) signal the HAL should use for HPD signaling (e.g.
     * signaling EDID updates). By default, the HAL will use {@code HDMI_HPD_PHYSICAL} (the physical
     * hotplug signal). When set to {@code HDMI_HPD_STATUS_BIT} the HAL should use the HDP status
     * bit.
     */
    void setHpdSignal(HpdSignal signal);

    /**
     * Get the current signal the HAL is using for HPD
     */
    HpdSignal getHpdSignal();
}
}
Loading