Skip to content

Device Settings Display High Level Test Specification Document

Acronyms, Terms and Abbreviations

  • HAL - Hardware Abstraction layer
  • EDID - Extended Display Identification
  • API - Application programming interface
  • CPU - Central processing unit
  • RDK - Reference Design Kit
  • dsDisplay - Device Settings Display

References

Introduction

This document provides an overview of the high level testing requirements for the dsDisplay module. It outlines the scope of testing, objectives, testing levels and approaches, specific test requirements, emulator requirements, control plane requirements and expected deliverables.

Module Description

High level overview:

  • dsDisplay offers a range of APIs for retrieving information about the Display Device.
  • Data is retrieved from the Display Device and HDMI. This data is passed to the caller.
  • In order to retrieve HDMI information, an external device must be connected.

Testing Scope

# Test Functionality Test Description
1 Get EDID Information Test validates the accuracy and functionality of the display device module's functions (dsGetEDID and dsGetEDIDBytes) in retrieving the Extended Display Identification Data (EDID) from connected display devices
2 Get Aspect Ratio Test provides the aspect ratio of the display device
3 Callback Registration for Display Related Events To verify the callback registration for display related events. The display events are Display connected event, Display disconnected event, Rx Sense ON event, Rx Sense OFF event, HDCP protocol version change event
-----------

Get EDID Information

Description HAL APIs L2 L3 Source Sink Control plane requirements
The Get EDID Information test aims to verify the functionality of the display device module's dsGetEDID and dsGetEDIDBytes functions, which are responsible for retrieving the Extended Display Identification Data (EDID) from connected display devices. This test ensures that the module can accurately retrieve and interpret EDID information, providing essential data about the display's capabilities and characteristics. dsGetEDID(), dsGetEDIDBytes() N Y Y N N
For the sink device, retrieve EDID information for the 'dsVIDEOPORT_TYPE_INTERNAL' type using GetEDID and GetEDIDBytes, then validate the values against the data available in the profile file. The values to be validated are the 'EDID_Data/productCode' for GetEDID and the 'EDID_Data/edidBytes'(which stands for Manufacturer ID) at bytes 8 and 9 against the values available in the profile file "Panel_4K_Display.yaml" for GetEDIDBytes. dsGetEDID(), dsGetEDIDBytes() Y N N Y N

Test Startup Requirement - Get EDID Information

Launch the test with the predefined configuration set of results.

Emulator Requirement - Get EDID Information

Emulator will boot with the EDID coming from the configuration file.

# Description
1 EDID for a panel TV

TODO: Generate a list of sample list for 5 to 6 different TV's. Generate a list of TV's from the office for the different EDIDs and store the binaries of the test. It can use it as samples.

Control Plane Requirement - Get EDID Information

Switching between the EDIDs of multiple TVs controlled by the control plane

Get Aspect Ratio

Description HAL APIs L2 L3 Source Sink Control plane requirements
Test the default aspect ratio (16:9) without any TV connected. dsGetDisplayAspectRatio() Y N Y N N
Adjust and test the different aspect ratios (4:3, 16:9) to ensure they provide the expected aspect ratio. dsGetDisplayAspectRatio() N Y Y N Y

Emulator Requirement - Get Aspect Ratio

Emulator will boot with the Aspect ratio coming from the configuration file.

Control Plane Requirement - Get Aspect Ratio

Maintains the configuration of various aspect ratios and provides them whenever a user is supposed to make a change.

Description HAL APIs L2 L3 Source Sink Control plane requirements
Test the 'Display connected' event. Upon connecting the display device, the callback should trigger the event dsRegisterDisplayEventCallback() N Y Y Y Y
Test the 'Display disconnected' event. Upon disconnecting the display device, the callback should trigger the event dsRegisterDisplayEventCallback() N Y Y N Y
Test the 'Rx Sense ON' event by verifying the presence of a signal from the receiving device; the callback should be triggered when the signal is detected dsRegisterDisplayEventCallback() N Y Y N Y
Test the 'Rx Sense OFF' event by verifying the absense of a signal from the receiving device; the callback should be triggered when the signal is detected dsRegisterDisplayEventCallback N Y Y N Y
Test the 'HDCP protocol version change' event by verifying if there is a change in the HDCP protocol version used for content protection; the callback should be triggered upon detection of the protocol change dsRegisterDisplayEventCallback() N Y Y N N

Launch the test with the configured HDCP 1.x and HDCP 2.x keys.

Emulator will boot with the predefined set of HDCP keys coming from the configuration file.

  • The control plane will generate events for HDMI connection and disconnection. It also supplies signals to the receiving devices to initiate the Rx Sense ON/Rx Sense OFF events.
  • The Control Plane will handle connection/disconnection, measuring the timing between both and ensuring it meets the expected time.