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

Commit 5cc9ac99 authored by daren.liao's avatar daren.liao Committed by Daren Liao
Browse files

Change checking rule in startArcAction(false) for HDMI CTS

[Description]
For HDMI CTS Certification:
    HEACT 5-15: IEC 60958-1 Stream Verification

Before sending <Request ARC initiation> or <Request ARC termination>
CEC frameworks checks whether the port connected AVR is valid
 - if it's connected to ARC port
 - if it's adjacent to TV

If AVR changes its PA from valid to non-adjacent
(E.g. ARC port : 1.0.0.0 is valid, it changes to 1.1.0.0)
With the current framework design, <Request ARC Termination>
won't be sent.

However, <Request ARC Termination> should still be sent
to pass this test item.

We should not consider whether the port is direct connected
or not when startArcAction(false)
We should always send <Request ARC termination> for this case.

Test: Pass HEACT 5-15: IEC 60958-1 Stream Verification
Change-Id: I94f4be9fbffbf3e81c35ef81b36a81de3265dd66
parent e716ff86
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -1092,10 +1092,11 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice {
        HdmiDeviceInfo avr = getAvrDeviceInfo();
        if (avr != null
                && (avrAddress == avr.getLogicalAddress())
                && isConnectedToArcPort(avr.getPhysicalAddress())
                && isDirectConnectAddress(avr.getPhysicalAddress())) {
                && isConnectedToArcPort(avr.getPhysicalAddress())) {
            if (enabled) {
                return isConnected(avr.getPortId()) && isArcFeatureEnabled(avr.getPortId());
                return isConnected(avr.getPortId())
                    && isArcFeatureEnabled(avr.getPortId())
                    && isDirectConnectAddress(avr.getPhysicalAddress());
            } else {
                return true;
            }