Control API
Control API Specification - Version 1
Common
Functions
Enumerations
Structures
Common Functions
ctlInit
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlInit(ctl_init_args_t *pInitDesc, ctl_api_handle_t *phAPIHandle)
Control Api Init.
Control Api Init
- Parameters:
pInitDesc – [in][out] App’s control API version
phAPIHandle – [in][out][release] Control API handle
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pInitDesc
nullptr == phAPIHandle
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlClose
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlClose(ctl_api_handle_t hAPIHandle)
Control Api Destroy.
Control Api Close
- Parameters:
hAPIHandle – [in][release] Control API implementation handle obtained during init call
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hAPIHandle
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlSetRuntimePath
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetRuntimePath(ctl_runtime_path_args_t *pArgs)
Runtime path.
Control Api set runtime path. Optional call from a loader which allows the loaded runtime to enumerate only the adapters which the specified runtime is responsible for. This is done usually by a loader or by callers who know how to get the specific runtime of interest. This call right now is reserved for use by Intel components.
- Parameters:
pArgs – [in] Runtime path
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlWaitForPropertyChange
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlWaitForPropertyChange(ctl_device_adapter_handle_t hDeviceAdapter, ctl_wait_property_change_args_t *pArgs)
Wait for a property change. Note that this is a blocking call.
Wait for a property change in display, 3d, media etc.
- Parameters:
hDeviceAdapter – [in][release] handle to control device adapter
pArgs – [in] Argument containing information about which property changes to listen for
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlReservedCall
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlReservedCall(ctl_device_adapter_handle_t hDeviceAdapter, ctl_reserved_args_t *pArgs)
Reserved function.
Reserved function
- Parameters:
hDeviceAdapter – [in][release] handle to control device adapter
pArgs – [in] Argument containing information
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
Common Enums
ctl_init_flags_t
ctl_property_value_type_t
-
enum ctl_property_value_type_t
Value type.
Values:
-
enumerator CTL_PROPERTY_VALUE_TYPE_BOOL
Boolean.
-
enumerator CTL_PROPERTY_VALUE_TYPE_FLOAT
Float.
-
enumerator CTL_PROPERTY_VALUE_TYPE_INT32
Int32.
-
enumerator CTL_PROPERTY_VALUE_TYPE_UINT32
Unsigned Int32.
-
enumerator CTL_PROPERTY_VALUE_TYPE_ENUM
Enum.
-
enumerator CTL_PROPERTY_VALUE_TYPE_CUSTOM
Custom argument.
-
enumerator CTL_PROPERTY_VALUE_TYPE_MAX
-
enumerator CTL_PROPERTY_VALUE_TYPE_BOOL
ctl_result_t
-
enum ctl_result_t
Defines Return/Error codes. All generic error (bit30) codes are between 0x40000000-0x4000FFFF. All 3D (bit 29) specific error codes are between 0x60000000-0x6000FFFF. All media (bit 28) specific error codes are between 0x50000000-0x5000FFFF. All display (bit 27) specific error codes are between 0x48000000-0x4800FFFF All core (bit 26) specific error codes are between 0x44000000-0x4400FFFF Success result code with additional info are between 0x00000001-0x0000FFFF.
Values:
-
enumerator CTL_RESULT_SUCCESS
success
-
enumerator CTL_RESULT_SUCCESS_STILL_OPEN_BY_ANOTHER_CALLER
success but still open by another caller
-
enumerator CTL_RESULT_ERROR_SUCCESS_END
“Success group error code end value, not to be used
”
-
enumerator CTL_RESULT_ERROR_GENERIC_START
Generic error code starting value, not to be used.
-
enumerator CTL_RESULT_ERROR_NOT_INITIALIZED
Result not initialized.
-
enumerator CTL_RESULT_ERROR_ALREADY_INITIALIZED
Already initialized.
-
enumerator CTL_RESULT_ERROR_DEVICE_LOST
Device hung, reset, was removed, or driver update occurred.
-
enumerator CTL_RESULT_ERROR_OUT_OF_HOST_MEMORY
Insufficient host memory to satisfy call.
-
enumerator CTL_RESULT_ERROR_OUT_OF_DEVICE_MEMORY
Insufficient device memory to satisfy call.
-
enumerator CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS
Access denied due to permission level.
-
enumerator CTL_RESULT_ERROR_NOT_AVAILABLE
Resource was removed.
-
enumerator CTL_RESULT_ERROR_UNINITIALIZED
Library not initialized.
-
enumerator CTL_RESULT_ERROR_UNSUPPORTED_VERSION
Generic error code for unsupported versions.
-
enumerator CTL_RESULT_ERROR_UNSUPPORTED_FEATURE
Generic error code for unsupported features.
-
enumerator CTL_RESULT_ERROR_INVALID_ARGUMENT
Generic error code for invalid arguments.
-
enumerator CTL_RESULT_ERROR_INVALID_API_HANDLE
API handle in invalid.
-
enumerator CTL_RESULT_ERROR_INVALID_NULL_HANDLE
Handle argument is not valid.
-
enumerator CTL_RESULT_ERROR_INVALID_NULL_POINTER
Pointer argument may not be nullptr.
-
enumerator CTL_RESULT_ERROR_INVALID_SIZE
Size argument is invalid (e.g., must not be zero)
-
enumerator CTL_RESULT_ERROR_UNSUPPORTED_SIZE
Size argument is not supported by the device (e.g., too large)
-
enumerator CTL_RESULT_ERROR_UNSUPPORTED_IMAGE_FORMAT
Image format is not supported by the device.
-
enumerator CTL_RESULT_ERROR_DATA_READ
Data read error.
-
enumerator CTL_RESULT_ERROR_DATA_WRITE
Data write error.
-
enumerator CTL_RESULT_ERROR_DATA_NOT_FOUND
Data not found error.
-
enumerator CTL_RESULT_ERROR_NOT_IMPLEMENTED
Function not implemented.
-
enumerator CTL_RESULT_ERROR_OS_CALL
Operating system call failure.
-
enumerator CTL_RESULT_ERROR_KMD_CALL
Kernel mode driver call failure.
-
enumerator CTL_RESULT_ERROR_UNLOAD
Library unload failure.
-
enumerator CTL_RESULT_ERROR_ZE_LOADER
Level0 loader not found.
-
enumerator CTL_RESULT_ERROR_INVALID_OPERATION_TYPE
Invalid operation type.
-
enumerator CTL_RESULT_ERROR_NULL_OS_INTERFACE
Null OS interface.
-
enumerator CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE
Null OS adapter handle.
-
enumerator CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE
Null display output handle.
-
enumerator CTL_RESULT_ERROR_WAIT_TIMEOUT
Timeout in Wait function.
-
enumerator CTL_RESULT_ERROR_PERSISTANCE_NOT_SUPPORTED
Persistance not supported.
-
enumerator CTL_RESULT_ERROR_PLATFORM_NOT_SUPPORTED
Platform not supported.
-
enumerator CTL_RESULT_ERROR_UNKNOWN_APPLICATION_UID
Unknown Appplicaion UID in Initialization call.
-
enumerator CTL_RESULT_ERROR_INVALID_ENUMERATION
The enum is not valid.
-
enumerator CTL_RESULT_ERROR_FILE_DELETE
Error in file delete operation.
-
enumerator CTL_RESULT_ERROR_RESET_DEVICE_REQUIRED
The device requires a reset.
-
enumerator CTL_RESULT_ERROR_FULL_REBOOT_REQUIRED
The device requires a full reboot.
-
enumerator CTL_RESULT_ERROR_LOAD
Library load failure.
-
enumerator CTL_RESULT_ERROR_UNKNOWN
Unknown or internal error.
-
enumerator CTL_RESULT_ERROR_RETRY_OPERATION
Operation failed, retry previous operation again.
-
enumerator CTL_RESULT_ERROR_GENERIC_END
“Generic error code end value, not to be used
”
-
enumerator CTL_RESULT_ERROR_CORE_START
Core error code starting value, not to be used.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_NOT_SUPPORTED
The Overclock is not supported.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_VOLTAGE_OUTSIDE_RANGE
The Voltage exceeds the acceptable min/max.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_FREQUENCY_OUTSIDE_RANGE
The Frequency exceeds the acceptable min/max.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_POWER_OUTSIDE_RANGE
The Power exceeds the acceptable min/max.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_TEMPERATURE_OUTSIDE_RANGE
The Temperature exceeds the acceptable min/max.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_IN_VOLTAGE_LOCKED_MODE
The Overclock is in voltage locked mode.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_RESET_REQUIRED
It indicates that the requested change will not be applied until the device is reset.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_WAIVER_NOT_SET
The $OverclockWaiverSet function has not been called.
-
enumerator CTL_RESULT_ERROR_CORE_OVERCLOCK_DEPRECATED_API
The error indicates to switch to newer API version if applicable.
-
enumerator CTL_RESULT_ERROR_CORE_END
“Core error code end value, not to be used
”
-
enumerator CTL_RESULT_ERROR_3D_START
3D error code starting value, not to be used
-
enumerator CTL_RESULT_ERROR_3D_END
“3D error code end value, not to be used
”
-
enumerator CTL_RESULT_ERROR_MEDIA_START
Media error code starting value, not to be used.
-
enumerator CTL_RESULT_ERROR_MEDIA_END
“Media error code end value, not to be used
”
-
enumerator CTL_RESULT_ERROR_DISPLAY_START
Display error code starting value, not to be used.
-
enumerator CTL_RESULT_ERROR_INVALID_AUX_ACCESS_FLAG
Invalid flag for Aux access.
-
enumerator CTL_RESULT_ERROR_INVALID_SHARPNESS_FILTER_FLAG
Invalid flag for Sharpness.
-
enumerator CTL_RESULT_ERROR_DISPLAY_NOT_ATTACHED
Error for Display not attached.
-
enumerator CTL_RESULT_ERROR_DISPLAY_NOT_ACTIVE
Error for display attached but not active.
-
enumerator CTL_RESULT_ERROR_INVALID_POWERFEATURE_OPTIMIZATION_FLAG
Error for invalid power optimization flag.
-
enumerator CTL_RESULT_ERROR_INVALID_POWERSOURCE_TYPE_FOR_DPST
DPST is supported only in DC Mode.
-
enumerator CTL_RESULT_ERROR_INVALID_PIXTX_GET_CONFIG_QUERY_TYPE
Invalid query type for pixel transformation get configuration.
-
enumerator CTL_RESULT_ERROR_INVALID_PIXTX_SET_CONFIG_OPERATION_TYPE
Invalid operation type for pixel transformation set configuration.
-
enumerator CTL_RESULT_ERROR_INVALID_SET_CONFIG_NUMBER_OF_SAMPLES
Invalid number of samples for pixel transformation set configuration.
-
enumerator CTL_RESULT_ERROR_INVALID_PIXTX_BLOCK_ID
Invalid block id for pixel transformation.
-
enumerator CTL_RESULT_ERROR_INVALID_PIXTX_BLOCK_TYPE
Invalid block type for pixel transformation.
-
enumerator CTL_RESULT_ERROR_INVALID_PIXTX_BLOCK_NUMBER
Invalid block number for pixel transformation.
-
enumerator CTL_RESULT_ERROR_INSUFFICIENT_PIXTX_BLOCK_CONFIG_MEMORY
Insufficient memery allocated for BlockConfigs.
-
enumerator CTL_RESULT_ERROR_3DLUT_INVALID_PIPE
Invalid pipe for 3dlut.
-
enumerator CTL_RESULT_ERROR_3DLUT_INVALID_DATA
Invalid 3dlut data.
-
enumerator CTL_RESULT_ERROR_3DLUT_NOT_SUPPORTED_IN_HDR
3dlut not supported in HDR
-
enumerator CTL_RESULT_ERROR_3DLUT_INVALID_OPERATION
Invalid 3dlut operation.
-
enumerator CTL_RESULT_ERROR_3DLUT_UNSUCCESSFUL
3dlut call unsuccessful
-
enumerator CTL_RESULT_ERROR_AUX_DEFER
AUX defer failure.
-
enumerator CTL_RESULT_ERROR_AUX_TIMEOUT
AUX timeout failure.
-
enumerator CTL_RESULT_ERROR_AUX_INCOMPLETE_WRITE
AUX incomplete write failure.
-
enumerator CTL_RESULT_ERROR_I2C_AUX_STATUS_UNKNOWN
I2C/AUX unkonown failure.
-
enumerator CTL_RESULT_ERROR_I2C_AUX_UNSUCCESSFUL
I2C/AUX unsuccessful.
-
enumerator CTL_RESULT_ERROR_LACE_INVALID_DATA_ARGUMENT_PASSED
Lace Incorrrect AggressivePercent data or LuxVsAggressive Map data passed by user.
-
enumerator CTL_RESULT_ERROR_EXTERNAL_DISPLAY_ATTACHED
External Display is Attached hence fail the Display Switch.
-
enumerator CTL_RESULT_ERROR_CUSTOM_MODE_STANDARD_CUSTOM_MODE_EXISTS
Standard custom mode exists.
-
enumerator CTL_RESULT_ERROR_CUSTOM_MODE_NON_CUSTOM_MATCHING_MODE_EXISTS
Non custom matching mode exists.
-
enumerator CTL_RESULT_ERROR_CUSTOM_MODE_INSUFFICIENT_MEMORY
Custom mode insufficent memory.
-
enumerator CTL_RESULT_ERROR_ADAPTER_ALREADY_LINKED
Adapter is already linked.
-
enumerator CTL_RESULT_ERROR_ADAPTER_NOT_IDENTICAL
Adapter is not identical for linking.
-
enumerator CTL_RESULT_ERROR_ADAPTER_NOT_SUPPORTED_ON_LDA_SECONDARY
Adapter is LDA Secondary, so not supporting requested operation.
-
enumerator CTL_RESULT_ERROR_SET_FBC_FEATURE_NOT_SUPPORTED
Set FBC Feature not supported.
-
enumerator CTL_RESULT_ERROR_DISPLAY_END
“Display error code end value, not to be used
”
-
enumerator CTL_RESULT_MAX
-
enumerator CTL_RESULT_SUCCESS
ctl_units_t
-
enum ctl_units_t
General Physical Units.
Values:
-
enumerator CTL_UNITS_FREQUENCY_MHZ
Type is Frequency with units in MHz.
-
enumerator CTL_UNITS_OPERATIONS_GTS
Type is Frequency with units in GT/s (gigatransfers per second).
-
enumerator CTL_UNITS_OPERATIONS_MTS
Type is Frequency with units in MT/s (megatransfers per second).
-
enumerator CTL_UNITS_VOLTAGE_VOLTS
Type is Voltage with units in Volts.
-
enumerator CTL_UNITS_POWER_WATTS
Type is Power with units in Watts.
-
enumerator CTL_UNITS_TEMPERATURE_CELSIUS
Type is Temperature with units in Celsius.
-
enumerator CTL_UNITS_ENERGY_JOULES
Type is Energy with units in Joules.
-
enumerator CTL_UNITS_TIME_SECONDS
Type is Time with units in Seconds.
-
enumerator CTL_UNITS_MEMORY_BYTES
Type is Memory with units in Bytes.
-
enumerator CTL_UNITS_ANGULAR_SPEED_RPM
Type is Angular Speed with units in Revolutions per Minute.
-
enumerator CTL_UNITS_POWER_MILLIWATTS
Type is Power with units in MilliWatts.
-
enumerator CTL_UNITS_PERCENT
Type is Percentage.
-
enumerator CTL_UNITS_MEM_SPEED_GBPS
Type is Memory Speed in Gigabyte per Seconds (Gbps)
-
enumerator CTL_UNITS_VOLTAGE_MILLIVOLTS
Type is Voltage with units in milliVolts.
-
enumerator CTL_UNITS_UNKNOWN
Type of units unknown.
-
enumerator CTL_UNITS_MAX
-
enumerator CTL_UNITS_FREQUENCY_MHZ
ctl_data_type_t
-
enum ctl_data_type_t
General Data Types.
Values:
-
enumerator CTL_DATA_TYPE_INT8
The data type is 8 bit signed integer.
-
enumerator CTL_DATA_TYPE_UINT8
The data type is 8 bit unsigned integer.
-
enumerator CTL_DATA_TYPE_INT16
The data type is 16 bit signed integer.
-
enumerator CTL_DATA_TYPE_UINT16
The data type is 16 bit unsigned integer.
-
enumerator CTL_DATA_TYPE_INT32
The data type is 32 bit signed integer.
-
enumerator CTL_DATA_TYPE_UINT32
The data type is 32 bit unsigned integer.
-
enumerator CTL_DATA_TYPE_INT64
The data type is 64 bit signed integer.
-
enumerator CTL_DATA_TYPE_UINT64
The data type is 64 bit unsigned integer.
-
enumerator CTL_DATA_TYPE_FLOAT
The data type is 32 bit floating point.
-
enumerator CTL_DATA_TYPE_DOUBLE
The data type is 64 bit floating point.
-
enumerator CTL_DATA_TYPE_STRING_ASCII
The data type is an array of 8 bit unsigned integers.
-
enumerator CTL_DATA_TYPE_STRING_UTF16
The data type is an array of 16 bit unsigned integers.
-
enumerator CTL_DATA_TYPE_STRING_UTF132
The data type is an array of 32 bit unsigned integers.
-
enumerator CTL_DATA_TYPE_UNKNOWN
The data type is unknown.
-
enumerator CTL_DATA_TYPE_MAX
-
enumerator CTL_DATA_TYPE_INT8
ctl_supported_functions_flags_t
-
enum ctl_supported_functions_flag_t
Values:
-
enumerator CTL_SUPPORTED_FUNCTIONS_FLAG_DISPLAY
[out] Is Display supported
-
enumerator CTL_SUPPORTED_FUNCTIONS_FLAG_3D
[out] Is 3D supported
-
enumerator CTL_SUPPORTED_FUNCTIONS_FLAG_MEDIA
[out] Is Media supported
-
enumerator CTL_SUPPORTED_FUNCTIONS_FLAG_MAX
-
enumerator CTL_SUPPORTED_FUNCTIONS_FLAG_DISPLAY
ctl_device_type_t
ctl_adapter_properties_flags_t
-
enum ctl_adapter_properties_flag_t
Values:
-
enumerator CTL_ADAPTER_PROPERTIES_FLAG_INTEGRATED
[out] Is Integrated Graphics adapter
-
enumerator CTL_ADAPTER_PROPERTIES_FLAG_LDA_PRIMARY
[out] Is Primary (Lead) adapter in a Linked Display Adapter (LDA) chain
-
enumerator CTL_ADAPTER_PROPERTIES_FLAG_LDA_SECONDARY
[out] Is Secondary (Linked) adapter in a Linked Display Adapter (LDA) chain
-
enumerator CTL_ADAPTER_PROPERTIES_FLAG_MAX
-
enumerator CTL_ADAPTER_PROPERTIES_FLAG_INTEGRATED
ctl_operation_type_t
ctl_property_type_flags_t
-
enum ctl_property_type_flag_t
Values:
-
enumerator CTL_PROPERTY_TYPE_FLAG_DISPLAY
Display type. Supported scenarios: Sharpness/gamma/CSC.
-
enumerator CTL_PROPERTY_TYPE_FLAG_3D
3D type. Supported scenarios: All set calls via IGCL’s 3D APIs
-
enumerator CTL_PROPERTY_TYPE_FLAG_MEDIA
Media type. Supported scenarios: All set calls via IGCL’s media APIs.
-
enumerator CTL_PROPERTY_TYPE_FLAG_CORE
For future: Core graphic event types like clocking, frequency etc.
-
enumerator CTL_PROPERTY_TYPE_FLAG_MAX
-
enumerator CTL_PROPERTY_TYPE_FLAG_DISPLAY
ctl_display_orientation_t
-
enum ctl_display_orientation_t
Display orientation (rotation)
Values:
-
enumerator CTL_DISPLAY_ORIENTATION_0
0 Degree
-
enumerator CTL_DISPLAY_ORIENTATION_90
90 Degree
-
enumerator CTL_DISPLAY_ORIENTATION_180
180 Degree
-
enumerator CTL_DISPLAY_ORIENTATION_270
270 Degree
-
enumerator CTL_DISPLAY_ORIENTATION_MAX
-
enumerator CTL_DISPLAY_ORIENTATION_0
Common Structures
ctl_base_interface_t
-
struct ctl_base_interface_t
Base for all properties types.
ctl_property_range_info_t
-
struct ctl_property_range_info_t
Property range details, a generic struct to hold min/max/step size information of various feature properties.
ctl_property_range_info_int_t
-
struct ctl_property_range_info_int_t
Property range details of integer type, a generic struct to hold min/max/step size information of various feature properties.
ctl_property_range_info_uint_t
-
struct ctl_property_range_info_uint_t
Property range details of unsigned integer type, a generic struct to hold min/max/step size information of various feature properties.
ctl_property_info_boolean_t
ctl_property_boolean_t
ctl_property_info_enum_t
-
struct ctl_property_info_enum_t
Enumeration feature details.
ctl_property_enum_t
ctl_property_info_float_t
-
struct ctl_property_info_float_t
Float feature details.
Public Members
-
bool DefaultEnable
[in,out] DefaultEnable
-
ctl_property_range_info_t RangeInfo
[out] Min/max/default/step details
-
bool DefaultEnable
ctl_property_float_t
-
struct ctl_property_float_t
Float feature for get/set.
ctl_property_info_int_t
-
struct ctl_property_info_int_t
Int32 feature details.
Public Members
-
bool DefaultEnable
[in,out] DefaultEnable
-
ctl_property_range_info_int_t RangeInfo
[out] Min/max/default/step details
-
bool DefaultEnable
ctl_property_int_t
-
struct ctl_property_int_t
Int32 feature for get/set.
ctl_property_info_uint_t
-
struct ctl_property_info_uint_t
Int32 feature details.
Public Members
-
bool DefaultEnable
[in,out] DefaultEnable
-
ctl_property_range_info_uint_t RangeInfo
[out] Min/max/default/step details
-
bool DefaultEnable
ctl_property_uint_t
-
struct ctl_property_uint_t
Int32 feature for get/set.
ctl_property_info_t
-
union ctl_property_info_t
- #include <igcl_api.h>
Feature element details, union of bool/float/enum property_info structs. Used for feature specific capability check.
Public Members
-
ctl_property_info_boolean_t BoolType
[in,out] Boolean type fields
-
ctl_property_info_float_t FloatType
[in,out] Float type fields
-
ctl_property_info_int_t IntType
[in,out] Int type fields
-
ctl_property_info_enum_t EnumType
[in,out] Enum type fields
-
ctl_property_info_uint_t UIntType
[in,out] Unsigned Int type fields
-
ctl_property_info_boolean_t BoolType
ctl_property_t
-
union ctl_property_t
- #include <igcl_api.h>
Feature element details, union of bool/float/enum property structs. Used for get/set calls.
Public Members
-
ctl_property_boolean_t BoolType
[in,out] Boolean type fields
-
ctl_property_float_t FloatType
[in,out] Float type fields
-
ctl_property_int_t IntType
[in,out] Int type fields
-
ctl_property_enum_t EnumType
[in,out] Enum type fields
-
ctl_property_uint_t UIntType
[in,out] Unsigned Int type fields
-
ctl_property_boolean_t BoolType
ctl_data_value_t
-
union ctl_data_value_t
- #include <igcl_api.h>
Union for Generic Data.
The telemetry data items could be of different types.
Refer to ctl_data_type_t to find the current type.
Public Members
-
int8_t data8
[out] The data type is 8 bit signed integer.
-
uint8_t datau8
[out] The data type is 8 bit unsigned integer.
-
int16_t data16
[out] The data type is 16 bit signed integer.
-
uint16_t datau16
[out] The data type is 16 bit unsigned integer.
-
int32_t data32
[out] The data type is 32 bit signed integer.
-
uint32_t datau32
[out] The data type is 32 bit unsigned integer.
-
int64_t data64
[out] The data type is 64 bit signed integer.
-
uint64_t datau64
[out] The data type is 64 bit unsigned integer.
-
float datafloat
[out] The data type is 32 bit floating point.
-
double datadouble
[out] The data type is 64 bit floating point.
ctl_base_properties_t
-
struct ctl_base_properties_t
Base for all properties types.
ctl_application_id_t
-
struct ctl_application_id_t
Application Unique ID.
ctl_init_args_t
-
struct ctl_init_args_t
Init arguments.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_version_info_t AppVersion
[in][release] App’s IGCL version
-
ctl_init_flags_t flags
[in][release] Caller version
-
ctl_version_info_t SupportedVersion
[out][release] IGCL implementation version
-
ctl_application_id_t ApplicationUID
[in] Application Provided Unique ID.Application can pass all 0’s as the default ID
-
uint32_t Size
ctl_reserved_args_t
-
struct ctl_reserved_args_t
Reserved struct.
ctl_reserved_args_base_t
-
struct ctl_reserved_args_base_t
Reserved base struct.
Public Members
-
ctl_application_id_t ReservedFuncID
[in] Unique ID for reserved/special function
-
ctl_application_id_t ReservedFuncID
ctl_unlock_capability_t
-
struct ctl_unlock_capability_t
Reserved - Unlock function capability.
Public Members
-
ctl_application_id_t ReservedFuncID
[in] Unique ID for reserved/special function
-
ctl_application_id_t UnlockCapsID
[in] Unique ID to unlock a specific function
-
ctl_application_id_t ReservedFuncID
ctl_runtime_path_args_t
-
struct ctl_runtime_path_args_t
Used by loader like modules to specify runtime implementation details.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_application_id_t UnlockID
[in] Unique ID for reserved/special function
-
wchar_t *pRuntimePath
[in] Path to runtime DLL
-
uint16_t DeviceID
[in] Device ID of interest to caller. pRuntimePath should not be NULL.
-
uint8_t RevID
[in] Revision ID of interest to caller. pRuntimePath should not be NULL.
-
uint32_t Size
ctl_firmware_version_t
-
struct ctl_firmware_version_t
Firmware version.
ctl_adapter_bdf_t
-
struct ctl_adapter_bdf_t
Adapter Pci Bus, Device, Function.
ctl_device_adapter_properties_t
-
struct ctl_device_adapter_properties_t
Device Adapter properties.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
void *pDeviceID
[in,out] OS specific Device ID
-
uint32_t device_id_size
[in] size of the device ID
-
ctl_device_type_t device_type
[out] Device Type
-
ctl_supported_functions_flags_t supported_subfunction_flags
[out] Supported functions
-
uint64_t driver_version
[out] Driver version
-
ctl_firmware_version_t firmware_version
[out] Firmware version
-
uint32_t pci_vendor_id
[out] PCI Vendor ID
-
uint32_t pci_device_id
[out] PCI Device ID
-
uint32_t rev_id
[out] PCI Revision ID
-
uint32_t num_eus_per_sub_slice
[out] Number of EUs per sub-slice
-
uint32_t num_sub_slices_per_slice
[out] Number of sub-slices per slice
-
uint32_t num_slices
[out] Number of slices
-
char name[CTL_MAX_DEVICE_NAME_LEN]
[out] Device name
-
ctl_adapter_properties_flags_t graphics_adapter_properties
[out] Graphics Adapter Properties
-
uint32_t Frequency
[out] Clock frequency for this device. Supported only for Version > 0
-
uint16_t pci_subsys_id
[out] PCI SubSys ID, Supported only for Version > 1
-
uint16_t pci_subsys_vendor_id
[out] PCI SubSys Vendor ID, Supported only for Version > 1
-
ctl_adapter_bdf_t adapter_bdf
[out] Pci Bus, Device, Function. Supported only for Version > 1
-
char reserved[CTL_MAX_RESERVED_SIZE]
[out] Reserved
-
uint32_t Size
ctl_generic_void_datatype_t
-
struct ctl_generic_void_datatype_t
Generic Structure for Void* datatypes.
ctl_revision_datatype_t
-
struct ctl_revision_datatype_t
Generic Structure for Revision datatypes.
ctl_wait_property_change_args_t
-
struct ctl_wait_property_change_args_t
Arguments related to wait for a property change function.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_property_type_flags_t PropertyType
[in] Type of the property
-
uint32_t TimeOutMilliSec
[in][release] Time-out interval in milliseconds. Specify 0xFFFFFFFF if time-out is not desired
-
uint32_t EventMiscFlags
[in][release] Event flags for future use
-
void *pReserved
[in][release] Reserved for future use
-
uint64_t ReservedOutFlags
[out] Reserved out argument for future use
-
uint32_t Size
ctl_rect_t
-
struct ctl_rect_t
Rectangle.
_3d
Functions
Enumerations
Structures
_3d Functions
ctlGetSupported3DCapabilities
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSupported3DCapabilities(ctl_device_adapter_handle_t hDAhandle, ctl_3d_feature_caps_t *pFeatureCaps)
Get 3D capabilities.
The application gets 3D properties
- Parameters:
hDAhandle – [in][release] Handle to display adapter
pFeatureCaps – [in,out][release] 3D properties
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pFeatureCaps
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetSet3DFeature
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSet3DFeature(ctl_device_adapter_handle_t hDAhandle, ctl_3d_feature_getset_t *pFeature)
Get/Set 3D feature.
3D feature details
- Parameters:
hDAhandle – [in][release] Handle to display adapter
pFeature – [in][release] 3D feature get/set parameter
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pFeature
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
_3d Enums
ctl_3d_feature_t
-
enum ctl_3d_feature_t
Feature type.
Values:
-
enumerator CTL_3D_FEATURE_FRAME_PACING
Frame pacing. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_ENDURANCE_GAMING
Endurance gaming. Contains generic integer type fields. Value will be interpreted as the max FPS to be used when in DC mode globally or per application.
-
enumerator CTL_3D_FEATURE_FRAME_LIMIT
Frame limit for games. Contains generic integer type fields. Value will be interpreted as the max FPS to be used independent of system power state.
-
enumerator CTL_3D_FEATURE_ANISOTROPIC
ANISOTROPIC. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_CMAA
CMAA. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_TEXTURE_FILTERING_QUALITY
Texture filtering quality. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_ADAPTIVE_TESSELLATION
Adaptive tessellation quality. Contains generic integer type fields.
-
enumerator CTL_3D_FEATURE_SHARPENING_FILTER
Sharpening Filter. Contains generic integer type fields.
-
enumerator CTL_3D_FEATURE_MSAA
Msaa. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_GAMING_FLIP_MODES
Various Gaming flip modes like speed frame, smooth sync & force async flip. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_ADAPTIVE_SYNC_PLUS
Adaptive sync plus. Refer custom field ctl_adaptivesync_caps_t & ctl_adaptivesync_getset_t.
-
enumerator CTL_3D_FEATURE_APP_PROFILES
Game Compatibility & Performance Profiles. Refer custom field ctl_3d_app_profiles_caps_t & ctl_3d_app_profiles_t.
-
enumerator CTL_3D_FEATURE_APP_PROFILE_DETAILS
Game Profile Customization. Refer custom field ctl_3d_tier_details_t.
-
enumerator CTL_3D_FEATURE_EMULATED_TYPED_64BIT_ATOMICS
Emulated Typed 64bit Atomics support in DG2.
-
enumerator CTL_3D_FEATURE_VRR_WINDOWED_BLT
VRR windowed blt. Control VRR for windowed mode game.
-
enumerator CTL_3D_FEATURE_GLOBAL_OR_PER_APP
Set global settings or per application settings.
-
enumerator CTL_3D_FEATURE_LOW_LATENCY
Low latency mode. Contains generic enum type fields.
-
enumerator CTL_3D_FEATURE_MAX
-
enumerator CTL_3D_FEATURE_FRAME_PACING
ctl_3d_feature_misc_flags_t
-
enum ctl_3d_feature_misc_flag_t
Values:
-
enumerator CTL_3D_FEATURE_MISC_FLAG_DX11
Feature supported on DX11.
-
enumerator CTL_3D_FEATURE_MISC_FLAG_DX12
Feature supported on DX12.
-
enumerator CTL_3D_FEATURE_MISC_FLAG_VULKAN
Feature supported on VULKAN.
-
enumerator CTL_3D_FEATURE_MISC_FLAG_LIVE_CHANGE
User can change feature live without restarting the game.
-
enumerator CTL_3D_FEATURE_MISC_FLAG_MAX
-
enumerator CTL_3D_FEATURE_MISC_FLAG_DX11
ctl_3d_anisotropic_types_t
-
enum ctl_3d_anisotropic_types_t
Anisotropic values possible.
Values:
-
enumerator CTL_3D_ANISOTROPIC_TYPES_APP_CHOICE
Application choice.
-
enumerator CTL_3D_ANISOTROPIC_TYPES_2X
2X
-
enumerator CTL_3D_ANISOTROPIC_TYPES_4X
4X
-
enumerator CTL_3D_ANISOTROPIC_TYPES_8X
8X
-
enumerator CTL_3D_ANISOTROPIC_TYPES_16X
16X
-
enumerator CTL_3D_ANISOTROPIC_TYPES_MAX
-
enumerator CTL_3D_ANISOTROPIC_TYPES_APP_CHOICE
ctl_3d_texture_filtering_quality_types_t
-
enum ctl_3d_texture_filtering_quality_types_t
Texture filtering values possible.
Values:
-
enumerator CTL_3D_TEXTURE_FILTERING_QUALITY_TYPES_PERFORMANCE
Performance.
-
enumerator CTL_3D_TEXTURE_FILTERING_QUALITY_TYPES_BALANCED
Balanced.
-
enumerator CTL_3D_TEXTURE_FILTERING_QUALITY_TYPES_QUALITY
Quality.
-
enumerator CTL_3D_TEXTURE_FILTERING_QUALITY_TYPES_MAX
-
enumerator CTL_3D_TEXTURE_FILTERING_QUALITY_TYPES_PERFORMANCE
ctl_3d_frame_pacing_types_t
-
enum ctl_3d_frame_pacing_types_t
Frame pacing values possible.
Values:
-
enumerator CTL_3D_FRAME_PACING_TYPES_DISABLE
Disable.
-
enumerator CTL_3D_FRAME_PACING_TYPES_ENABLE_MODE_FRAME_NO_SMOOTHENING
Enable with scheduler without any frame smoothening.
-
enumerator CTL_3D_FRAME_PACING_TYPES_ENABLE_MODE_FRAME_MAX_SMOOTHENING
Enable with scheduler with maximum smoothness.
-
enumerator CTL_3D_FRAME_PACING_TYPES_ENABLE_MODE_COMPETITIVE_GAMING
Enable with scheduler in competitive gaming mode.
-
enumerator CTL_3D_FRAME_PACING_TYPES_MAX
-
enumerator CTL_3D_FRAME_PACING_TYPES_DISABLE
ctl_3d_endurance_gaming_control_t
-
enum ctl_3d_endurance_gaming_control_t
Endurance Gaming control possible.
Values:
-
enumerator CTL_3D_ENDURANCE_GAMING_CONTROL_TURN_OFF
Endurance Gaming disable.
-
enumerator CTL_3D_ENDURANCE_GAMING_CONTROL_TURN_ON
Endurance Gaming enable.
-
enumerator CTL_3D_ENDURANCE_GAMING_CONTROL_AUTO
Endurance Gaming auto.
-
enumerator CTL_3D_ENDURANCE_GAMING_CONTROL_MAX
-
enumerator CTL_3D_ENDURANCE_GAMING_CONTROL_TURN_OFF
ctl_3d_endurance_gaming_mode_t
-
enum ctl_3d_endurance_gaming_mode_t
Endurance Gaming modes possible.
Values:
-
enumerator CTL_3D_ENDURANCE_GAMING_MODE_BETTER_PERFORMANCE
Endurance Gaming better performance mode.
-
enumerator CTL_3D_ENDURANCE_GAMING_MODE_BALANCED
Endurance Gaming balanced mode.
-
enumerator CTL_3D_ENDURANCE_GAMING_MODE_MAXIMUM_BATTERY
Endurance Gaming maximum battery mode.
-
enumerator CTL_3D_ENDURANCE_GAMING_MODE_MAX
-
enumerator CTL_3D_ENDURANCE_GAMING_MODE_BETTER_PERFORMANCE
ctl_3d_low_latency_types_t
-
enum ctl_3d_low_latency_types_t
Low latency mode values possible.
Values:
-
enumerator CTL_3D_LOW_LATENCY_TYPES_TURN_OFF
Low latency mode disable.
-
enumerator CTL_3D_LOW_LATENCY_TYPES_TURN_ON
Low latency mode enable.
-
enumerator CTL_3D_LOW_LATENCY_TYPES_TURN_ON_BOOST_MODE_ON
Low latency mode enable with boost.
-
enumerator CTL_3D_LOW_LATENCY_TYPES_MAX
-
enumerator CTL_3D_LOW_LATENCY_TYPES_TURN_OFF
ctl_3d_cmaa_types_t
ctl_3d_adaptive_tessellation_types_t
ctl_3d_sharpening_filter_types_t
ctl_3d_msaa_types_t
-
enum ctl_3d_msaa_types_t
MSAA values possible.
Values:
-
enumerator CTL_3D_MSAA_TYPES_APP_CHOICE
Application choice.
-
enumerator CTL_3D_MSAA_TYPES_DISABLED
Disabled. MSAA count 1.
-
enumerator CTL_3D_MSAA_TYPES_2X
2X
-
enumerator CTL_3D_MSAA_TYPES_4X
4X
-
enumerator CTL_3D_MSAA_TYPES_8X
8X
-
enumerator CTL_3D_MSAA_TYPES_16X
16X
-
enumerator CTL_3D_MSAA_TYPES_MAX
-
enumerator CTL_3D_MSAA_TYPES_APP_CHOICE
ctl_gaming_flip_mode_flags_t
-
enum ctl_gaming_flip_mode_flag_t
Values:
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_APPLICATION_DEFAULT
Application Default.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_VSYNC_OFF
Convert all sync flips to async on the next possible scanline.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_VSYNC_ON
Convert all async flips to sync flips.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_SMOOTH_SYNC
Reduce tearing effect with async flips.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_SPEED_FRAME
Application unaware triple buffering.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_CAPPED_FPS
Limit the game FPS to panel RR.
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_MAX
-
enumerator CTL_GAMING_FLIP_MODE_FLAG_APPLICATION_DEFAULT
ctl_3d_tier_type_flags_t
ctl_3d_tier_profile_flags_t
-
enum ctl_3d_tier_profile_flag_t
Values:
-
enumerator CTL_3D_TIER_PROFILE_FLAG_TIER_1
Tier 1 Profile.
-
enumerator CTL_3D_TIER_PROFILE_FLAG_TIER_2
Tier 2 Profile.
-
enumerator CTL_3D_TIER_PROFILE_FLAG_TIER_RECOMMENDED
Recommended Tier Profile. If set other tier values shouldn’t be set.
-
enumerator CTL_3D_TIER_PROFILE_FLAG_MAX
-
enumerator CTL_3D_TIER_PROFILE_FLAG_TIER_1
ctl_emulated_typed_64bit_atomics_types_t
-
enum ctl_emulated_typed_64bit_atomics_types_t
Emulated Typed 64bit Atomics.
Values:
-
enumerator CTL_EMULATED_TYPED_64BIT_ATOMICS_TYPES_DEFAULT
Default settings is based on workload/driver decision.
-
enumerator CTL_EMULATED_TYPED_64BIT_ATOMICS_TYPES_TURN_ON
Force Turn on.
-
enumerator CTL_EMULATED_TYPED_64BIT_ATOMICS_TYPES_TURN_OFF
Force Turn off.
-
enumerator CTL_EMULATED_TYPED_64BIT_ATOMICS_TYPES_MAX
-
enumerator CTL_EMULATED_TYPED_64BIT_ATOMICS_TYPES_DEFAULT
ctl_3d_vrr_windowed_blt_reserved_t
-
enum ctl_3d_vrr_windowed_blt_reserved_t
VRR windowed BLT control possible. Reserved functionality.
Values:
-
enumerator CTL_3D_VRR_WINDOWED_BLT_RESERVED_AUTO
VRR windowed BLT auto.
-
enumerator CTL_3D_VRR_WINDOWED_BLT_RESERVED_TURN_ON
VRR windowed BLT enable.
-
enumerator CTL_3D_VRR_WINDOWED_BLT_RESERVED_TURN_OFF
VRR windowed BLT disable.
-
enumerator CTL_3D_VRR_WINDOWED_BLT_RESERVED_MAX
-
enumerator CTL_3D_VRR_WINDOWED_BLT_RESERVED_AUTO
ctl_3d_global_or_per_app_types_t
-
enum ctl_3d_global_or_per_app_types_t
Global or per app values possible.
Values:
-
enumerator CTL_3D_GLOBAL_OR_PER_APP_TYPES_NONE
none
-
enumerator CTL_3D_GLOBAL_OR_PER_APP_TYPES_PER_APP
Opt for per app settings.
-
enumerator CTL_3D_GLOBAL_OR_PER_APP_TYPES_GLOBAL
Opt for global settings.
-
enumerator CTL_3D_GLOBAL_OR_PER_APP_TYPES_MAX
-
enumerator CTL_3D_GLOBAL_OR_PER_APP_TYPES_NONE
_3d Structures
ctl_endurance_gaming_caps_t
-
struct ctl_endurance_gaming_caps_t
Endurance Gaming caps.
Public Members
-
ctl_property_info_enum_t EGControlCaps
[out] Endurance Gaming control capability
-
ctl_property_info_enum_t EGModeCaps
[out] Endurance Gaming mode capability
-
ctl_property_info_enum_t EGControlCaps
ctl_endurance_gaming_t
-
struct ctl_endurance_gaming_t
Endurance Gaming Get/Set.
Public Members
-
ctl_3d_endurance_gaming_control_t EGControl
[in,out] Endurance Gaming control - Off/On/Auto
-
ctl_3d_endurance_gaming_mode_t EGMode
[in,out] Endurance Gaming mode - Better Performance/Balanced/Maximum Battery
-
ctl_3d_endurance_gaming_control_t EGControl
ctl_endurance_gaming2_t
-
struct ctl_endurance_gaming2_t
Endurance Gaming version2 Get/Set.
Public Members
-
ctl_3d_endurance_gaming_control_t EGControl
[in,out] Endurance Gaming control - Off/On/Auto
-
ctl_3d_endurance_gaming_mode_t EGMode
[in,out] Endurance Gaming mode - Better Performance/Balanced/Maximum Battery
-
bool IsFPRequired
[out] Is frame pacing required, dynamic state
-
double TargetFPS
[out] Target FPS for frame pacing
-
double RefreshRate
[out] Refresh rate used to calculate target fps
-
uint32_t Reserved[4]
[out] Reserved fields
-
ctl_3d_endurance_gaming_control_t EGControl
ctl_adaptivesync_caps_t
-
struct ctl_adaptivesync_caps_t
Adaptive sync plus caps.
Public Members
-
bool AdaptiveBalanceSupported
[out] Adaptive balance supported
-
ctl_property_info_float_t AdaptiveBalanceStrengthCaps
[out] Strength of adaptive balance algorithm - min/max/steps/default
-
bool AdaptiveBalanceSupported
ctl_adaptivesync_getset_t
-
struct ctl_adaptivesync_getset_t
Adaptive sync plus.
Public Members
-
bool AdaptiveSync
[in,out] Adaptive sync. Note that in Windows, OS controls state of adaptive sync and which game gets the feature using it’s own policies
-
bool AdaptiveBalance
[in,out] Adaptive balance
-
bool AllowAsyncForHighFPS
[in,out] Allow async flips when FPS is higher than max refresh rate of the panel
-
float AdaptiveBalanceStrength
[in,out] Adaptive balance strength
-
bool AdaptiveSync
ctl_3d_app_profiles_caps_t
-
struct ctl_3d_app_profiles_caps_t
Game Profile Capabilities. Typically these remain the same across games.
ctl_3d_app_profiles_t
-
struct ctl_3d_app_profiles_t
Game Profile tiers.
Public Members
-
ctl_3d_tier_type_flag_t TierType
[in] Tier type
-
ctl_3d_tier_profile_flags_t SupportedTierProfiles
[out] Supported tier profiles bitmask
-
ctl_3d_tier_profile_flags_t DefaultEnabledTierProfiles
[out] Default tiers which driver will enable if there is no user specific setting for global or per application
-
ctl_3d_tier_profile_flags_t CustomizationSupportedTierProfiles
[out] Tiers supporting customization - reserved for future
-
ctl_3d_tier_profile_flags_t EnabledTierProfiles
[in,out] Tier profile(s) to be enabled/disabled in the case of a set call. For a get call this will return the currently enabled tiers
-
ctl_3d_tier_profile_flags_t CustomizationEnabledTierProfiles
[in,out] Tier profile(s) which are customized. Caller shall call ctl_3d_tier_details_t to get specifics if any.
-
uint64_t Reserved
[in,out] Reserved for future
-
ctl_3d_tier_type_flag_t TierType
ctl_3d_tier_details_t
-
struct ctl_3d_tier_details_t
Game Profile tiers details.
Public Members
-
ctl_3d_tier_type_flag_t TierType
[in] Tier type
-
ctl_3d_tier_profile_flag_t TierProfile
[in] Tier profile(s) for get/set details
-
uint64_t Reserved[4]
[in,out] Reserved for future
-
ctl_3d_tier_type_flag_t TierType
ctl_3d_feature_details_t
-
struct ctl_3d_feature_details_t
3D feature capability details which will have range/supported and default values
Public Members
-
ctl_3d_feature_t FeatureType
[out] 3D feature type
-
ctl_property_value_type_t ValueType
[out] Type of value
-
ctl_property_info_t Value
[out] Union of various type of values for 3D features. For enum types this can be anisotropic/frame pacing etc. This member is valid iff ValueType is not CTL_PROPERTY_VALUE_TYPE_CUSTOM
-
int32_t CustomValueSize
[in] CustomValue buffer size. Typically for a feature requiring custom struct, caller will know of it upfront and can provide the right size info here
-
void *pCustomValue
[in,out] Pointer to a custom structure. Caller should allocate this buffer with known custom feature structure size. This member is valid iff ValueType is CTL_PROPERTY_VALUE_TYPE_CUSTOM
-
bool PerAppSupport
[out] Flag indicating whether the feature is supported per application or not
-
int64_t ConflictingFeatures
[out] Mask of ctl_3d_feature_t values which can’t be enabled along with the mentioned FeatureType. If this is 0, it meant the feature doesn’t have any conflicts with other features
-
int16_t FeatureMiscSupport
[out] 3D Feature Miscellaneous support flags. This will be based on ctl_3d_feature_misc_flags_t
-
int16_t Reserved
[out] Reserved
-
int16_t Reserved1
[out] Reserved
-
int16_t Reserved2
[out] Reserved
-
ctl_3d_feature_t FeatureType
ctl_3d_feature_caps_t
-
struct ctl_3d_feature_caps_t
3D feature which are controllable
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
uint32_t NumSupportedFeatures
[in,out] Number of elements in supported features array
-
ctl_3d_feature_details_t *pFeatureDetails
[in,out] Array of feature details
-
uint32_t Size
ctl_3d_feature_getset_t
-
struct ctl_3d_feature_getset_t
3D feature for get/set
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_3d_feature_t FeatureType
[in] Features interested in
-
char *ApplicationName
[in] Application name for which the property type is applicable. If this is an empty string then this will get/set global settings for the given adapter. Note that this should contain only the name of the application and not the system specific path
-
int8_t ApplicationNameLength
[in] Length of ApplicationName string
-
bool bSet
[in] Set this if it’s a set call
-
ctl_property_value_type_t ValueType
[in] Type of value. Caller has to ensure it provides the right value type which decides how one read the union structure below
-
ctl_property_t Value
[in,out] Union of various type of values for 3D features. For enum types this can be anisotropic/frame pacing etc. This member is valid iff ValueType is not CTL_PROPERTY_VALUE_TYPE_CUSTOM
-
int32_t CustomValueSize
[in] CustomValue buffer size. Typically for a feature requiring custom struct, caller will know of it upfront and cn provide the right size info here
-
void *pCustomValue
[in,out] Pointer to a custom structure. Caller should allocate this buffer with known custom feature structure size. This member is valid iff ValueType is CTL_PROPERTY_VALUE_TYPE_CUSTOM
-
uint32_t Size
ctl_kmd_load_features_t
-
struct ctl_kmd_load_features_t
Load KMD gaming features. Restricted function.
Public Members
-
ctl_application_id_t ReservedFuncID
[in] Unique ID for reserved/special function
-
bool bLoad
[in] If set, will load known KMD features. If not set will reset known KMD features to default
-
int64_t SubsetFeatureMask
[in,out] Mask indicating the subset of KMD features within ctl_3d_feature_t values. Default of 0 indicate all KMD features
-
char *ApplicationName
[in] Application name for which the KMD properties are loaded for. If this is an empty string then this will load global settings for the given adapter. Note that this should contain only the name of the application and not the system specific path
-
int8_t ApplicationNameLength
[in] Length of ApplicationName string
-
int8_t CallerComponent
[in] Caller component
-
int64_t Reserved[4]
[in] Reserved field
-
ctl_application_id_t ReservedFuncID
Display
Functions
Enumerations
Structures
Display Functions
ctlCheckDriverVersion
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlCheckDriverVersion(ctl_device_adapter_handle_t hDeviceAdapter, ctl_version_info_t version_info)
Check Driver version.
The application checks driver version
- Parameters:
hDeviceAdapter – [in][release] handle to control device adapter
version_info – [in][release] Driver version info
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlEnumerateDevices
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlEnumerateDevices(ctl_api_handle_t hAPIHandle, uint32_t *pCount, ctl_device_adapter_handle_t *phDevices)
Enumerate devices.
The application enumerates all device adapters in the system
- Parameters:
hAPIHandle – [in][release] Applications should pass the Control API handle returned by the CtlInit function
pCount – [in,out][release] pointer to the number of device instances. If count is zero, then the api will update the value with the total number of drivers available. If count is non-zero, then the api will only retrieve the number of drivers. If count is larger than the number of drivers available, then the api will update the value with the correct number of drivers available.
phDevices – [in,out][optional][release][range(0, *pCount)] array of driver instance handles
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hAPIHandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCount
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlEnumerateDisplayOutputs
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlEnumerateDisplayOutputs(ctl_device_adapter_handle_t hDeviceAdapter, uint32_t *pCount, ctl_display_output_handle_t *phDisplayOutputs)
Enumerate display outputs.
Enumerates display output capabilities
- Parameters:
hDeviceAdapter – [in][release] handle to control device adapter
pCount – [in,out][release] pointer to the number of display output instances. If count is zero, then the api will update the value with the total number of outputs available. If count is non-zero, then the api will only retrieve the number of outputs. If count is larger than the number of drivers available, then the api will update the value with the correct number of drivers available.
phDisplayOutputs – [in,out][optional][release][range(0, *pCount)] array of display output instance handles
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCount
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlEnumerateI2CPinPairs
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlEnumerateI2CPinPairs(ctl_device_adapter_handle_t hDeviceAdapter, uint32_t *pCount, ctl_i2c_pin_pair_handle_t *phI2cPinPairs)
Enumerate I2C Pin Pairs.
Returns available list of I2C Pin-Pairs on a requested adapter
- Parameters:
hDeviceAdapter – [in][release] handle to device adapter
pCount – [in,out][release] pointer to the number of i2c pin-pair instances. If count is zero, then the api will update the value with the total number of i2c pin-pair instances available. If count is non-zero and matches the avaialble number of pin-pairs, then the api will only return the avaialble number of i2c pin-pair instances in phI2cPinPairs.
phI2cPinPairs – [out][optional][release][range(0, *pCount)] array of i2c pin pair instance handles. Need to be allocated by Caller when supplying the *pCount > 0. If Count is not equal to actual number of i2c pin-pair instances, it will return CTL_RESULT_ERROR_INVALID_SIZE.
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCount
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “The incoming pointer pCount is null”
CTL_RESULT_ERROR_INVALID_SIZE - “The supplied Count is not equal to actual number of i2c pin-pair instances”
ctlGetDeviceProperties
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetDeviceProperties(ctl_device_adapter_handle_t hDAhandle, ctl_device_adapter_properties_t *pProperties)
Get Device Properties.
The application gets device properties
- Parameters:
hDAhandle – [in][release] Handle to control device adapter
pProperties – [in,out][release] Query result for device properties
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pProperties
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetDisplayProperties
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetDisplayProperties(ctl_display_output_handle_t hDisplayOutput, ctl_display_properties_t *pProperties)
Get Display Properties.
The application gets display properties
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pProperties – [in,out][release] Query result for display properties
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pProperties
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetAdaperDisplayEncoderProperties
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetAdaperDisplayEncoderProperties(ctl_display_output_handle_t hDisplayOutput, ctl_adapter_display_encoder_properties_t *pProperties)
Get Adapter Display encoder Properties.
The application gets the graphic adapters display encoder properties
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pProperties – [in,out][release] Query result for adapter display encoder properties
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pProperties
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetZeDevice
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetZeDevice(ctl_device_adapter_handle_t hDAhandle, void *pZeDevice, void **hInstance)
Get Level0 Device handle.
The application gets OneAPI Level0 Device handles
- Parameters:
hDAhandle – [in][release] Handle to display adapter
pZeDevice – [out][release] ze_device handle
hInstance – [out][release] Module instance which caller can use to get export functions directly
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pZeDevice
nullptr == hInstance
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetSharpnessCaps
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSharpnessCaps(ctl_display_output_handle_t hDisplayOutput, ctl_sharpness_caps_t *pSharpnessCaps)
Get Sharpness capability.
Returns sharpness capability
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSharpnessCaps – [in,out][release] Query result for sharpness capability
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSharpnessCaps
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetCurrentSharpness
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetCurrentSharpness(ctl_display_output_handle_t hDisplayOutput, ctl_sharpness_settings_t *pSharpnessSettings)
Get Sharpness setting.
Returns current sharpness settings
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSharpnessSettings – [in,out][release] Query result for sharpness current settings
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSharpnessSettings
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlSetCurrentSharpness
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetCurrentSharpness(ctl_display_output_handle_t hDisplayOutput, ctl_sharpness_settings_t *pSharpnessSettings)
Set Sharpness setting.
Set current sharpness settings
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSharpnessSettings – [in][release] Set sharpness current settings
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSharpnessSettings
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlI2CAccess
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlI2CAccess(ctl_display_output_handle_t hDisplayOutput, ctl_i2c_access_args_t *pI2cAccessArgs)
I2C Access.
Interface to access I2C using display handle as identifier.
- Parameters:
hDisplayOutput – [in] Handle to display output
pI2cAccessArgs – [in,out] I2c access arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pI2cAccessArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_SIZE - “Invalid I2C data size”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
ctlI2CAccessOnPinPair
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlI2CAccessOnPinPair(ctl_i2c_pin_pair_handle_t hI2cPinPair, ctl_i2c_access_pinpair_args_t *pI2cAccessArgs)
I2C Access On Pin Pair.
Interface to access I2C using pin-pair handle as identifier.
- Parameters:
hI2cPinPair – [in] Handle to I2C pin pair.
pI2cAccessArgs – [in,out] I2c access arguments.
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hI2cPinPair
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pI2cAccessArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_SIZE - “Invalid I2C data size”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid Args passed”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
CTL_RESULT_ERROR_INVALID_NULL_HANDLE - “Invalid or Null handle passed”
CTL_RESULT_ERROR_EXTERNAL_DISPLAY_ATTACHED - “Write to Address not allowed when Display is connected”
ctlAUXAccess
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlAUXAccess(ctl_display_output_handle_t hDisplayOutput, ctl_aux_access_args_t *pAuxAccessArgs)
Aux Access.
The application does Aux access, PSR needs to be disabled for AUX call.
- Parameters:
hDisplayOutput – [in] Handle to display output
pAuxAccessArgs – [in,out] Aux access arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pAuxAccessArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_SIZE - “Invalid AUX data size”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_INVALID_AUX_ACCESS_FLAG - “Invalid flag for AUX access”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
ctlGetPowerOptimizationCaps
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetPowerOptimizationCaps(ctl_display_output_handle_t hDisplayOutput, ctl_power_optimization_caps_t *pPowerOptimizationCaps)
Get Power optimization features.
Returns power optimization capabilities
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pPowerOptimizationCaps – [in,out][release] Query result for power optimization features
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPowerOptimizationCaps
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetPowerOptimizationSetting
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetPowerOptimizationSetting(ctl_display_output_handle_t hDisplayOutput, ctl_power_optimization_settings_t *pPowerOptimizationSettings)
Get Power optimization setting.
Returns power optimization setting for a specific feature
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pPowerOptimizationSettings – [in,out][release] Power optimization data to be fetched
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPowerOptimizationSettings
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_POWERFEATURE_OPTIMIZATION_FLAG - “Unsupported PowerOptimizationFeature”
CTL_RESULT_ERROR_INVALID_POWERSOURCE_TYPE_FOR_DPST - “DPST is supported only in DC Mode”
ctlSetPowerOptimizationSetting
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetPowerOptimizationSetting(ctl_display_output_handle_t hDisplayOutput, ctl_power_optimization_settings_t *pPowerOptimizationSettings)
Set Power optimization setting.
Set power optimization setting for a specific feature
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pPowerOptimizationSettings – [in][release] Power optimization data to be applied
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPowerOptimizationSettings
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_POWERFEATURE_OPTIMIZATION_FLAG - “Unsupported PowerOptimizationFeature”
CTL_RESULT_ERROR_INVALID_POWERSOURCE_TYPE_FOR_DPST - “DPST is supported only in DC Mode”
CTL_RESULT_ERROR_SET_FBC_FEATURE_NOT_SUPPORTED - “Set FBC Feature not supported”
ctlSetBrightnessSetting
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetBrightnessSetting(ctl_display_output_handle_t hDisplayOutput, ctl_set_brightness_t *pSetBrightnessSetting)
Set Brightness on companion display.
Set Brightness for a target display. Currently support is only for companion display.
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSetBrightnessSetting – [in][release] Brightness settings to be applied
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSetBrightnessSetting
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid Brightness data passed as argument”
CTL_RESULT_ERROR_DISPLAY_NOT_ACTIVE - “Display not active”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Currently Brightness API is supported only on companion display”
ctlGetBrightnessSetting
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetBrightnessSetting(ctl_display_output_handle_t hDisplayOutput, ctl_get_brightness_t *pGetBrightnessSetting)
Get Brightness setting.
Get Brightness for a target display. Currently support is only for companion display.
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pGetBrightnessSetting – [out][release] Brightness settings data to be fetched
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pGetBrightnessSetting
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_DISPLAY_NOT_ACTIVE - “Display not active”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Currently Brightness API is supported only on companion display”
ctlPixelTransformationGetConfig
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlPixelTransformationGetConfig(ctl_display_output_handle_t hDisplayOutput, ctl_pixtx_pipe_get_config_t *pPixTxGetConfigArgs)
Pixel transformation get pipe configuration.
The application does pixel transformation get pipe configuration
- Parameters:
hDisplayOutput – [in] Handle to display output
pPixTxGetConfigArgs – [in,out] Pixel transformation get pipe configiguration arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPixTxGetConfigArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
CTL_RESULT_ERROR_INVALID_PIXTX_GET_CONFIG_QUERY_TYPE - “Invalid query type”
CTL_RESULT_ERROR_INVALID_PIXTX_BLOCK_ID - “Invalid block id”
CTL_RESULT_ERROR_INSUFFICIENT_PIXTX_BLOCK_CONFIG_MEMORY - “Insufficient memery allocated for BlockConfigs”
CTL_RESULT_ERROR_3DLUT_INVALID_PIPE - “Invalid pipe for 3dlut”
CTL_RESULT_ERROR_3DLUT_INVALID_DATA - “Invalid 3dlut data”
CTL_RESULT_ERROR_3DLUT_NOT_SUPPORTED_IN_HDR - “3dlut not supported in HDR”
CTL_RESULT_ERROR_3DLUT_INVALID_OPERATION - “Invalid 3dlut operation”
CTL_RESULT_ERROR_3DLUT_UNSUCCESSFUL - “3dlut call unsuccessful”
ctlPixelTransformationSetConfig
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlPixelTransformationSetConfig(ctl_display_output_handle_t hDisplayOutput, ctl_pixtx_pipe_set_config_t *pPixTxSetConfigArgs)
Pixel transformation set pipe configuration.
The application does pixel transformation set pipe configuration
- Parameters:
hDisplayOutput – [in] Handle to display output
pPixTxSetConfigArgs – [in,out] Pixel transformation set pipe configiguration arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPixTxSetConfigArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
CTL_RESULT_ERROR_INVALID_PIXTX_SET_CONFIG_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_SET_CONFIG_NUMBER_OF_SAMPLES - “Invalid number of samples”
CTL_RESULT_ERROR_INVALID_PIXTX_BLOCK_ID - “Invalid block id”
CTL_RESULT_ERROR_PERSISTANCE_NOT_SUPPORTED - “Persistance not supported”
CTL_RESULT_ERROR_3DLUT_INVALID_PIPE - “Invalid pipe for 3dlut”
CTL_RESULT_ERROR_3DLUT_INVALID_DATA - “Invalid 3dlut data”
CTL_RESULT_ERROR_3DLUT_NOT_SUPPORTED_IN_HDR - “3dlut not supported in HDR”
CTL_RESULT_ERROR_3DLUT_INVALID_OPERATION - “Invalid 3dlut operation”
CTL_RESULT_ERROR_3DLUT_UNSUCCESSFUL - “3dlut call unsuccessful”
ctlPanelDescriptorAccess
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlPanelDescriptorAccess(ctl_display_output_handle_t hDisplayOutput, ctl_panel_descriptor_access_args_t *pPanelDescriptorAccessArgs)
Panel Descriptor Access.
The application does EDID or Display ID access
- Parameters:
hDisplayOutput – [in] Handle to display output
pPanelDescriptorAccessArgs – [in,out] Panel descriptor access arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pPanelDescriptorAccessArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
ctlGetSupportedRetroScalingCapability
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSupportedRetroScalingCapability(ctl_device_adapter_handle_t hDAhandle, ctl_retro_scaling_caps_t *pRetroScalingCaps)
Get Supported Retro Scaling Types.
Returns supported retro scaling capabilities
- Parameters:
hDAhandle – [in][release] Handle to adapter
pRetroScalingCaps – [in,out][release] Query result for supported retro scaling types
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pRetroScalingCaps
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetSetRetroScaling
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetRetroScaling(ctl_device_adapter_handle_t hDAhandle, ctl_retro_scaling_settings_t *pGetSetRetroScalingType)
Get/Set Retro Scaling.
Get or Set the status of retro scaling.This Api will do a physical modeset resulting in flash on the screen
- Parameters:
hDAhandle – [in][release] Handle to adapter
pGetSetRetroScalingType – [in,out][release] Get or Set the retro scaling type
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDAhandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pGetSetRetroScalingType
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetSupportedScalingCapability
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSupportedScalingCapability(ctl_display_output_handle_t hDisplayOutput, ctl_scaling_caps_t *pScalingCaps)
Get Supported Scaling Types.
Returns supported scaling capabilities
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pScalingCaps – [in,out][release] Query result for supported scaling types
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pScalingCaps
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetCurrentScaling
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetCurrentScaling(ctl_display_output_handle_t hDisplayOutput, ctl_scaling_settings_t *pGetCurrentScalingType)
Get Current Scaling.
Returns current active scaling
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pGetCurrentScalingType – [in,out][release] Query result for active scaling types
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pGetCurrentScalingType
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlSetCurrentScaling
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetCurrentScaling(ctl_display_output_handle_t hDisplayOutput, ctl_scaling_settings_t *pSetScalingType)
Set Scaling Type.
Returns current active scaling
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSetScalingType – [in,out][release] Set scaling types
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSetScalingType
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetLACEConfig
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetLACEConfig(ctl_display_output_handle_t hDisplayOutput, ctl_lace_config_t *pLaceConfig)
Get LACE Config.
Returns current LACE Config
- Parameters:
hDisplayOutput – [in] Handle to display output
pLaceConfig – [out]Lace configuration
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pLaceConfig
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_LACE_INVALID_DATA_ARGUMENT_PASSED - “Lace Incorrrect AggressivePercent data or LuxVsAggressive Map data passed by user”
ctlSetLACEConfig
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetLACEConfig(ctl_display_output_handle_t hDisplayOutput, ctl_lace_config_t *pLaceConfig)
Sets LACE Config.
Sets LACE Config
- Parameters:
hDisplayOutput – [in]Handle to display output
pLaceConfig – [in]Lace configuration
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pLaceConfig
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_LACE_INVALID_DATA_ARGUMENT_PASSED - “Lace Incorrrect AggressivePercent data or LuxVsAggressive Map data passed by user”
ctlSoftwarePSR
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSoftwarePSR(ctl_display_output_handle_t hDisplayOutput, ctl_sw_psr_settings_t *pSoftwarePsrSetting)
Get Software PSR caps/Set software PSR State.
Returns Software PSR status or Sets Software PSR capabilities. This is a reserved capability. By default, software PSR is not supported/will not be enabled, need application to activate it, please contact Intel for activation.
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pSoftwarePsrSetting – [in,out][release] Get Software PSR caps/state or Set Software PSR state
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pSoftwarePsrSetting
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetIntelArcSyncInfoForMonitor
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetIntelArcSyncInfoForMonitor(ctl_display_output_handle_t hDisplayOutput, ctl_intel_arc_sync_monitor_params_t *pIntelArcSyncMonitorParams)
Get Intel Arc Sync information for monitor.
Returns Intel Arc Sync information for selected monitor
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pIntelArcSyncMonitorParams – [in,out][release] Intel Arc Sync params for monitor
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pIntelArcSyncMonitorParams
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlEnumerateMuxDevices
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlEnumerateMuxDevices(ctl_api_handle_t hAPIHandle, uint32_t *pCount, ctl_mux_output_handle_t *phMuxDevices)
Enumerate Display MUX Devices on this system across adapters.
The application enumerates all MUX devices in the system
- Parameters:
hAPIHandle – [in][release] Applications should pass the Control API handle returned by the CtlInit function
pCount – [in,out][release] pointer to the number of MUX device instances. If input count is zero, then the api will update the value with the total number of MUX devices available and return the Count value. If input count is non-zero, then the api will only retrieve the number of MUX Devices. If count is larger than the number of MUX devices available, then the api will update the value with the correct number of MUX devices available.
phMuxDevices – [out][range(0, *pCount)] array of MUX device instance handles
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hAPIHandle
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCount
nullptr == phMuxDevices
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetMuxProperties
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetMuxProperties(ctl_mux_output_handle_t hMuxDevice, ctl_mux_properties_t *pMuxProperties)
Get Display Mux properties.
Get the propeties of the Mux device
- Parameters:
hMuxDevice – [in] MUX device instance handle
pMuxProperties – [in,out] MUX device properties
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hMuxDevice
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pMuxProperties
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlSwitchMux
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSwitchMux(ctl_mux_output_handle_t hMuxDevice, ctl_display_output_handle_t hInactiveDisplayOutput)
Switch Mux output.
Switches the MUX output
- Parameters:
hMuxDevice – [in] MUX device instance handle
hInactiveDisplayOutput – [out] Input selection for this MUX, which if active will drive the output of this MUX device. This should be one of the display output handles reported under this MUX device’s properties.
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hMuxDevice
nullptr == hInactiveDisplayOutput
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlGetIntelArcSyncProfile
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetIntelArcSyncProfile(ctl_display_output_handle_t hDisplayOutput, ctl_intel_arc_sync_profile_params_t *pIntelArcSyncProfileParams)
Get Intel Arc Sync profile.
Returns Intel Arc Sync profile for selected monitor
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pIntelArcSyncProfileParams – [in,out][release] Intel Arc Sync params for monitor
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pIntelArcSyncProfileParams
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlSetIntelArcSyncProfile
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlSetIntelArcSyncProfile(ctl_display_output_handle_t hDisplayOutput, ctl_intel_arc_sync_profile_params_t *pIntelArcSyncProfileParams)
Set Intel Arc Sync profile.
Sets Intel Arc Sync profile for selected monitor. In a mux situation, this API should be called for all display IDs associated with a physical display.
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pIntelArcSyncProfileParams – [in][release] Intel Arc Sync params for monitor
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pIntelArcSyncProfileParams
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
ctlEdidManagement
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlEdidManagement(ctl_display_output_handle_t hDisplayOutput, ctl_edid_management_args_t *pEdidManagementArgs)
EDID Management allows managing an output’s EDID or Plugged Status.
To manage output’s EDID or Display ID. Supports native DP SST and HDMI Display types.
- Parameters:
hDisplayOutput – [in] Handle to display output
pEdidManagementArgs – [in,out] EDID management arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pEdidManagementArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid combination of parameters”
CTL_RESULT_ERROR_DISPLAY_NOT_ATTACHED - “Error for Output Device not attached”
CTL_RESULT_ERROR_OUT_OF_DEVICE_MEMORY - “Insufficient device memory to satisfy call”
CTL_RESULT_ERROR_DATA_NOT_FOUND - “Requested EDID data not present.”
ctlGetSetCustomMode
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetCustomMode(ctl_display_output_handle_t hDisplayOutput, ctl_get_set_custom_mode_args_t *pCustomModeArgs)
Get/Set Custom mode.
To get or set custom mode.
Add custom source mode operation supports only single mode additon at a time.
Remove custom source mode operation supports single or multiple mode removal at a time.
- Parameters:
hDisplayOutput – [in] Handle to display output
pCustomModeArgs – [in,out] Custom mode arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCustomModeArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernal mode driver call failure”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid combination of parameters”
CTL_RESULT_ERROR_CUSTOM_MODE_STANDARD_CUSTOM_MODE_EXISTS - “Standard custom mode exists”
CTL_RESULT_ERROR_CUSTOM_MODE_NON_CUSTOM_MATCHING_MODE_EXISTS - “Non custom matching mode exists”
CTL_RESULT_ERROR_CUSTOM_MODE_INSUFFICIENT_MEMORY - “Custom mode insufficent memory”
ctlGetSetCombinedDisplay
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetCombinedDisplay(ctl_device_adapter_handle_t hDeviceAdapter, ctl_combined_display_args_t *pCombinedDisplayArgs)
Get/Set Combined Display.
To get or set combined display with given Child Targets on a Single GPU or across identical GPUs. Multi-GPU(MGPU) combined display is reserved i.e. it is not public and requires special application GUID. MGPU Combined Display will get activated or deactivated in next boot. MGPU scenario will internally link the associated adapters via Linked Display Adapter Call, with supplied hDeviceAdapter being the LDA Primary. If Genlock and enabled in Driver registry and supported by given Display Config, MGPU Combined Display will enable MGPU Genlock with supplied hDeviceAdapter being the Genlock Primary Adapter and the First Child Display being the Primary Display.
- Parameters:
hDeviceAdapter – [in][release] Handle to control device adapter
pCombinedDisplayArgs – [in,out] Setup and get combined display arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDeviceAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pCombinedDisplayArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
::CTL_RESULT_ERROR_FEATURE_NOT_SUPPORTED - “Combined Display feature is not supported in this platform”
CTL_RESULT_ERROR_ADAPTER_NOT_SUPPORTED_ON_LDA_SECONDARY - “Unsupported (secondary) adapter handle passed”
ctlGetSetDisplayGenlock
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetDisplayGenlock(ctl_device_adapter_handle_t *hDeviceAdapter, ctl_genlock_args_t *pGenlockArgs, uint32_t AdapterCount, ctl_device_adapter_handle_t *hFailureDeviceAdapter)
Get/Set Display Genlock.
To get or set Display Genlock.
- Parameters:
hDeviceAdapter – [in][release] Handle to control device adapter
pGenlockArgs – [in,out] Display Genlock operation and information
AdapterCount – [in] Number of device adapters
hFailureDeviceAdapter – [out] Handle to address the failure device adapter in an error case
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == hDeviceAdapter
nullptr == pGenlockArgs
nullptr == hFailureDeviceAdapter
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_INVALID_SIZE - “Invalid topology structure size”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
ctlGetVblankTimestamp
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetVblankTimestamp(ctl_display_output_handle_t hDisplayOutput, ctl_vblank_ts_args_t *pVblankTSArgs)
Get Vblank Timestamp.
To get a list of vblank timestamps in microseconds for each child target of a display.
- Parameters:
hDisplayOutput – [in] Handle to display output
pVblankTSArgs – [out] Get vblank timestamp arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pVblankTSArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INSUFFICIENT_PERMISSIONS - “Insufficient permissions”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
ctlLinkDisplayAdapters
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlLinkDisplayAdapters(ctl_device_adapter_handle_t hPrimaryAdapter, ctl_lda_args_t *pLdaArgs)
Link Display Adapters.
To Link Display Adapters.
- Parameters:
hPrimaryAdapter – [in][release] Handle to Primary adapter in LDA chain
pLdaArgs – [in] Link Display Adapters Arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hPrimaryAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pLdaArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
CTL_RESULT_ERROR_ADAPTER_ALREADY_LINKED - “Adapter is already linked”
ctlUnlinkDisplayAdapters
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlUnlinkDisplayAdapters(ctl_device_adapter_handle_t hPrimaryAdapter)
Unlink Display Adapters.
To Unlink Display Adapters
- Parameters:
hPrimaryAdapter – [in][release] Handle to Primary adapter in LDA chain
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hPrimaryAdapter
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
CTL_RESULT_ERROR_ADAPTER_NOT_SUPPORTED_ON_LDA_SECONDARY - “Unsupported (secondary) adapter handle passed”
ctlGetLinkedDisplayAdapters
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetLinkedDisplayAdapters(ctl_device_adapter_handle_t hPrimaryAdapter, ctl_lda_args_t *pLdaArgs)
Get Linked Display Adapters.
To return list of Linked Display Adapters.
- Parameters:
hPrimaryAdapter – [in][release] Handle to Primary adapter in LDA chain
pLdaArgs – [out] Link Display Adapters Arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hPrimaryAdapter
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pLdaArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
CTL_RESULT_ERROR_ADAPTER_NOT_SUPPORTED_ON_LDA_SECONDARY - “Unsupported (secondary) adapter handle passed”
ctlGetSetDynamicContrastEnhancement
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetDynamicContrastEnhancement(ctl_display_output_handle_t hDisplayOutput, ctl_dce_args_t *pDceArgs)
Get/Set Dynamic Contrast Enhancement.
To get the DCE feature status and, if feature is enabled, returns the current histogram, or to set the brightness at the phase-in speed
- Parameters:
hDisplayOutput – [in] Handle to display output
pDceArgs – [in,out] Dynamic Contrast Enhancement arguments
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pDceArgs
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
CTL_RESULT_ERROR_INVALID_NULL_HANDLE - “Invalid or Null handle passed”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid combination of parameters”
ctlGetSetWireFormat
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetWireFormat(ctl_display_output_handle_t hDisplayOutput, ctl_get_set_wire_format_config_t *pGetSetWireFormatSetting)
Get/Set Color Format and Color Depth.
Get and Set the Color Format and Color Depth of a target
- Parameters:
hDisplayOutput – [in][release] Handle to display output
pGetSetWireFormatSetting – [in][release] Get/Set Wire Format settings to be fetched/applied
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pGetSetWireFormatSetting
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid data passed as argument, WireFormat is not supported”
CTL_RESULT_ERROR_DISPLAY_NOT_ACTIVE - “Display not active”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
ctlGetSetDisplaySettings
-
CTL_APIEXPORT ctl_result_t CTL_APICALL ctlGetSetDisplaySettings(ctl_display_output_handle_t hDisplayOutput, ctl_display_settings_t *pDisplaySettings)
Get/Set Display settings.
To get/set end display settings like low latency, HDR10+ signaling etc. which are controlled via info-frames/secondary data packets
- Parameters:
hDisplayOutput – [in] Handle to display output
pDisplaySettings – [in,out] End display capabilities
- Returns:
CTL_RESULT_SUCCESS
CTL_RESULT_ERROR_UNINITIALIZED
CTL_RESULT_ERROR_DEVICE_LOST
CTL_RESULT_ERROR_INVALID_NULL_HANDLE
nullptr == hDisplayOutput
CTL_RESULT_ERROR_INVALID_NULL_POINTER
nullptr == pDisplaySettings
CTL_RESULT_ERROR_UNSUPPORTED_VERSION - “Unsupported version”
CTL_RESULT_ERROR_NULL_OS_DISPLAY_OUTPUT_HANDLE - “Null OS display output handle”
CTL_RESULT_ERROR_NULL_OS_INTERFACE - “Null OS interface”
CTL_RESULT_ERROR_NULL_OS_ADAPATER_HANDLE - “Null OS adapter handle”
CTL_RESULT_ERROR_KMD_CALL - “Kernel mode driver call failure”
CTL_RESULT_ERROR_INVALID_NULL_HANDLE - “Invalid or Null handle passed”
CTL_RESULT_ERROR_INVALID_NULL_POINTER - “Invalid null pointer”
CTL_RESULT_ERROR_INVALID_OPERATION_TYPE - “Invalid operation type”
CTL_RESULT_ERROR_INVALID_ARGUMENT - “Invalid combination of parameters”
Display Enums
ctl_display_output_types_t
-
enum ctl_display_output_types_t
Various display types.
Values:
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_INVALID
Invalid.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_DISPLAYPORT
DisplayPort.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_HDMI
HDMI.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_DVI
DVI.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_MIPI
MIPI.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_CRT
CRT.
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_MAX
-
enumerator CTL_DISPLAY_OUTPUT_TYPES_INVALID
ctl_output_bpc_flags_t
-
enum ctl_output_bpc_flag_t
Values:
-
enumerator CTL_OUTPUT_BPC_FLAG_6BPC
[out] Is 6bpc supported
-
enumerator CTL_OUTPUT_BPC_FLAG_8BPC
[out] Is 8bpc supported
-
enumerator CTL_OUTPUT_BPC_FLAG_10BPC
[out] Is 10bpc supported
-
enumerator CTL_OUTPUT_BPC_FLAG_12BPC
[out] Is 12bpc supported
-
enumerator CTL_OUTPUT_BPC_FLAG_MAX
-
enumerator CTL_OUTPUT_BPC_FLAG_6BPC
ctl_std_display_feature_flags_t
-
enum ctl_std_display_feature_flag_t
Values:
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HDCP
[out] Is HDCP supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HD_AUDIO
[out] Is HD Audio supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_PSR
[out] Is VESA PSR supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_ADAPTIVESYNC_VRR
[out] Is VESA Adaptive Sync or HDMI VRR supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_VESA_COMPRESSION
[out] Is display compression (VESA DSC) supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HDR
[out] Is HDR supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HDMI_QMS
[out] Is HDMI QMS supported
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HDR10_PLUS_CERTIFIED
[out] Is HDR10+ certified
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_VESA_HDR_CERTIFIED
[out] Is VESA HDR certified - for future use
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_MAX
-
enumerator CTL_STD_DISPLAY_FEATURE_FLAG_HDCP
ctl_intel_display_feature_flags_t
-
enum ctl_intel_display_feature_flag_t
Values:
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_DPST
[out] Is DPST supported
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_LACE
[out] Is LACE supported
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_DRRS
[out] Is DRRS supported
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_ARC_ADAPTIVE_SYNC_CERTIFIED
[out] Is Intel Arc certified adaptive sync display
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_MAX
-
enumerator CTL_INTEL_DISPLAY_FEATURE_FLAG_DPST
ctl_attached_display_mux_type_t
-
enum ctl_attached_display_mux_type_t
Attached Display Mux Type.
Values:
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_NATIVE
[out] Native DP / HDMI
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_THUNDERBOLT
[out] Thunderbolt
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_TYPE_C
[out] USB Type C
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_USB4
[out] USB4
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_MAX
-
enumerator CTL_ATTACHED_DISPLAY_MUX_TYPE_NATIVE
ctl_signal_standard_type_t
-
enum ctl_signal_standard_type_t
Signal Standard.
Values:
-
enumerator CTL_SIGNAL_STANDARD_TYPE_UNKNOWN
[out] Unknown Signal Standard
-
enumerator CTL_SIGNAL_STANDARD_TYPE_CUSTOM
[out] Custom added timing
-
enumerator CTL_SIGNAL_STANDARD_TYPE_DMT
[out] DMT timing
-
enumerator CTL_SIGNAL_STANDARD_TYPE_GTF
[out] GTF Timing
-
enumerator CTL_SIGNAL_STANDARD_TYPE_CVT
[out] CVT Timing
-
enumerator CTL_SIGNAL_STANDARD_TYPE_CTA
[out] CTA Timing
-
enumerator CTL_SIGNAL_STANDARD_TYPE_MAX
-
enumerator CTL_SIGNAL_STANDARD_TYPE_UNKNOWN
ctl_protocol_converter_location_flags_t
ctl_display_config_flags_t
-
enum ctl_display_config_flag_t
Values:
-
enumerator CTL_DISPLAY_CONFIG_FLAG_DISPLAY_ACTIVE
[out] DisplayActive 0: InActive 1: Active
-
enumerator CTL_DISPLAY_CONFIG_FLAG_DISPLAY_ATTACHED
[out] DisplayAttached.This Bit indicates if any dongle/display/hub is attached to the encoder. 0: Not Attached 1: Attached
-
enumerator CTL_DISPLAY_CONFIG_FLAG_IS_DONGLE_CONNECTED_TO_ENCODER
[out] This BIT will be set if a dongle/hub/onboard protocol converter , is attached to the encoder
-
enumerator CTL_DISPLAY_CONFIG_FLAG_DITHERING_ENABLED
[out] This BIT will be set if dithering is enabled on the encoder
-
enumerator CTL_DISPLAY_CONFIG_FLAG_MAX
-
enumerator CTL_DISPLAY_CONFIG_FLAG_DISPLAY_ACTIVE
ctl_encoder_config_flags_t
-
enum ctl_encoder_config_flag_t
Values:
-
enumerator CTL_ENCODER_CONFIG_FLAG_INTERNAL_DISPLAY
[out] Internal connection or not
-
enumerator CTL_ENCODER_CONFIG_FLAG_VESA_TILED_DISPLAY
[out] VESA DisplayID based tiled display which is driven by either multiple physical connections (DisplayPort SST) or virtual streams (DisplayPort MST)
-
enumerator CTL_ENCODER_CONFIG_FLAG_TYPEC_CAPABLE
[out] This is set if encoder supports type c display
-
enumerator CTL_ENCODER_CONFIG_FLAG_TBT_CAPABLE
[out] This is set if encoder supports Thunderbolt display
-
enumerator CTL_ENCODER_CONFIG_FLAG_DITHERING_SUPPORTED
[out] This BIT will be set if encoder supports dithering
-
enumerator CTL_ENCODER_CONFIG_FLAG_VIRTUAL_DISPLAY
[out] This BIT will be set if this is a virtual display.Hardware based features will not be applicable to this display.For collage display this will be set for the virtual output created by driver. For split display this will be set for the virtual split displays created out of one single physical display
-
enumerator CTL_ENCODER_CONFIG_FLAG_HIDDEN_DISPLAY
[out] This BIT will be set if display is hidden from OS
-
enumerator CTL_ENCODER_CONFIG_FLAG_COLLAGE_DISPLAY
[out] This BIT will be set if this is a collage display
-
enumerator CTL_ENCODER_CONFIG_FLAG_SPLIT_DISPLAY
[out] This BIT will be set if this is a split display
-
enumerator CTL_ENCODER_CONFIG_FLAG_COMPANION_DISPLAY
[out] This BIT will be set if this is a companion display
-
enumerator CTL_ENCODER_CONFIG_FLAG_MGPU_COLLAGE_DISPLAY
[out] This BIT will be set if this is a Multi GPU collage display
-
enumerator CTL_ENCODER_CONFIG_FLAG_MAX
-
enumerator CTL_ENCODER_CONFIG_FLAG_INTERNAL_DISPLAY
ctl_sharpness_filter_type_flags_t
ctl_i2c_flags_t
-
enum ctl_i2c_flag_t
Values:
-
enumerator CTL_I2C_FLAG_ATOMICI2C
Force Atomic I2C.
-
enumerator CTL_I2C_FLAG_1BYTE_INDEX
1-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_FLAG_2BYTE_INDEX
2-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_FLAG_4BYTE_INDEX
4-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_FLAG_SPEED_SLOW
If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_FLAG_SPEED_FAST
If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_FLAG_SPEED_BIT_BASH
Uses Slower access using SW bit bashing method. If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_FLAG_MAX
-
enumerator CTL_I2C_FLAG_ATOMICI2C
ctl_i2c_pinpair_flags_t
-
enum ctl_i2c_pinpair_flag_t
Values:
-
enumerator CTL_I2C_PINPAIR_FLAG_ATOMICI2C
Force Atomic I2C.
-
enumerator CTL_I2C_PINPAIR_FLAG_1BYTE_INDEX
1-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_PINPAIR_FLAG_2BYTE_INDEX
2-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_PINPAIR_FLAG_4BYTE_INDEX
4-byte Indexed operation. If no Index Size flag set, decided based on Offset Value.
-
enumerator CTL_I2C_PINPAIR_FLAG_SPEED_SLOW
If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_PINPAIR_FLAG_SPEED_FAST
If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_PINPAIR_FLAG_SPEED_BIT_BASH
Uses Slower access using SW bit bashing method. If no Speed Flag is set, defaults to Best Option possible.
-
enumerator CTL_I2C_PINPAIR_FLAG_MAX
-
enumerator CTL_I2C_PINPAIR_FLAG_ATOMICI2C
ctl_aux_flags_t
ctl_power_optimization_flags_t
-
enum ctl_power_optimization_flag_t
Values:
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_FBC
Frame buffer compression.
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_PSR
Panel self refresh.
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_DPST
Display power saving technology (Panel technology dependent)
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_LRR
Low refresh rate (LRR/ALRR/UBRR), UBRR is supported only for IGCC and NDA clients. UBZRR and UBLRR both can not be enabled at the same time, only one can be enabled at a given time.
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_LACE
Lighting Aware Contrast Enhancement.
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_MAX
-
enumerator CTL_POWER_OPTIMIZATION_FLAG_FBC
ctl_power_optimization_dpst_flags_t
-
enum ctl_power_optimization_dpst_flag_t
Values:
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_BKLT
Intel DPST with Backlight control.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_PANEL_CABC
Panel TCON specific Content Adaptive Control mechanism.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_OPST
Intel OLED Power Saving Technology.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_ELP
TCON based Edge Luminance Profile.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_EPSM
Extra power saving mode.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_APD
Adaptive Pixel Dimming.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_PIXOPTIX
TCON+ based DPST like solution.
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_MAX
-
enumerator CTL_POWER_OPTIMIZATION_DPST_FLAG_BKLT
ctl_power_source_t
ctl_power_optimization_plan_t
-
enum ctl_power_optimization_plan_t
Power Optimization Plan.
Values:
-
enumerator CTL_POWER_OPTIMIZATION_PLAN_BALANCED
Balanced mode.
-
enumerator CTL_POWER_OPTIMIZATION_PLAN_HIGH_PERFORMANCE
High Performance Mode.
-
enumerator CTL_POWER_OPTIMIZATION_PLAN_POWER_SAVER
Power Saver Mode.
-
enumerator CTL_POWER_OPTIMIZATION_PLAN_MAX
-
enumerator CTL_POWER_OPTIMIZATION_PLAN_BALANCED
ctl_power_optimization_lrr_flags_t
-
enum ctl_power_optimization_lrr_flag_t
Values:
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_LRR10
LRR 1.0.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_LRR20
LRR 2.0.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_LRR25
LRR 2.5.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_ALRR
Autonomous LRR.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_UBLRR
User based low refresh rate.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_UBZRR
User based zero refresh rate.
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_MAX
-
enumerator CTL_POWER_OPTIMIZATION_LRR_FLAG_LRR10
ctl_pixtx_pipe_set_config_flags_t
ctl_pixtx_block_type_t
-
enum ctl_pixtx_block_type_t
Pixel transformation block types.
Values:
-
enumerator CTL_PIXTX_BLOCK_TYPE_1D_LUT
Block type 1D LUT.
-
enumerator CTL_PIXTX_BLOCK_TYPE_3D_LUT
Block type 3D LUT.
-
enumerator CTL_PIXTX_BLOCK_TYPE_3X3_MATRIX
Block type 3x3 matrix.
-
enumerator CTL_PIXTX_BLOCK_TYPE_3X3_MATRIX_AND_OFFSETS
Block type 3x3 matrix and offsets.
-
enumerator CTL_PIXTX_BLOCK_TYPE_MAX
-
enumerator CTL_PIXTX_BLOCK_TYPE_1D_LUT
ctl_pixtx_lut_sampling_type_t
-
enum ctl_pixtx_lut_sampling_type_t
Pixel transformation LUT sampling types.
Values:
-
enumerator CTL_PIXTX_LUT_SAMPLING_TYPE_UNIFORM
Uniform LUT sampling.
-
enumerator CTL_PIXTX_LUT_SAMPLING_TYPE_NONUNIFORM
Non uniform LUT sampling, Required mainly in HDR mode.
-
enumerator CTL_PIXTX_LUT_SAMPLING_TYPE_MAX
-
enumerator CTL_PIXTX_LUT_SAMPLING_TYPE_UNIFORM
ctl_pixtx_config_query_type_t
-
enum ctl_pixtx_config_query_type_t
Configuration query types.
Values:
-
enumerator CTL_PIXTX_CONFIG_QUERY_TYPE_CAPABILITY
Get complete pixel processing pipeline capability.
-
enumerator CTL_PIXTX_CONFIG_QUERY_TYPE_CURRENT
Get the configuration set through last set call.
-
enumerator CTL_PIXTX_CONFIG_QUERY_TYPE_MAX
-
enumerator CTL_PIXTX_CONFIG_QUERY_TYPE_CAPABILITY
ctl_pixtx_config_opertaion_type_t
-
enum ctl_pixtx_config_opertaion_type_t
Configuration operation types.
Values:
-
enumerator CTL_PIXTX_CONFIG_OPERTAION_TYPE_RESTORE_DEFAULT
Restore block by block or entire pipe line. Use NumBlocks = 0 to restore all.
-
enumerator CTL_PIXTX_CONFIG_OPERTAION_TYPE_SET_CUSTOM
Custom LUT or matrix can be set thorugh this option.
-
enumerator CTL_PIXTX_CONFIG_OPERTAION_TYPE_MAX
-
enumerator CTL_PIXTX_CONFIG_OPERTAION_TYPE_RESTORE_DEFAULT
ctl_pixtx_gamma_encoding_type_t
-
enum ctl_pixtx_gamma_encoding_type_t
Pixel transformation gamma encoding types.
Values:
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_SRGB
Gamma encoding SRGB.
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_REC709
Gamma encoding REC709, Applicable for REC2020 as well.
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_ST2084
Gamma encoding ST2084.
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_HLG
Gamma encoding HLG.
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_LINEAR
Gamma encoding linear.
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_MAX
-
enumerator CTL_PIXTX_GAMMA_ENCODING_TYPE_SRGB
ctl_pixtx_color_space_t
-
enum ctl_pixtx_color_space_t
Pixel transformation color space types.
Values:
-
enumerator CTL_PIXTX_COLOR_SPACE_REC709
Color space REC709.
-
enumerator CTL_PIXTX_COLOR_SPACE_REC2020
Color space REC2020.
-
enumerator CTL_PIXTX_COLOR_SPACE_ADOBE_RGB
Color space AdobeRGB.
-
enumerator CTL_PIXTX_COLOR_SPACE_P3_D65
Color space P3_D65.
-
enumerator CTL_PIXTX_COLOR_SPACE_P3_DCI
Color space P3_DCI.
-
enumerator CTL_PIXTX_COLOR_SPACE_P3_D60
Color space P3_D60.
-
enumerator CTL_PIXTX_COLOR_SPACE_CUSTOM
Color space custom, Refer ctl_pixtx_color_primaries_t for color primary details.
-
enumerator CTL_PIXTX_COLOR_SPACE_MAX
-
enumerator CTL_PIXTX_COLOR_SPACE_REC709
ctl_pixtx_color_model_t
-
enum ctl_pixtx_color_model_t
Pixel transformation color model types.
Values:
-
enumerator CTL_PIXTX_COLOR_MODEL_RGB_FR
Color model RGB full range.
-
enumerator CTL_PIXTX_COLOR_MODEL_RGB_LR
Color model RGB limited range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_422_FR
Color model YCBCR 422 full range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_422_LR
Color model YCBCR 422 limited range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_420_FR
Color model YCBCR 420 full range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_420_LR
Color model YCBCR 420 limited range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_444_FR
Color model YCBCR 444 full range.
-
enumerator CTL_PIXTX_COLOR_MODEL_YCBCR_444_LR
Color model YCBCR 444 limited range.
-
enumerator CTL_PIXTX_COLOR_MODEL_MAX
-
enumerator CTL_PIXTX_COLOR_MODEL_RGB_FR
ctl_retro_scaling_type_flags_t
ctl_scaling_type_flags_t
-
enum ctl_scaling_type_flag_t
Values:
-
enumerator CTL_SCALING_TYPE_FLAG_IDENTITY
No scaling is applied and display manages scaling itself when possible.
-
enumerator CTL_SCALING_TYPE_FLAG_CENTERED
Source is not scaled but place in the center of the target display.
-
enumerator CTL_SCALING_TYPE_FLAG_STRETCHED
Source is stretched to fit the target size.
-
enumerator CTL_SCALING_TYPE_FLAG_ASPECT_RATIO_CENTERED_MAX
The aspect ratio is maintained with the source centered.
-
enumerator CTL_SCALING_TYPE_FLAG_CUSTOM
None of the standard types match this .Additional parameters are required which should be set via a private driver interface.
-
enumerator CTL_SCALING_TYPE_FLAG_MAX
-
enumerator CTL_SCALING_TYPE_FLAG_IDENTITY
ctl_get_operation_flags_t
ctl_set_operation_t
ctl_lace_trigger_flags_t
ctl_intel_arc_sync_profile_t
-
enum ctl_intel_arc_sync_profile_t
Intel Arc Sync profile.
Values:
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_INVALID
Invalid profile.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_RECOMMENDED
Default. Selects appropriate profile based on the monitor. COMPATIBLE profile is applied if profile is not available for the monitor.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_EXCELLENT
Unconstrained. Full VRR range of the monitor can be used.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_GOOD
Some minor range constraints, unlikely to effect user experience but can reduce flicker on some monitors.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_COMPATIBLE
Significant constraints that will reduce flicker considerably but are likely to cause some level of judder onscreen especially when refresh rates are changing rapidly.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_OFF
Disable Intel Arc Sync on this monitor. This disables variable rate flips on this monitor. All sync flips will occur at the OS requested refresh rate.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_VESA
Applies vesa specified constraints if the monitor has provided them, COMPATIBLE profile if not.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_CUSTOM
Unlocks controls to set a custom Intel Arc Sync profile.
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_MAX
-
enumerator CTL_INTEL_ARC_SYNC_PROFILE_INVALID
ctl_edid_management_optype_t
-
enum ctl_edid_management_optype_t
EDID Management operation type.
Values:
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_READ_EDID
This operation type is to read an output’s EDID. Set edid_type input arg to read MONITOR EDID or previously OVERRIDDEN EDID or CURRENT active EDID. Read EDID is a 2 pass call. First call with size = 0, pEdidBuf = nullptr to get the size, then call with allocated buffer to get the EDID data. READ operation is applicable for any normal, edid locked or edid overridden display output device.
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_LOCK_EDID
To make an output always connected with OVERRIDE or MONITOR EDID across reboots. When output isn’t connected call with OVERRIDE EDID; when connected, either set OVERRIDE and provide pEdidBuf or set MONITOR and driver will use monitor’s EDID. There is no change to EDID stored in Monitor. Cannot be called when override is active. Any OS EDID override will take precedence over IGCL override.
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_UNLOCK_EDID
To undo lock EDID operation, i.e. it makes output as detached in response to unplug. This operation removes past supplied EDID; output status is reported to OS as it is; output restores back to monitor’s EDID when it is connected.
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_OVERRIDE_EDID
To replace an output’s EDID with supplied one (pEdidBuf) only when physical display is connected. There is no change to EDID stored in Monitor. Cannot apply this operation on locked output. When no output device attached, the supplied EDID will be persisted in driver for future use. Any OS EDID override will take precedence over IGCL override.
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_UNDO_OVERRIDE_EDID
To undo override EDID operation, that is remove previously overridden EDID on an output. Output restores back to monitor’s EDID when it is connected.
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_MAX
-
enumerator CTL_EDID_MANAGEMENT_OPTYPE_READ_EDID
ctl_edid_type_t
-
enum ctl_edid_type_t
EDID type. Used in LOCK_EDID and READ_EDID calls.
Values:
-
enumerator CTL_EDID_TYPE_CURRENT
[in] Used to return currently active EDID in READ_EDID call.
-
enumerator CTL_EDID_TYPE_OVERRIDE
[in] Is it user supplied EDID. Used in LOCK_EDID call with Supplied EDID or in READ_EDID to get Supplied EDID.
-
enumerator CTL_EDID_TYPE_MONITOR
[in] Is it Monitor’s EDID. Used in LOCK_EDID and READ_EDID calls.
-
enumerator CTL_EDID_TYPE_MAX
-
enumerator CTL_EDID_TYPE_CURRENT
ctl_edid_management_out_flags_t
-
enum ctl_edid_management_out_flag_t
Values:
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_OS_CONN_NOTIFICATION
[out] If OS was notified about a connection change. App will need to wait for the OS action to complete.
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_SUPPLIED_EDID
[out] Is it previously supplied EDID, set for READ_EDID(CURRENT).
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_MONITOR_EDID
[out] Is it Monitor’s EDID, set for READ_EDID(CURRENT).
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_DISPLAY_CONNECTED
[out] Is Monitor physically connected
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_MAX
-
enumerator CTL_EDID_MANAGEMENT_OUT_FLAG_OS_CONN_NOTIFICATION
ctl_custom_mode_operation_types_t
-
enum ctl_custom_mode_operation_types_t
Custom mode operation types.
Values:
-
enumerator CTL_CUSTOM_MODE_OPERATION_TYPES_GET_CUSTOM_SOURCE_MODES
Get details of all previous applied custom modes if any.
-
enumerator CTL_CUSTOM_MODE_OPERATION_TYPES_ADD_CUSTOM_SOURCE_MODE
Add a new mode. Allows only single mode adition at a time.
-
enumerator CTL_CUSTOM_MODE_OPERATION_TYPES_REMOVE_CUSTOM_SOURCE_MODES
Remove previously added custom mode. Allows single or multiple mode removal at a time.
-
enumerator CTL_CUSTOM_MODE_OPERATION_TYPES_MAX
-
enumerator CTL_CUSTOM_MODE_OPERATION_TYPES_GET_CUSTOM_SOURCE_MODES
ctl_combined_display_optype_t
-
enum ctl_combined_display_optype_t
Combined Display operation type.
Values:
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_IS_SUPPORTED_CONFIG
To check whether given outputs can form a combined display, no changes are applied.
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_ENABLE
To setup and enable a combined display.
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_DISABLE
To disable combined display.
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_QUERY_CONFIG
To query combined display configuration.
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_MAX
-
enumerator CTL_COMBINED_DISPLAY_OPTYPE_IS_SUPPORTED_CONFIG
ctl_genlock_operation_t
-
enum ctl_genlock_operation_t
Display Genlock Operations.
Values:
-
enumerator CTL_GENLOCK_OPERATION_GET_TIMING_DETAILS
Get details of GENLOCK support and timing information.
-
enumerator CTL_GENLOCK_OPERATION_VALIDATE
Driver to verify that the topology is Genlock capable.
-
enumerator CTL_GENLOCK_OPERATION_ENABLE
Enable GENLOCK.
-
enumerator CTL_GENLOCK_OPERATION_DISABLE
Disable GENLOCK.
-
enumerator CTL_GENLOCK_OPERATION_GET_TOPOLOGY
Get details of the current Genlock topology that is applied.
-
enumerator CTL_GENLOCK_OPERATION_MAX
-
enumerator CTL_GENLOCK_OPERATION_GET_TIMING_DETAILS
ctl_wire_format_color_model_t
-
enum ctl_wire_format_color_model_t
Color model.
Values:
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_RGB
Color model RGB.
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_YCBCR_420
Color model YCBCR 420.
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_YCBCR_422
Color model YCBCR 422.
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_YCBCR_444
Color model YCBCR 444.
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_MAX
-
enumerator CTL_WIRE_FORMAT_COLOR_MODEL_RGB
ctl_wire_format_operation_type_t
-
enum ctl_wire_format_operation_type_t
Operation type.
Values:
-
enumerator CTL_WIRE_FORMAT_OPERATION_TYPE_GET
Get request.
-
enumerator CTL_WIRE_FORMAT_OPERATION_TYPE_SET
Set request.
-
enumerator CTL_WIRE_FORMAT_OPERATION_TYPE_RESTORE_DEFAULT
Restore to default values.
-
enumerator CTL_WIRE_FORMAT_OPERATION_TYPE_MAX
-
enumerator CTL_WIRE_FORMAT_OPERATION_TYPE_GET
ctl_display_setting_flags_t
-
enum ctl_display_setting_flag_t
Values:
-
enumerator CTL_DISPLAY_SETTING_FLAG_LOW_LATENCY
Low latency.
-
enumerator CTL_DISPLAY_SETTING_FLAG_SOURCE_TM
Source tone mapping.
-
enumerator CTL_DISPLAY_SETTING_FLAG_CONTENT_TYPE
Content type.
-
enumerator CTL_DISPLAY_SETTING_FLAG_QUANTIZATION_RANGE
Quantization range, full range or limited range.
-
enumerator CTL_DISPLAY_SETTING_FLAG_PICTURE_AR
Picture aspect ratio.
-
enumerator CTL_DISPLAY_SETTING_FLAG_AUDIO
Audio settings.
-
enumerator CTL_DISPLAY_SETTING_FLAG_MAX
-
enumerator CTL_DISPLAY_SETTING_FLAG_LOW_LATENCY
ctl_display_setting_low_latency_t
-
enum ctl_display_setting_low_latency_t
Low latency setting.
Values:
-
enumerator CTL_DISPLAY_SETTING_LOW_LATENCY_DEFAULT
Default.
-
enumerator CTL_DISPLAY_SETTING_LOW_LATENCY_DISABLED
Disabled.
-
enumerator CTL_DISPLAY_SETTING_LOW_LATENCY_ENABLED
Enabled.
-
enumerator CTL_DISPLAY_SETTING_LOW_LATENCY_MAX
-
enumerator CTL_DISPLAY_SETTING_LOW_LATENCY_DEFAULT
ctl_display_setting_sourcetm_t
ctl_display_setting_content_type_t
-
enum ctl_display_setting_content_type_t
Content type settings.
Values:
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_DEFAULT
Default content type used by driver. Driver will use internal techniques to determine content type and indicate to panel.
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_DISABLED
Content type indication is disabled.
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_DESKTOP
Typical desktop with a mix of text and graphics.
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_MEDIA
Video or media content.
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_GAMING
Gaming content.
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_MAX
-
enumerator CTL_DISPLAY_SETTING_CONTENT_TYPE_DEFAULT
ctl_display_setting_quantization_range_t
-
enum ctl_display_setting_quantization_range_t
Quantization range.
Values:
-
enumerator CTL_DISPLAY_SETTING_QUANTIZATION_RANGE_DEFAULT
Default based on video format.
-
enumerator CTL_DISPLAY_SETTING_QUANTIZATION_RANGE_LIMITED_RANGE
Limited range.
-
enumerator CTL_DISPLAY_SETTING_QUANTIZATION_RANGE_FULL_RANGE
Full range.
-
enumerator CTL_DISPLAY_SETTING_QUANTIZATION_RANGE_MAX
-
enumerator CTL_DISPLAY_SETTING_QUANTIZATION_RANGE_DEFAULT
ctl_display_setting_picture_ar_flags_t
-
enum ctl_display_setting_picture_ar_flag_t
Values:
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_DEFAULT
Default picture aspect ratio.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_DISABLED
Picture aspect ratio indication is explicitly disabled.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_AR_4_3
Aspect ratio of 4:3.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_AR_16_9
Aspect ratio of 16:9.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_AR_64_27
Aspect ratio of 64:27 or 21:9 anamorphic.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_AR_256_135
Aspect ratio of 256:135.
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_MAX
-
enumerator CTL_DISPLAY_SETTING_PICTURE_AR_FLAG_DEFAULT
ctl_display_setting_audio_t
-
enum ctl_display_setting_audio_t
Audio settings.
Values:
-
enumerator CTL_DISPLAY_SETTING_AUDIO_DEFAULT
Default audio settings, always enumerated and enabled if display supports it.
-
enumerator CTL_DISPLAY_SETTING_AUDIO_DISABLED
Forcefully disable display audio end point enumeration to OS.
-
enumerator CTL_DISPLAY_SETTING_AUDIO_MAX
-
enumerator CTL_DISPLAY_SETTING_AUDIO_DEFAULT
Display Structures
ctl_os_display_encoder_identifier_t
-
union ctl_os_display_encoder_identifier_t
- #include <igcl_api.h>
OS specific Display identifiers.
Public Members
-
uint32_t WindowsDisplayEncoderID
[out] Windows OS Display encoder ID
-
ctl_generic_void_datatype_t DisplayEncoderID
[out] Display encoder ID for non-windows OS
-
uint32_t WindowsDisplayEncoderID
ctl_display_timing_t
-
struct ctl_display_timing_t
Display Timing.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
uint64_t PixelClock
[out] Pixel Clock in Hz
-
uint32_t HActive
[out] Horizontal Active
-
uint32_t VActive
[out] Vertical Active
-
uint32_t HTotal
[out] Horizontal Total
-
uint32_t VTotal
[out] Vertical Total
-
uint32_t HBlank
[out] Horizontal Blank
-
uint32_t VBlank
[out] Vertical Blank
-
uint32_t HSync
[out] Horizontal Blank
-
uint32_t VSync
[out] Vertical Blank
-
float RefreshRate
[out] Refresh Rate
-
ctl_signal_standard_type_t SignalStandard
[out] Signal Standard
-
uint8_t VicId
[out] VIC ID for CTA timings
-
uint32_t Size
ctl_display_properties_t
-
struct ctl_display_properties_t
This structure will contain the properties of the display currently attached to the encoder.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_os_display_encoder_identifier_t Os_display_encoder_handle
[out] OS specific Display ID
-
ctl_display_output_types_t Type
[out] Device Type from display HW stand point. If a DisplayPort protocol converter is involved, this will indicate it’s DisplayPort. The protocol converter’s output will be available from ProtocolConverterOutput field
-
ctl_attached_display_mux_type_t AttachedDisplayMuxType
[out] Attached Display Mux Type
-
ctl_display_output_types_t ProtocolConverterOutput
[out] Protocol output type which can be used if config flags indicate it’s a protocol converter. If it’s not a protocol converter this will be set to CTL_DISPLAY_OUTPUT_TYPES_INVALID
-
ctl_revision_datatype_t SupportedSpec
[out] Supported industry spec version.
-
ctl_output_bpc_flags_t SupportedOutputBPCFlags
[out] Supported output bits per color. Refer ctl_output_bpc_flag_t. This is independent of RGB or YCbCr output.This is the max BPC supported.BPC will vary per mode based on restrictions like bandwidth and monitor support
-
ctl_protocol_converter_location_flags_t ProtocolConverterType
[out] Currently Active Protocol Converter. Refer ctl_protocol_converter_location_flag_t
-
ctl_display_config_flags_t DisplayConfigFlags
[out] Output configuration related flags which indicate how the output pixel stream drive the panel. Refer ctl_display_config_flag_t
-
ctl_std_display_feature_flags_t FeatureEnabledFlags
[out] Enabled Display features.Refer ctl_std_display_feature_flag_t.
-
ctl_std_display_feature_flags_t FeatureSupportedFlags
[out] Display Supported feature.Refer ctl_std_display_feature_flag_t
-
ctl_intel_display_feature_flags_t AdvancedFeatureEnabledFlags
[out] Enabled advanced feature.Refer ctl_intel_display_feature_flag_t.
-
ctl_intel_display_feature_flags_t AdvancedFeatureSupportedFlags
[out] Supported advanced feature.Refer ctl_intel_display_feature_flag_t.
-
ctl_display_timing_t Display_Timing_Info
[out] Applied Timing on the Display
-
uint32_t ReservedFields[16]
[out] Reserved field of 64 bytes
-
uint32_t Size
ctl_adapter_display_encoder_properties_t
-
struct ctl_adapter_display_encoder_properties_t
Adapter’s display encoder properties.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_os_display_encoder_identifier_t Os_display_encoder_handle
[out] OS specific Display ID
-
ctl_display_output_types_t Type
[out] Device Type from display HW stand point. If a DisplayPort protocol converter is involved, this will indicate it’s DisplayPort. The protocol converter’s output will be available from ProtocolConverterOutput field
-
bool IsOnBoardProtocolConverterOutputPresent
[out] Protocol output type which can be used if it’s a protocol converter. If it’s not a protocol converter this will be set to CTL_DISPLAY_OUTPUT_TYPES_INVALID
-
ctl_revision_datatype_t SupportedSpec
[out] Supported industry spec version
-
ctl_output_bpc_flags_t SupportedOutputBPCFlags
[out] Supported output bits per color. Refer ctl_output_bpc_flag_t. This is independent of RGB or YCbCr output.This is the max BPC supported.BPC will vary per mode based on restrictions like bandwidth and monitor support
-
ctl_encoder_config_flags_t EncoderConfigFlags
[out] Output configuration related flags which indicate how the output pixel stream drive the panel. Refer ctl_encoder_config_flag_t
Note:
Virtual = 1: This indicates that its a software display. Hardware based features will not be applicable to this display. Collage=1,Virtual=1: Indicates the fake display output created by driver which has the combined resolution of multiple physical displays involved in collage configuration
Collage=1,Virtual=0: Indicates the child physical displays involved in a collage configuration. These are real physical outputs
Split=1,Virtual=1 : Indicates the fake display output created by driver which occupies a portion of a real physical display
Split=1,Virtual=0 : Indicates the physical display which got split to form multiple split displays
Split=1,Collage=1 : Invalid combination
MgpuCollage=1,Collage=1,Virtual=1: Indicates the fake display output created by driver which has the combined resolution of multiple physical displays spread across multiple GPUs involved in Multi-GPU collage configuration MgpuCollage=1,Collage=1,Virtual=0: Indicates the child physical displays involved in a Multi-GPU collage configuration. These are real physical outputs
-
ctl_std_display_feature_flags_t FeatureSupportedFlags
[out] Adapter Supported feature flags. Refer ctl_std_display_feature_flag_t
-
ctl_intel_display_feature_flags_t AdvancedFeatureSupportedFlags
[out] Advanced Features Supported by the Adapter. Refer ctl_intel_display_feature_flag_t
-
uint32_t ReservedFields[16]
[out] Reserved field of 60 bytes
-
uint32_t Size
ctl_sharpness_filter_properties_t
-
struct ctl_sharpness_filter_properties_t
Sharpness filter properties.
Public Members
-
ctl_sharpness_filter_type_flags_t FilterType
[out] Filter type. Refer ctl_sharpness_filter_type_flag_t
-
ctl_property_range_info_t FilterDetails
[out] Min, max & step size information
-
ctl_sharpness_filter_type_flags_t FilterType
ctl_sharpness_caps_t
-
struct ctl_sharpness_caps_t
Various sharpness filter types.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_sharpness_filter_type_flags_t SupportedFilterFlags
[out] Supported sharpness filters for a given display output. Refer ctl_sharpness_filter_type_flag_t
-
uint8_t NumFilterTypes
[out] Number of elements in filter properties array
-
ctl_sharpness_filter_properties_t *pFilterProperty
[in,out] Array of filter properties structure describing supported filter capabilities. Caller should provide a pre-allocated memory for this.
-
uint32_t Size
ctl_sharpness_settings_t
-
struct ctl_sharpness_settings_t
Current sharpness setting.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
bool Enable
[in,out] Current or new state of sharpness setting
-
ctl_sharpness_filter_type_flags_t FilterType
[in,out] Current or new filter to be set. Refer ctl_sharpness_filter_type_flag_t
-
float Intensity
[in,out] Setting intensity to be applied
-
uint32_t Size
ctl_i2c_access_args_t
-
struct ctl_i2c_access_args_t
I2C access arguments.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
uint32_t DataSize
[in,out] Valid data size
-
uint32_t Address
[in] Address to read or write
-
ctl_operation_type_t OpType
[in] Operation type, 1 for Read, 2 for Write, for Write operation, App needs to run with admin privileges
-
uint32_t Offset
[in] Offset
-
ctl_i2c_flags_t Flags
[in] I2C Flags. Refer ctl_i2c_flag_t
-
uint64_t RAD
[in] RAD, For Future use, to be used for branch devices, Interface will be provided to get RAD
-
uint8_t Data[CTL_I2C_MAX_DATA_SIZE]
[in,out] Data array
-
uint32_t Size
ctl_i2c_access_pinpair_args_t
-
struct ctl_i2c_access_pinpair_args_t
I2C access on Pin Pair arguments.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
uint32_t DataSize
[in,out] Valid data size
-
uint32_t Address
[in] Address to read or write
-
ctl_operation_type_t OpType
[in] Operation type, 1 for Read, 2 for Write, for Write operation, App needs to run with admin privileges
-
uint32_t Offset
[in] Offset
-
ctl_i2c_pinpair_flags_t Flags
[in] I2C Flags. Refer ctl_i2c_pinpair_flag_t
-
uint8_t Data[CTL_I2C_MAX_DATA_SIZE]
[in,out] Data array
-
uint32_t ReservedFields[4]
[in] Reserved for future use, must be set to Zero.
-
uint32_t Size
ctl_aux_access_args_t
-
struct ctl_aux_access_args_t
AUX access arguments.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_operation_type_t OpType
[in] Operation type, 1 for Read, 2 for Write, for Write operation, App needs to run with admin privileges
-
ctl_aux_flags_t Flags
[in] Aux Flags. Refer ctl_aux_flag_t
-
uint32_t Address
[in] Address to read or write
-
uint64_t RAD
[in] RAD, For Future use, to be used for branch devices, Interface will be provided to get RAD
-
uint32_t PortID
[in] Port ID, For Future use, to be used for SST tiled devices
-
uint32_t DataSize
[in,out] Valid data size
-
uint8_t Data[CTL_AUX_MAX_DATA_SIZE]
[in,out] Data array
-
uint32_t Size
ctl_power_optimization_caps_t
-
struct ctl_power_optimization_caps_t
Power optimization caps.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_power_optimization_flags_t SupportedFeatures
[out] Supported power optimization features. Refer ctl_power_optimization_flag_t
-
uint32_t Size
ctl_power_optimization_lrr_t
-
struct ctl_power_optimization_lrr_t
LRR detailed settings.
Public Members
-
uint32_t Size
[in] size of this structure
-
uint8_t Version
[in] version of this structure
-
ctl_power_optimization_lrr_flags_t SupportedLRRTypes
[out] LRR type(s). Refer ctl_power_optimization_lrr_flag_t
-
ctl_power_optimization_lrr_flags_t CurrentLRRTypes
[in,out] Current enabled LRR type(s) or the LRR type(s) to set to. Refer ctl_power_optimization_lrr_flag_t
-
bool bRequirePSRDisable
[out] Require PSR disable for any change in the selected LRR feature. Caller can re-enable PSR once the respective LRR feature is enable/disabled. E.g. for UBRR based on platform this flag may not be set in which case caller doesn’t need to do an explicit PSR disable
-
uint16_t LowRR
[out] Lowest RR used for LRR functionality if known to source
-
uint32_t Size
ctl_power_optimization_psr_t
-
struct ctl_power_optimization_psr_t
PSR detailed settings.
ctl_power_optimization_dpst_t
-
struct ctl_power_optimization_dpst_t
DPST detailed settings.