mirror of https://github.com/GOSTSec/sgminer
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2769 lines
107 KiB
2769 lines
107 KiB
/// |
|
/// Copyright (c) 2008 - 2013 Advanced Micro Devices, Inc. |
|
|
|
/// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, |
|
/// EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED |
|
/// WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE. |
|
|
|
/// \file adl_structures.h |
|
///\brief This file contains the structure declarations that are used by the public ADL interfaces for \ALL platforms.\n <b>Included in ADL SDK</b> |
|
/// |
|
/// All data structures used in AMD Display Library (ADL) public interfaces should be defined in this header file. |
|
/// |
|
|
|
#ifndef ADL_STRUCTURES_H_ |
|
#define ADL_STRUCTURES_H_ |
|
|
|
#include "adl_defines.h" |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the graphics adapter. |
|
/// |
|
/// This structure is used to store various information about the graphics adapter. This |
|
/// information can be returned to the user. Alternatively, it can be used to access various driver calls to set |
|
/// or fetch various settings upon the user's request. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct AdapterInfo |
|
{ |
|
/// \ALL_STRUCT_MEM |
|
|
|
/// Size of the structure. |
|
int iSize; |
|
/// The ADL index handle. One GPU may be associated with one or two index handles |
|
int iAdapterIndex; |
|
/// The unique device ID associated with this adapter. |
|
char strUDID[ADL_MAX_PATH]; |
|
/// The BUS number associated with this adapter. |
|
int iBusNumber; |
|
/// The driver number associated with this adapter. |
|
int iDeviceNumber; |
|
/// The function number. |
|
int iFunctionNumber; |
|
/// The vendor ID associated with this adapter. |
|
int iVendorID; |
|
/// Adapter name. |
|
char strAdapterName[ADL_MAX_PATH]; |
|
/// Display name. For example, "\\\\Display0" for Windows or ":0:0" for Linux. |
|
char strDisplayName[ADL_MAX_PATH]; |
|
/// Present or not; 1 if present and 0 if not present.It the logical adapter is present, the display name such as \\\\.\\Display1 can be found from OS |
|
int iPresent; |
|
|
|
#if defined (_WIN32) || defined (_WIN64) |
|
/// \WIN_STRUCT_MEM |
|
|
|
/// Exist or not; 1 is exist and 0 is not present. |
|
int iExist; |
|
/// Driver registry path. |
|
char strDriverPath[ADL_MAX_PATH]; |
|
/// Driver registry path Ext for. |
|
char strDriverPathExt[ADL_MAX_PATH]; |
|
/// PNP string from Windows. |
|
char strPNPString[ADL_MAX_PATH]; |
|
/// It is generated from EnumDisplayDevices. |
|
int iOSDisplayIndex; |
|
#endif /* (_WIN32) || (_WIN64) */ |
|
|
|
#if defined (LINUX) |
|
/// \LNX_STRUCT_MEM |
|
|
|
/// Internal X screen number from GPUMapInfo (DEPRICATED use XScreenInfo) |
|
int iXScreenNum; |
|
/// Internal driver index from GPUMapInfo |
|
int iDrvIndex; |
|
/// \deprecated Internal x config file screen identifier name. Use XScreenInfo instead. |
|
char strXScreenConfigName[ADL_MAX_PATH]; |
|
|
|
#endif /* (LINUX) */ |
|
} AdapterInfo, *LPAdapterInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the Linux X screen information. |
|
/// |
|
/// This structure is used to store the current screen number and xorg.conf ID name assoicated with an adapter index. |
|
/// This structure is updated during ADL_Main_Control_Refresh or ADL_ScreenInfo_Update. |
|
/// Note: This structure should be used in place of iXScreenNum and strXScreenConfigName in AdapterInfo as they will be |
|
/// deprecated. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
#if defined (LINUX) |
|
typedef struct XScreenInfo |
|
{ |
|
/// Internal X screen number from GPUMapInfo. |
|
int iXScreenNum; |
|
/// Internal x config file screen identifier name. |
|
char strXScreenConfigName[ADL_MAX_PATH]; |
|
} XScreenInfo, *LPXScreenInfo; |
|
#endif /* (LINUX) */ |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the ASIC memory. |
|
/// |
|
/// This structure is used to store various information about the ASIC memory. This |
|
/// information can be returned to the user. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMemoryInfo |
|
{ |
|
/// Memory size in bytes. |
|
long long iMemorySize; |
|
/// Memory type in string. |
|
char strMemoryType[ADL_MAX_PATH]; |
|
/// Memory bandwidth in Mbytes/s. |
|
long long iMemoryBandwidth; |
|
} ADLMemoryInfo, *LPADLMemoryInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about memory required by type |
|
/// |
|
/// This structure is returned by ADL_Adapter_ConfigMemory_Get, which given a desktop and display configuration |
|
/// will return the Memory used. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMemoryRequired |
|
{ |
|
long long iMemoryReq; /// Memory in bytes required |
|
int iType; /// Type of Memory \ref define_adl_validmemoryrequiredfields |
|
int iDisplayFeatureValue; /// Display features \ref define_adl_visiblememoryfeatures that are using this type of memory |
|
} ADLMemoryRequired, *LPADLMemoryRequired; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the features associated with a display |
|
/// |
|
/// This structure is a parameter to ADL_Adapter_ConfigMemory_Get, which given a desktop and display configuration |
|
/// will return the Memory used. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMemoryDisplayFeatures |
|
{ |
|
int iDisplayIndex; /// ADL Display index |
|
int iDisplayFeatureValue; /// features that the display is using \ref define_adl_visiblememoryfeatures |
|
} ADLMemoryDisplayFeatures, *LPADLMemoryDisplayFeatures; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing DDC information. |
|
/// |
|
/// This structure is used to store various DDC information that can be returned to the user. |
|
/// Note that all fields of type int are actually defined as unsigned int types within the driver. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDDCInfo |
|
{ |
|
/// Size of the structure |
|
int ulSize; |
|
/// Indicates whether the attached display supports DDC. If this field is zero on return, no other DDC information fields will be used. |
|
int ulSupportsDDC; |
|
/// Returns the manufacturer ID of the display device. Should be zeroed if this information is not available. |
|
int ulManufacturerID; |
|
/// Returns the product ID of the display device. Should be zeroed if this information is not available. |
|
int ulProductID; |
|
/// Returns the name of the display device. Should be zeroed if this information is not available. |
|
char cDisplayName[ADL_MAX_DISPLAY_NAME]; |
|
/// Returns the maximum Horizontal supported resolution. Should be zeroed if this information is not available. |
|
int ulMaxHResolution; |
|
/// Returns the maximum Vertical supported resolution. Should be zeroed if this information is not available. |
|
int ulMaxVResolution; |
|
/// Returns the maximum supported refresh rate. Should be zeroed if this information is not available. |
|
int ulMaxRefresh; |
|
/// Returns the display device preferred timing mode's horizontal resolution. |
|
int ulPTMCx; |
|
/// Returns the display device preferred timing mode's vertical resolution. |
|
int ulPTMCy; |
|
/// Returns the display device preferred timing mode's refresh rate. |
|
int ulPTMRefreshRate; |
|
/// Return EDID flags. |
|
int ulDDCInfoFlag; |
|
} ADLDDCInfo, *LPADLDDCInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing DDC information. |
|
/// |
|
/// This structure is used to store various DDC information that can be returned to the user. |
|
/// Note that all fields of type int are actually defined as unsigned int types within the driver. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDDCInfo2 |
|
{ |
|
/// Size of the structure |
|
int ulSize; |
|
/// Indicates whether the attached display supports DDC. If this field is zero on return, no other DDC |
|
/// information fields will be used. |
|
int ulSupportsDDC; |
|
/// Returns the manufacturer ID of the display device. Should be zeroed if this information is not available. |
|
int ulManufacturerID; |
|
/// Returns the product ID of the display device. Should be zeroed if this information is not available. |
|
int ulProductID; |
|
/// Returns the name of the display device. Should be zeroed if this information is not available. |
|
char cDisplayName[ADL_MAX_DISPLAY_NAME]; |
|
/// Returns the maximum Horizontal supported resolution. Should be zeroed if this information is not available. |
|
int ulMaxHResolution; |
|
/// Returns the maximum Vertical supported resolution. Should be zeroed if this information is not available. |
|
int ulMaxVResolution; |
|
/// Returns the maximum supported refresh rate. Should be zeroed if this information is not available. |
|
int ulMaxRefresh; |
|
/// Returns the display device preferred timing mode's horizontal resolution. |
|
int ulPTMCx; |
|
/// Returns the display device preferred timing mode's vertical resolution. |
|
int ulPTMCy; |
|
/// Returns the display device preferred timing mode's refresh rate. |
|
int ulPTMRefreshRate; |
|
/// Return EDID flags. |
|
int ulDDCInfoFlag; |
|
/// Returns 1 if the display supported packed pixel, 0 otherwise |
|
int bPackedPixelSupported; |
|
/// Returns the Pixel formats the display supports \ref define_ddcinfo_pixelformats |
|
int iPanelPixelFormat; |
|
/// Return EDID serial ID. |
|
int ulSerialID; |
|
/// Return minimum monitor luminance data |
|
int ulMinLuminanceData; |
|
/// Return average monitor luminance data |
|
int ulAvgLuminanceData; |
|
/// Return maximum monitor luminance data |
|
int ulMaxLuminanceData; |
|
|
|
/// Bit vector of supported transfer functions \ref define_source_content_TF |
|
int iSupportedTransferFunction; |
|
|
|
/// Bit vector of supported color spaces \ref define_source_content_CS |
|
int iSupportedColorSpace; |
|
|
|
/// Display Red Chromaticity X coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityRedX; |
|
/// Display Red Chromaticity Y coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityRedY; |
|
/// Display Green Chromaticity X coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityGreenX; |
|
/// Display Green Chromaticity Y coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityGreenY; |
|
/// Display Blue Chromaticity X coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityBlueX; |
|
/// Display Blue Chromaticity Y coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityBlueY; |
|
/// Display White Point X coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityWhitePointX; |
|
/// Display White Point Y coordinate multiplied by 10000 |
|
int iNativeDisplayChromaticityWhitePointY; |
|
/// Display diffuse screen reflectance 0-1 (100%) in units of 0.01 |
|
int iDiffuseScreenReflectance; |
|
/// Display specular screen reflectance 0-1 (100%) in units of 0.01 |
|
int iSpecularScreenReflectance; |
|
/// Bit vector of supported color spaces \ref define_HDR_support |
|
int iSupportedHDR; |
|
|
|
// Reserved for future use |
|
int iReserved[10]; |
|
} ADLDDCInfo2, *LPADLDDCInfo2; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information controller Gamma settings. |
|
/// |
|
/// This structure is used to store the red, green and blue color channel information for the. |
|
/// controller gamma setting. This information is returned by ADL, and it can also be used to |
|
/// set the controller gamma setting. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGamma |
|
{ |
|
/// Red color channel gamma value. |
|
float fRed; |
|
/// Green color channel gamma value. |
|
float fGreen; |
|
/// Blue color channel gamma value. |
|
float fBlue; |
|
} ADLGamma, *LPADLGamma; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about component video custom modes. |
|
/// |
|
/// This structure is used to store the component video custom mode. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLCustomMode |
|
{ |
|
/// Custom mode flags. They are returned by the ADL driver. |
|
int iFlags; |
|
/// Custom mode width. |
|
int iModeWidth; |
|
/// Custom mode height. |
|
int iModeHeight; |
|
/// Custom mode base width. |
|
int iBaseModeWidth; |
|
/// Custom mode base height. |
|
int iBaseModeHeight; |
|
/// Custom mode refresh rate. |
|
int iRefreshRate; |
|
} ADLCustomMode, *LPADLCustomMode; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing Clock information for OD5 calls. |
|
/// |
|
/// This structure is used to retrieve clock information for OD5 calls. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGetClocksOUT |
|
{ |
|
long ulHighCoreClock; |
|
long ulHighMemoryClock; |
|
long ulHighVddc; |
|
long ulCoreMin; |
|
long ulCoreMax; |
|
long ulMemoryMin; |
|
long ulMemoryMax; |
|
long ulActivityPercent; |
|
long ulCurrentCoreClock; |
|
long ulCurrentMemoryClock; |
|
long ulReserved; |
|
} ADLGetClocksOUT; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing HDTV information for display calls. |
|
/// |
|
/// This structure is used to retrieve HDTV information information for display calls. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayConfig |
|
{ |
|
/// Size of the structure |
|
long ulSize; |
|
/// HDTV connector type. |
|
long ulConnectorType; |
|
/// HDTV capabilities. |
|
long ulDeviceData; |
|
/// Overridden HDTV capabilities. |
|
long ulOverridedDeviceData; |
|
/// Reserved field |
|
long ulReserved; |
|
} ADLDisplayConfig; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display device. |
|
/// |
|
/// This structure is used to store display device information |
|
/// such as display index, type, name, connection status, mapped adapter and controller indexes, |
|
/// whether or not multiple VPUs are supported, local display connections or not (through Lasso), etc. |
|
/// This information can be returned to the user. Alternatively, it can be used to access various driver calls to set |
|
/// or fetch various display device related settings upon the user's request. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayID |
|
{ |
|
/// The logical display index belonging to this adapter. |
|
int iDisplayLogicalIndex; |
|
|
|
///\brief The physical display index. |
|
/// For example, display index 2 from adapter 2 can be used by current adapter 1.\n |
|
/// So current adapter may enumerate this adapter as logical display 7 but the physical display |
|
/// index is still 2. |
|
int iDisplayPhysicalIndex; |
|
|
|
/// The persistent logical adapter index for the display. |
|
int iDisplayLogicalAdapterIndex; |
|
|
|
///\brief The persistent physical adapter index for the display. |
|
/// It can be the current adapter or a non-local adapter. \n |
|
/// If this adapter index is different than the current adapter, |
|
/// the Display Non Local flag is set inside DisplayInfoValue. |
|
int iDisplayPhysicalAdapterIndex; |
|
} ADLDisplayID, *LPADLDisplayID; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display device. |
|
/// |
|
/// This structure is used to store various information about the display device. This |
|
/// information can be returned to the user, or used to access various driver calls to set |
|
/// or fetch various display-device-related settings upon the user's request |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayInfo |
|
{ |
|
/// The DisplayID structure |
|
ADLDisplayID displayID; |
|
|
|
///\deprecated The controller index to which the display is mapped.\n Will not be used in the future\n |
|
int iDisplayControllerIndex; |
|
|
|
/// The display's EDID name. |
|
char strDisplayName[ADL_MAX_PATH]; |
|
|
|
/// The display's manufacturer name. |
|
char strDisplayManufacturerName[ADL_MAX_PATH]; |
|
|
|
/// The Display type. For example: CRT, TV, CV, DFP. |
|
int iDisplayType; |
|
|
|
/// The display output type. For example: HDMI, SVIDEO, COMPONMNET VIDEO. |
|
int iDisplayOutputType; |
|
|
|
/// The connector type for the device. |
|
int iDisplayConnector; |
|
|
|
///\brief The bit mask identifies the number of bits ADLDisplayInfo is currently using. \n |
|
/// It will be the sum all the bit definitions in ADL_DISPLAY_DISPLAYINFO_xxx. |
|
int iDisplayInfoMask; |
|
|
|
/// The bit mask identifies the display status. \ref define_displayinfomask |
|
int iDisplayInfoValue; |
|
} ADLDisplayInfo, *LPADLDisplayInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display port MST device. |
|
/// |
|
/// This structure is used to store various MST information about the display port device. This |
|
/// information can be returned to the user, or used to access various driver calls to |
|
/// fetch various display-device-related settings upon the user's request |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayDPMSTInfo |
|
{ |
|
/// The ADLDisplayID structure |
|
ADLDisplayID displayID; |
|
|
|
/// total bandwidth available on the DP connector |
|
int iTotalAvailableBandwidthInMpbs; |
|
/// bandwidth allocated to this display |
|
int iAllocatedBandwidthInMbps; |
|
|
|
// info from DAL DpMstSinkInfo |
|
/// string identifier for the display |
|
char strGlobalUniqueIdentifier[ADL_MAX_PATH]; |
|
|
|
/// The link count of relative address, rad[0] upto rad[linkCount] are valid |
|
int radLinkCount; |
|
/// The physical connector ID, used to identify the physical DP port |
|
int iPhysicalConnectorID; |
|
|
|
/// Relative address, address scheme starts from source side |
|
char rad[ADL_MAX_RAD_LINK_COUNT]; |
|
} ADLDisplayDPMSTInfo, *LPADLDisplayDPMSTInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the display mode definition used per controller. |
|
/// |
|
/// This structure is used to store the display mode definition used per controller. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayMode |
|
{ |
|
/// Vertical resolution (in pixels). |
|
int iPelsHeight; |
|
/// Horizontal resolution (in pixels). |
|
int iPelsWidth; |
|
/// Color depth. |
|
int iBitsPerPel; |
|
/// Refresh rate. |
|
int iDisplayFrequency; |
|
} ADLDisplayMode; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing detailed timing parameters. |
|
/// |
|
/// This structure is used to store the detailed timing parameters. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDetailedTiming |
|
{ |
|
/// Size of the structure. |
|
int iSize; |
|
/// Timing flags. \ref define_detailed_timing_flags |
|
short sTimingFlags; |
|
/// Total width (columns). |
|
short sHTotal; |
|
/// Displayed width. |
|
short sHDisplay; |
|
/// Horizontal sync signal offset. |
|
short sHSyncStart; |
|
/// Horizontal sync signal width. |
|
short sHSyncWidth; |
|
/// Total height (rows). |
|
short sVTotal; |
|
/// Displayed height. |
|
short sVDisplay; |
|
/// Vertical sync signal offset. |
|
short sVSyncStart; |
|
/// Vertical sync signal width. |
|
short sVSyncWidth; |
|
/// Pixel clock value. |
|
short sPixelClock; |
|
/// Overscan right. |
|
short sHOverscanRight; |
|
/// Overscan left. |
|
short sHOverscanLeft; |
|
/// Overscan bottom. |
|
short sVOverscanBottom; |
|
/// Overscan top. |
|
short sVOverscanTop; |
|
short sOverscan8B; |
|
short sOverscanGR; |
|
} ADLDetailedTiming; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing display mode information. |
|
/// |
|
/// This structure is used to store the display mode information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayModeInfo |
|
{ |
|
/// Timing standard of the current mode. \ref define_modetiming_standard |
|
int iTimingStandard; |
|
/// Applicable timing standards for the current mode. |
|
int iPossibleStandard; |
|
/// Refresh rate factor. |
|
int iRefreshRate; |
|
/// Num of pixels in a row. |
|
int iPelsWidth; |
|
/// Num of pixels in a column. |
|
int iPelsHeight; |
|
/// Detailed timing parameters. |
|
ADLDetailedTiming sDetailedTiming; |
|
} ADLDisplayModeInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about display property. |
|
/// |
|
/// This structure is used to store the display property for the current adapter. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayProperty |
|
{ |
|
/// Must be set to sizeof the structure |
|
int iSize; |
|
/// Must be set to \ref ADL_DL_DISPLAYPROPERTY_TYPE_EXPANSIONMODE or \ref ADL_DL_DISPLAYPROPERTY_TYPE_USEUNDERSCANSCALING |
|
int iPropertyType; |
|
/// Get or Set \ref ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_CENTER or \ref ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_FULLSCREEN or \ref ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_ASPECTRATIO or \ref ADL_DL_DISPLAYPROPERTY_TYPE_ITCFLAGENABLE |
|
int iExpansionMode; |
|
/// Display Property supported? 1: Supported, 0: Not supported |
|
int iSupport; |
|
/// Display Property current value |
|
int iCurrent; |
|
/// Display Property Default value |
|
int iDefault; |
|
} ADLDisplayProperty; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Clock. |
|
/// |
|
/// This structure is used to store the clock information for the current adapter |
|
/// such as core clock and memory clock info. |
|
///\nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLClockInfo |
|
{ |
|
/// Core clock in 10 KHz. |
|
int iCoreClock; |
|
/// Memory clock in 10 KHz. |
|
int iMemoryClock; |
|
} ADLClockInfo, *LPADLClockInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about I2C. |
|
/// |
|
/// This structure is used to store the I2C information for the current adapter. |
|
/// This structure is used by the ADL_Display_WriteAndReadI2C() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLI2C |
|
{ |
|
/// Size of the structure |
|
int iSize; |
|
/// Numerical value representing hardware I2C. |
|
int iLine; |
|
/// The 7-bit I2C slave device address, shifted one bit to the left. |
|
int iAddress; |
|
/// The offset of the data from the address. |
|
int iOffset; |
|
/// Read from or write to slave device. \ref ADL_DL_I2C_ACTIONREAD or \ref ADL_DL_I2C_ACTIONWRITE or \ref ADL_DL_I2C_ACTIONREAD_REPEATEDSTART |
|
int iAction; |
|
/// I2C clock speed in KHz. |
|
int iSpeed; |
|
/// A numerical value representing the number of bytes to be sent or received on the I2C bus. |
|
int iDataSize; |
|
/// Address of the characters which are to be sent or received on the I2C bus. |
|
char *pcData; |
|
} ADLI2C; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about EDID data. |
|
/// |
|
/// This structure is used to store the information about EDID data for the adapter. |
|
/// This structure is used by the ADL_Display_EdidData_Get() and ADL_Display_EdidData_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayEDIDData |
|
{ |
|
/// Size of the structure |
|
int iSize; |
|
/// Set to 0 |
|
int iFlag; |
|
/// Size of cEDIDData. Set by ADL_Display_EdidData_Get() upon return |
|
int iEDIDSize; |
|
/// 0, 1 or 2. If set to 3 or above an error ADL_ERR_INVALID_PARAM is generated |
|
int iBlockIndex; |
|
/// EDID data |
|
char cEDIDData[ADL_MAX_EDIDDATA_SIZE]; |
|
/// Reserved |
|
int iReserved[4]; |
|
}ADLDisplayEDIDData; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about input of controller overlay adjustment. |
|
/// |
|
/// This structure is used to store the information about input of controller overlay adjustment for the adapter. |
|
/// This structure is used by the ADL_Display_ControllerOverlayAdjustmentCaps_Get, ADL_Display_ControllerOverlayAdjustmentData_Get, and |
|
/// ADL_Display_ControllerOverlayAdjustmentData_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLControllerOverlayInput |
|
{ |
|
/// Should be set to the sizeof the structure |
|
int iSize; |
|
///\ref ADL_DL_CONTROLLER_OVERLAY_ALPHA or \ref ADL_DL_CONTROLLER_OVERLAY_ALPHAPERPIX |
|
int iOverlayAdjust; |
|
/// Data. |
|
int iValue; |
|
/// Should be 0. |
|
int iReserved; |
|
} ADLControllerOverlayInput; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about overlay adjustment. |
|
/// |
|
/// This structure is used to store the information about overlay adjustment for the adapter. |
|
/// This structure is used by the ADLControllerOverlayInfo() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdjustmentinfo |
|
{ |
|
/// Default value |
|
int iDefault; |
|
/// Minimum value |
|
int iMin; |
|
/// Maximum Value |
|
int iMax; |
|
/// Step value |
|
int iStep; |
|
} ADLAdjustmentinfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about controller overlay information. |
|
/// |
|
/// This structure is used to store information about controller overlay info for the adapter. |
|
/// This structure is used by the ADL_Display_ControllerOverlayAdjustmentCaps_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLControllerOverlayInfo |
|
{ |
|
/// Should be set to the sizeof the structure |
|
int iSize; |
|
/// Data. |
|
ADLAdjustmentinfo sOverlayInfo; |
|
/// Should be 0. |
|
int iReserved[3]; |
|
} ADLControllerOverlayInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync module information. |
|
/// |
|
/// This structure is used to retrieve GL-Sync module information for |
|
/// Workstation Framelock/Genlock. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGLSyncModuleID |
|
{ |
|
/// Unique GL-Sync module ID. |
|
int iModuleID; |
|
/// GL-Sync GPU port index (to be passed into ADLGLSyncGenlockConfig.lSignalSource and ADLGlSyncPortControl.lSignalSource). |
|
int iGlSyncGPUPort; |
|
/// GL-Sync module firmware version of Boot Sector. |
|
int iFWBootSectorVersion; |
|
/// GL-Sync module firmware version of User Sector. |
|
int iFWUserSectorVersion; |
|
} ADLGLSyncModuleID , *LPADLGLSyncModuleID; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync ports capabilities. |
|
/// |
|
/// This structure is used to retrieve hardware capabilities for the ports of the GL-Sync module |
|
/// for Workstation Framelock/Genlock (such as port type and number of associated LEDs). |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGLSyncPortCaps |
|
{ |
|
/// Port type. Bitfield of ADL_GLSYNC_PORTTYPE_* \ref define_glsync |
|
int iPortType; |
|
/// Number of LEDs associated for this port. |
|
int iNumOfLEDs; |
|
}ADLGLSyncPortCaps, *LPADLGLSyncPortCaps; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync Genlock settings. |
|
/// |
|
/// This structure is used to get and set genlock settings for the GPU ports of the GL-Sync module |
|
/// for Workstation Framelock/Genlock.\n |
|
/// \see define_glsync |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGLSyncGenlockConfig |
|
{ |
|
/// Specifies what fields in this structure are valid \ref define_glsync |
|
int iValidMask; |
|
/// Delay (ms) generating a sync signal. |
|
int iSyncDelay; |
|
/// Vector of framelock control bits. Bitfield of ADL_GLSYNC_FRAMELOCKCNTL_* \ref define_glsync |
|
int iFramelockCntlVector; |
|
/// Source of the sync signal. Either GL_Sync GPU Port index or ADL_GLSYNC_SIGNALSOURCE_* \ref define_glsync |
|
int iSignalSource; |
|
/// Use sampled sync signal. A value of 0 specifies no sampling. |
|
int iSampleRate; |
|
/// For interlaced sync signals, the value can be ADL_GLSYNC_SYNCFIELD_1 or *_BOTH \ref define_glsync |
|
int iSyncField; |
|
/// The signal edge that should trigger synchronization. ADL_GLSYNC_TRIGGEREDGE_* \ref define_glsync |
|
int iTriggerEdge; |
|
/// Scan rate multiplier applied to the sync signal. ADL_GLSYNC_SCANRATECOEFF_* \ref define_glsync |
|
int iScanRateCoeff; |
|
}ADLGLSyncGenlockConfig, *LPADLGLSyncGenlockConfig; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync port information. |
|
/// |
|
/// This structure is used to get status of the GL-Sync ports (BNC or RJ45s) |
|
/// for Workstation Framelock/Genlock. |
|
/// \see define_glsync |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGlSyncPortInfo |
|
{ |
|
/// Type of GL-Sync port (ADL_GLSYNC_PORT_*). |
|
int iPortType; |
|
/// The number of LEDs for this port. It's also filled within ADLGLSyncPortCaps. |
|
int iNumOfLEDs; |
|
/// Port state ADL_GLSYNC_PORTSTATE_* \ref define_glsync |
|
int iPortState; |
|
/// Scanned frequency for this port (vertical refresh rate in milliHz; 60000 means 60 Hz). |
|
int iFrequency; |
|
/// Used for ADL_GLSYNC_PORT_BNC. It is ADL_GLSYNC_SIGNALTYPE_* \ref define_glsync |
|
int iSignalType; |
|
/// Used for ADL_GLSYNC_PORT_RJ45PORT*. It is GL_Sync GPU Port index or ADL_GLSYNC_SIGNALSOURCE_*. \ref define_glsync |
|
int iSignalSource; |
|
|
|
} ADLGlSyncPortInfo, *LPADLGlSyncPortInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync port control settings. |
|
/// |
|
/// This structure is used to configure the GL-Sync ports (RJ45s only) |
|
/// for Workstation Framelock/Genlock. |
|
/// \see define_glsync |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGlSyncPortControl |
|
{ |
|
/// Port to control ADL_GLSYNC_PORT_RJ45PORT1 or ADL_GLSYNC_PORT_RJ45PORT2 \ref define_glsync |
|
int iPortType; |
|
/// Port control data ADL_GLSYNC_PORTCNTL_* \ref define_glsync |
|
int iControlVector; |
|
/// Source of the sync signal. Either GL_Sync GPU Port index or ADL_GLSYNC_SIGNALSOURCE_* \ref define_glsync |
|
int iSignalSource; |
|
} ADLGlSyncPortControl; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync mode of a display. |
|
/// |
|
/// This structure is used to get and set GL-Sync mode settings for a display connected to |
|
/// an adapter attached to a GL-Sync module for Workstation Framelock/Genlock. |
|
/// \see define_glsync |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGlSyncMode |
|
{ |
|
/// Mode control vector. Bitfield of ADL_GLSYNC_MODECNTL_* \ref define_glsync |
|
int iControlVector; |
|
/// Mode status vector. Bitfield of ADL_GLSYNC_MODECNTL_STATUS_* \ref define_glsync |
|
int iStatusVector; |
|
/// Index of GL-Sync connector used to genlock the display/controller. |
|
int iGLSyncConnectorIndex; |
|
} ADLGlSyncMode, *LPADLGlSyncMode; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing GL-Sync mode of a display. |
|
/// |
|
/// This structure is used to get and set GL-Sync mode settings for a display connected to |
|
/// an adapter attached to a GL-Sync module for Workstation Framelock/Genlock. |
|
/// \see define_glsync |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGlSyncMode2 |
|
{ |
|
/// Mode control vector. Bitfield of ADL_GLSYNC_MODECNTL_* \ref define_glsync |
|
int iControlVector; |
|
/// Mode status vector. Bitfield of ADL_GLSYNC_MODECNTL_STATUS_* \ref define_glsync |
|
int iStatusVector; |
|
/// Index of GL-Sync connector used to genlock the display/controller. |
|
int iGLSyncConnectorIndex; |
|
/// Index of the display to which this GLSync applies to. |
|
int iDisplayIndex; |
|
} ADLGlSyncMode2, *LPADLGlSyncMode2; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the packet info of a display. |
|
/// |
|
/// This structure is used to get and set the packet information of a display. |
|
/// This structure is used by ADLDisplayDataPacket. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLInfoPacket |
|
{ |
|
char hb0; |
|
char hb1; |
|
char hb2; |
|
/// sb0~sb27 |
|
char sb[28]; |
|
}ADLInfoPacket; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the AVI packet info of a display. |
|
/// |
|
/// This structure is used to get and set AVI the packet info of a display. |
|
/// This structure is used by ADLDisplayDataPacket. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAVIInfoPacket //Valid user defined data/ |
|
{ |
|
/// byte 3, bit 7 |
|
char bPB3_ITC; |
|
/// byte 5, bit [7:4]. |
|
char bPB5; |
|
}ADLAVIInfoPacket; |
|
|
|
// Overdrive clock setting structure definition. |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the Overdrive clock setting. |
|
/// |
|
/// This structure is used to get the Overdrive clock setting. |
|
/// This structure is used by ADLAdapterODClockInfo. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODClockSetting |
|
{ |
|
/// Deafult clock |
|
int iDefaultClock; |
|
/// Current clock |
|
int iCurrentClock; |
|
/// Maximum clcok |
|
int iMaxClock; |
|
/// Minimum clock |
|
int iMinClock; |
|
/// Requested clcock |
|
int iRequestedClock; |
|
/// Step |
|
int iStepClock; |
|
} ADLODClockSetting; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the Overdrive clock information. |
|
/// |
|
/// This structure is used to get the Overdrive clock information. |
|
/// This structure is used by the ADL_Display_ODClockInfo_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdapterODClockInfo |
|
{ |
|
/// Size of the structure |
|
int iSize; |
|
/// Flag \ref define_clockinfo_flags |
|
int iFlags; |
|
/// Memory Clock |
|
ADLODClockSetting sMemoryClock; |
|
/// Engine Clock |
|
ADLODClockSetting sEngineClock; |
|
} ADLAdapterODClockInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the Overdrive clock configuration. |
|
/// |
|
/// This structure is used to set the Overdrive clock configuration. |
|
/// This structure is used by the ADL_Display_ODClockConfig_Set() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdapterODClockConfig |
|
{ |
|
/// Size of the structure |
|
int iSize; |
|
/// Flag \ref define_clockinfo_flags |
|
int iFlags; |
|
/// Memory Clock |
|
int iMemoryClock; |
|
/// Engine Clock |
|
int iEngineClock; |
|
} ADLAdapterODClockConfig; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about current power management related activity. |
|
/// |
|
/// This structure is used to store information about current power management related activity. |
|
/// This structure (Overdrive 5 interfaces) is used by the ADL_PM_CurrentActivity_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPMActivity |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// Current engine clock. |
|
int iEngineClock; |
|
/// Current memory clock. |
|
int iMemoryClock; |
|
/// Current core voltage. |
|
int iVddc; |
|
/// GPU utilization. |
|
int iActivityPercent; |
|
/// Performance level index. |
|
int iCurrentPerformanceLevel; |
|
/// Current PCIE bus speed. |
|
int iCurrentBusSpeed; |
|
/// Number of PCIE bus lanes. |
|
int iCurrentBusLanes; |
|
/// Maximum number of PCIE bus lanes. |
|
int iMaximumBusLanes; |
|
/// Reserved for future purposes. |
|
int iReserved; |
|
} ADLPMActivity; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about thermal controller. |
|
/// |
|
/// This structure is used to store information about thermal controller. |
|
/// This structure is used by ADL_PM_ThermalDevices_Enum. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLThermalControllerInfo |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// Possible valies: \ref ADL_DL_THERMAL_DOMAIN_OTHER or \ref ADL_DL_THERMAL_DOMAIN_GPU. |
|
int iThermalDomain; |
|
/// GPU 0, 1, etc. |
|
int iDomainIndex; |
|
/// Possible valies: \ref ADL_DL_THERMAL_FLAG_INTERRUPT or \ref ADL_DL_THERMAL_FLAG_FANCONTROL |
|
int iFlags; |
|
} ADLThermalControllerInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about thermal controller temperature. |
|
/// |
|
/// This structure is used to store information about thermal controller temperature. |
|
/// This structure is used by the ADL_PM_Temperature_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLTemperature |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// Temperature in millidegrees Celsius. |
|
int iTemperature; |
|
} ADLTemperature; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about thermal controller fan speed. |
|
/// |
|
/// This structure is used to store information about thermal controller fan speed. |
|
/// This structure is used by the ADL_PM_FanSpeedInfo_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLFanSpeedInfo |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// \ref define_fanctrl |
|
int iFlags; |
|
/// Minimum possible fan speed value in percents. |
|
int iMinPercent; |
|
/// Maximum possible fan speed value in percents. |
|
int iMaxPercent; |
|
/// Minimum possible fan speed value in RPM. |
|
int iMinRPM; |
|
/// Maximum possible fan speed value in RPM. |
|
int iMaxRPM; |
|
} ADLFanSpeedInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about fan speed reported by thermal controller. |
|
/// |
|
/// This structure is used to store information about fan speed reported by thermal controller. |
|
/// This structure is used by the ADL_Overdrive5_FanSpeed_Get() and ADL_Overdrive5_FanSpeed_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLFanSpeedValue |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// Possible valies: \ref ADL_DL_FANCTRL_SPEED_TYPE_PERCENT or \ref ADL_DL_FANCTRL_SPEED_TYPE_RPM |
|
int iSpeedType; |
|
/// Fan speed value |
|
int iFanSpeed; |
|
/// The only flag for now is: \ref ADL_DL_FANCTRL_FLAG_USER_DEFINED_SPEED |
|
int iFlags; |
|
} ADLFanSpeedValue; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the range of Overdrive parameter. |
|
/// |
|
/// This structure is used to store information about the range of Overdrive parameter. |
|
/// This structure is used by ADLODParameters. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODParameterRange |
|
{ |
|
/// Minimum parameter value. |
|
int iMin; |
|
/// Maximum parameter value. |
|
int iMax; |
|
/// Parameter step value. |
|
int iStep; |
|
} ADLODParameterRange; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive parameters. |
|
/// |
|
/// This structure is used to store information about Overdrive parameters. |
|
/// This structure is used by the ADL_Overdrive5_ODParameters_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODParameters |
|
{ |
|
/// Must be set to the size of the structure |
|
int iSize; |
|
/// Number of standard performance states. |
|
int iNumberOfPerformanceLevels; |
|
/// Indicates whether the GPU is capable to measure its activity. |
|
int iActivityReportingSupported; |
|
/// Indicates whether the GPU supports discrete performance levels or performance range. |
|
int iDiscretePerformanceLevels; |
|
/// Reserved for future use. |
|
int iReserved; |
|
/// Engine clock range. |
|
ADLODParameterRange sEngineClock; |
|
/// Memory clock range. |
|
ADLODParameterRange sMemoryClock; |
|
/// Core voltage range. |
|
ADLODParameterRange sVddc; |
|
} ADLODParameters; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive level. |
|
/// |
|
/// This structure is used to store information about Overdrive level. |
|
/// This structure is used by ADLODPerformanceLevels. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODPerformanceLevel |
|
{ |
|
/// Engine clock. |
|
int iEngineClock; |
|
/// Memory clock. |
|
int iMemoryClock; |
|
/// Core voltage. |
|
int iVddc; |
|
} ADLODPerformanceLevel; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive performance levels. |
|
/// |
|
/// This structure is used to store information about Overdrive performance levels. |
|
/// This structure is used by the ADL_Overdrive5_ODPerformanceLevels_Get() and ADL_Overdrive5_ODPerformanceLevels_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODPerformanceLevels |
|
{ |
|
/// Must be set to sizeof( \ref ADLODPerformanceLevels ) + sizeof( \ref ADLODPerformanceLevel ) * (ADLODParameters.iNumberOfPerformanceLevels - 1) |
|
int iSize; |
|
int iReserved; |
|
/// Array of performance state descriptors. Must have ADLODParameters.iNumberOfPerformanceLevels elements. |
|
ADLODPerformanceLevel aLevels [1]; |
|
} ADLODPerformanceLevels; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the proper CrossfireX chains combinations. |
|
/// |
|
/// This structure is used to store information about the CrossfireX chains combination for a particular adapter. |
|
/// This structure is used by the ADL_Adapter_Crossfire_Caps(), ADL_Adapter_Crossfire_Get(), and ADL_Adapter_Crossfire_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLCrossfireComb |
|
{ |
|
/// Number of adapters in this combination. |
|
int iNumLinkAdapter; |
|
/// A list of ADL indexes of the linked adapters in this combination. |
|
int iAdaptLink[3]; |
|
} ADLCrossfireComb; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing CrossfireX state and error information. |
|
/// |
|
/// This structure is used to store state and error information about a particular adapter CrossfireX combination. |
|
/// This structure is used by the ADL_Adapter_Crossfire_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLCrossfireInfo |
|
{ |
|
/// Current error code of this CrossfireX combination. |
|
int iErrorCode; |
|
/// Current \ref define_crossfirestate |
|
int iState; |
|
/// If CrossfireX is supported by this combination. The value is either \ref ADL_TRUE or \ref ADL_FALSE. |
|
int iSupported; |
|
} ADLCrossfireInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about the BIOS. |
|
/// |
|
/// This structure is used to store various information about the Chipset. This |
|
/// information can be returned to the user. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLBiosInfo |
|
{ |
|
char strPartNumber[ADL_MAX_PATH]; ///< Part number. |
|
char strVersion[ADL_MAX_PATH]; ///< Version number. |
|
char strDate[ADL_MAX_PATH]; ///< BIOS date in yyyy/mm/dd hh:mm format. |
|
} ADLBiosInfo, *LPADLBiosInfo; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about adapter location. |
|
/// |
|
/// This structure is used to store information about adapter location. |
|
/// This structure is used by ADLMVPUStatus. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdapterLocation |
|
{ |
|
/// PCI Bus number : 8 bits |
|
int iBus; |
|
/// Device number : 5 bits |
|
int iDevice; |
|
/// Function number : 3 bits |
|
int iFunction; |
|
} ADLAdapterLocation,ADLBdf; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing version information |
|
/// |
|
/// This structure is used to store software version information, description of the display device and a web link to the latest installed Catalyst drivers. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLVersionsInfo |
|
{ |
|
/// Driver Release (Packaging) Version (e.g. 8.71-100128n-094835E-ATI) |
|
char strDriverVer[ADL_MAX_PATH]; |
|
/// Catalyst Version(e.g. "10.1"). |
|
char strCatalystVersion[ADL_MAX_PATH]; |
|
/// Web link to an XML file with information about the latest AMD drivers and locations (e.g. "http://www.amd.com/us/driverxml" ) |
|
char strCatalystWebLink[ADL_MAX_PATH]; |
|
|
|
} ADLVersionsInfo, *LPADLVersionsInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing version information |
|
/// |
|
/// This structure is used to store software version information, description of the display device and a web link to the latest installed Catalyst drivers. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLVersionsInfoX2 |
|
{ |
|
/// Driver Release (Packaging) Version (e.g. "16.20.1035-160621a-303814C") |
|
char strDriverVer[ADL_MAX_PATH]; |
|
/// Catalyst Version(e.g. "15.8"). |
|
char strCatalystVersion[ADL_MAX_PATH]; |
|
/// Crimson Version(e.g. "16.6.2"). |
|
char strCrimsonVersion[ADL_MAX_PATH]; |
|
/// Web link to an XML file with information about the latest AMD drivers and locations (e.g. "http://support.amd.com/drivers/xml/driver_09_us.xml" ) |
|
char strCatalystWebLink[ADL_MAX_PATH]; |
|
|
|
} ADLVersionsInfoX2, *LPADLVersionsInfoX2; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about MultiVPU capabilities. |
|
/// |
|
/// This structure is used to store information about MultiVPU capabilities. |
|
/// This structure is used by the ADL_Display_MVPUCaps_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMVPUCaps |
|
{ |
|
/// Must be set to sizeof( ADLMVPUCaps ). |
|
int iSize; |
|
/// Number of adapters. |
|
int iAdapterCount; |
|
/// Bits set for all possible MVPU masters. \ref MVPU_ADAPTER_0 .. \ref MVPU_ADAPTER_3 |
|
int iPossibleMVPUMasters; |
|
/// Bits set for all possible MVPU slaves. \ref MVPU_ADAPTER_0 .. \ref MVPU_ADAPTER_3 |
|
int iPossibleMVPUSlaves; |
|
/// Registry path for each adapter. |
|
char cAdapterPath[ADL_DL_MAX_MVPU_ADAPTERS][ADL_DL_MAX_REGISTRY_PATH]; |
|
} ADLMVPUCaps; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about MultiVPU status. |
|
/// |
|
/// This structure is used to store information about MultiVPU status. |
|
/// Ths structure is used by the ADL_Display_MVPUStatus_Get() function. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMVPUStatus |
|
{ |
|
/// Must be set to sizeof( ADLMVPUStatus ). |
|
int iSize; |
|
/// Number of active adapters. |
|
int iActiveAdapterCount; |
|
/// MVPU status. |
|
int iStatus; |
|
/// PCI Bus/Device/Function for each active adapter participating in MVPU. |
|
ADLAdapterLocation aAdapterLocation[ADL_DL_MAX_MVPU_ADAPTERS]; |
|
} ADLMVPUStatus; |
|
|
|
// Displays Manager structures |
|
|
|
/////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about the activatable source. |
|
/// |
|
/// This structure is used to store activatable source information |
|
/// This information can be returned to the user. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLActivatableSource |
|
{ |
|
/// The Persistent logical Adapter Index. |
|
int iAdapterIndex; |
|
/// The number of Activatable Sources. |
|
int iNumActivatableSources; |
|
/// The bit mask identifies the number of bits ActivatableSourceValue is using. (Not currnetly used) |
|
int iActivatableSourceMask; |
|
/// The bit mask identifies the status. (Not currnetly used) |
|
int iActivatableSourceValue; |
|
} ADLActivatableSource, *LPADLActivatableSource; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about display mode. |
|
/// |
|
/// This structure is used to store the display mode for the current adapter |
|
/// such as X, Y positions, screen resolutions, orientation, |
|
/// color depth, refresh rate, progressive or interlace mode, etc. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
|
|
typedef struct ADLMode |
|
{ |
|
/// Adapter index. |
|
int iAdapterIndex; |
|
/// Display IDs. |
|
ADLDisplayID displayID; |
|
/// Screen position X coordinate. |
|
int iXPos; |
|
/// Screen position Y coordinate. |
|
int iYPos; |
|
/// Screen resolution Width. |
|
int iXRes; |
|
/// Screen resolution Height. |
|
int iYRes; |
|
/// Screen Color Depth. E.g., 16, 32. |
|
int iColourDepth; |
|
/// Screen refresh rate. Could be fractional E.g. 59.97 |
|
float fRefreshRate; |
|
/// Screen orientation. E.g., 0, 90, 180, 270. |
|
int iOrientation; |
|
/// Vista mode flag indicating Progressive or Interlaced mode. |
|
int iModeFlag; |
|
/// The bit mask identifying the number of bits this Mode is currently using. It is the sum of all the bit definitions defined in \ref define_displaymode |
|
int iModeMask; |
|
/// The bit mask identifying the display status. The detailed definition is in \ref define_displaymode |
|
int iModeValue; |
|
} ADLMode, *LPADLMode; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about display target information. |
|
/// |
|
/// This structure is used to store the display target information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayTarget |
|
{ |
|
/// The Display ID. |
|
ADLDisplayID displayID; |
|
|
|
/// The display map index identify this manner and the desktop surface. |
|
int iDisplayMapIndex; |
|
|
|
/// The bit mask identifies the number of bits DisplayTarget is currently using. It is the sum of all the bit definitions defined in \ref ADL_DISPLAY_DISPLAYTARGET_PREFERRED. |
|
int iDisplayTargetMask; |
|
|
|
/// The bit mask identifies the display status. The detailed definition is in \ref ADL_DISPLAY_DISPLAYTARGET_PREFERRED. |
|
int iDisplayTargetValue; |
|
|
|
} ADLDisplayTarget, *LPADLDisplayTarget; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display SLS bezel Mode information. |
|
/// |
|
/// This structure is used to store the display SLS bezel Mode information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct tagADLBezelTransientMode |
|
{ |
|
/// Adapter Index |
|
int iAdapterIndex; |
|
|
|
/// SLS Map Index |
|
int iSLSMapIndex; |
|
|
|
/// The mode index |
|
int iSLSModeIndex; |
|
|
|
/// The mode |
|
ADLMode displayMode; |
|
|
|
/// The number of bezel offsets belongs to this map |
|
int iNumBezelOffset; |
|
|
|
/// The first bezel offset array index in the native mode array |
|
int iFirstBezelOffsetArrayIndex; |
|
|
|
/// The bit mask identifies the bits this structure is currently using. It will be the total OR of all the bit definitions. |
|
int iSLSBezelTransientModeMask; |
|
|
|
/// The bit mask identifies the display status. The detail definition is defined below. |
|
int iSLSBezelTransientModeValue; |
|
|
|
} ADLBezelTransientMode, *LPADLBezelTransientMode; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about the adapter display manner. |
|
/// |
|
/// This structure is used to store adapter display manner information |
|
/// This information can be returned to the user. Alternatively, it can be used to access various driver calls to |
|
/// fetch various display device related display manner settings upon the user's request. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdapterDisplayCap |
|
{ |
|
/// The Persistent logical Adapter Index. |
|
int iAdapterIndex; |
|
/// The bit mask identifies the number of bits AdapterDisplayCap is currently using. Sum all the bits defined in ADL_ADAPTER_DISPLAYCAP_XXX |
|
int iAdapterDisplayCapMask; |
|
/// The bit mask identifies the status. Refer to ADL_ADAPTER_DISPLAYCAP_XXX |
|
int iAdapterDisplayCapValue; |
|
} ADLAdapterDisplayCap, *LPADLAdapterDisplayCap; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about display mapping. |
|
/// |
|
/// This structure is used to store the display mapping data such as display manner. |
|
/// For displays with horizontal or vertical stretch manner, |
|
/// this structure also stores the display order, display row, and column data. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayMap |
|
{ |
|
/// The current display map index. It is the OS desktop index. For example, if the OS index 1 is showing clone mode, the display map will be 1. |
|
int iDisplayMapIndex; |
|
|
|
/// The Display Mode for the current map |
|
ADLMode displayMode; |
|
|
|
/// The number of display targets belongs to this map\n |
|
int iNumDisplayTarget; |
|
|
|
/// The first target array index in the Target array\n |
|
int iFirstDisplayTargetArrayIndex; |
|
|
|
/// The bit mask identifies the number of bits DisplayMap is currently using. It is the sum of all the bit definitions defined in ADL_DISPLAY_DISPLAYMAP_MANNER_xxx. |
|
int iDisplayMapMask; |
|
|
|
///The bit mask identifies the display status. The detailed definition is in ADL_DISPLAY_DISPLAYMAP_MANNER_xxx. |
|
int iDisplayMapValue; |
|
|
|
} ADLDisplayMap, *LPADLDisplayMap; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about the display device possible map for one GPU |
|
/// |
|
/// This structure is used to store the display device possible map |
|
/// This information can be returned to the user. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPossibleMap |
|
{ |
|
/// The current PossibleMap index. Each PossibleMap is assigned an index |
|
int iIndex; |
|
/// The adapter index identifying the GPU for which to validate these Maps & Targets |
|
int iAdapterIndex; |
|
/// Number of display Maps for this GPU to be validated |
|
int iNumDisplayMap; |
|
/// The display Maps list to validate |
|
ADLDisplayMap* displayMap; |
|
/// the number of display Targets for these display Maps |
|
int iNumDisplayTarget; |
|
/// The display Targets list for these display Maps to be validated. |
|
ADLDisplayTarget* displayTarget; |
|
} ADLPossibleMap, *LPADLPossibleMap; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about display possible mapping. |
|
/// |
|
/// This structure is used to store the display possible mapping's controller index for the current display. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPossibleMapping |
|
{ |
|
int iDisplayIndex; ///< The display index. Each display is assigned an index. |
|
int iDisplayControllerIndex; ///< The controller index to which display is mapped. |
|
int iDisplayMannerSupported; ///< The supported display manner. |
|
} ADLPossibleMapping, *LPADLPossibleMapping; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
/// \brief Structure containing information about the validated display device possible map result. |
|
/// |
|
/// This structure is used to store the validated display device possible map result |
|
/// This information can be returned to the user. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPossibleMapResult |
|
{ |
|
/// The current display map index. It is the OS Desktop index. For example, OS Index 1 showing clone mode. The Display Map will be 1. |
|
int iIndex; |
|
// The bit mask identifies the number of bits PossibleMapResult is currently using. It will be the sum all the bit definitions defined in ADL_DISPLAY_POSSIBLEMAPRESULT_VALID. |
|
int iPossibleMapResultMask; |
|
/// The bit mask identifies the possible map result. The detail definition is defined in ADL_DISPLAY_POSSIBLEMAPRESULT_XXX. |
|
int iPossibleMapResultValue; |
|
} ADLPossibleMapResult, *LPADLPossibleMapResult; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display SLS Grid information. |
|
/// |
|
/// This structure is used to store the display SLS Grid information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSGrid |
|
{ |
|
/// The Adapter index. |
|
int iAdapterIndex; |
|
|
|
/// The grid index. |
|
int iSLSGridIndex; |
|
|
|
/// The grid row. |
|
int iSLSGridRow; |
|
|
|
/// The grid column. |
|
int iSLSGridColumn; |
|
|
|
/// The grid bit mask identifies the number of bits DisplayMap is currently using. Sum of all bits defined in ADL_DISPLAY_SLSGRID_ORIENTATION_XXX |
|
int iSLSGridMask; |
|
|
|
/// The grid bit value identifies the display status. Refer to ADL_DISPLAY_SLSGRID_ORIENTATION_XXX |
|
int iSLSGridValue; |
|
|
|
} ADLSLSGrid, *LPADLSLSGrid; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display SLS Map information. |
|
/// |
|
/// This structure is used to store the display SLS Map information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSMap |
|
{ |
|
/// The Adapter Index |
|
int iAdapterIndex; |
|
|
|
/// The current display map index. It is the OS Desktop index. For example, OS Index 1 showing clone mode. The Display Map will be 1. |
|
int iSLSMapIndex; |
|
|
|
/// Indicate the current grid |
|
ADLSLSGrid grid; |
|
|
|
/// OS surface index |
|
int iSurfaceMapIndex; |
|
|
|
/// Screen orientation. E.g., 0, 90, 180, 270 |
|
int iOrientation; |
|
|
|
/// The number of display targets belongs to this map |
|
int iNumSLSTarget; |
|
|
|
/// The first target array index in the Target array |
|
int iFirstSLSTargetArrayIndex; |
|
|
|
/// The number of native modes belongs to this map |
|
int iNumNativeMode; |
|
|
|
/// The first native mode array index in the native mode array |
|
int iFirstNativeModeArrayIndex; |
|
|
|
/// The number of bezel modes belongs to this map |
|
int iNumBezelMode; |
|
|
|
/// The first bezel mode array index in the native mode array |
|
int iFirstBezelModeArrayIndex; |
|
|
|
/// The number of bezel offsets belongs to this map |
|
int iNumBezelOffset; |
|
|
|
/// The first bezel offset array index in the |
|
int iFirstBezelOffsetArrayIndex; |
|
|
|
/// The bit mask identifies the number of bits DisplayMap is currently using. Sum all the bit definitions defined in ADL_DISPLAY_SLSMAP_XXX. |
|
int iSLSMapMask; |
|
|
|
/// The bit mask identifies the display map status. Refer to ADL_DISPLAY_SLSMAP_XXX |
|
int iSLSMapValue; |
|
|
|
|
|
} ADLSLSMap, *LPADLSLSMap; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display SLS Offset information. |
|
/// |
|
/// This structure is used to store the display SLS Offset information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSOffset |
|
{ |
|
/// The Adapter Index |
|
int iAdapterIndex; |
|
|
|
/// The current display map index. It is the OS Desktop index. For example, OS Index 1 showing clone mode. The Display Map will be 1. |
|
int iSLSMapIndex; |
|
|
|
/// The Display ID. |
|
ADLDisplayID displayID; |
|
|
|
/// SLS Bezel Mode Index |
|
int iBezelModeIndex; |
|
|
|
/// SLS Bezel Offset X |
|
int iBezelOffsetX; |
|
|
|
/// SLS Bezel Offset Y |
|
int iBezelOffsetY; |
|
|
|
/// SLS Display Width |
|
int iDisplayWidth; |
|
|
|
/// SLS Display Height |
|
int iDisplayHeight; |
|
|
|
/// The bit mask identifies the number of bits Offset is currently using. |
|
int iBezelOffsetMask; |
|
|
|
/// The bit mask identifies the display status. |
|
int iBezelffsetValue; |
|
} ADLSLSOffset, *LPADLSLSOffset; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display SLS Mode information. |
|
/// |
|
/// This structure is used to store the display SLS Mode information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSMode |
|
{ |
|
/// The Adapter Index |
|
int iAdapterIndex; |
|
|
|
/// The current display map index. It is the OS Desktop index. For example, OS Index 1 showing clone mode. The Display Map will be 1. |
|
int iSLSMapIndex; |
|
|
|
/// The mode index |
|
int iSLSModeIndex; |
|
|
|
/// The mode for this map. |
|
ADLMode displayMode; |
|
|
|
/// The bit mask identifies the number of bits Mode is currently using. |
|
int iSLSNativeModeMask; |
|
|
|
/// The bit mask identifies the display status. |
|
int iSLSNativeModeValue; |
|
} ADLSLSMode, *LPADLSLSMode; |
|
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the display Possible SLS Map information. |
|
/// |
|
/// This structure is used to store the display Possible SLS Map information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPossibleSLSMap |
|
{ |
|
/// The current display map index. It is the OS Desktop index. |
|
/// For example, OS Index 1 showing clone mode. The Display Map will be 1. |
|
int iSLSMapIndex; |
|
|
|
/// Number of display map to be validated. |
|
int iNumSLSMap; |
|
|
|
/// The display map list for validation |
|
ADLSLSMap* lpSLSMap; |
|
|
|
/// the number of display map config to be validated. |
|
int iNumSLSTarget; |
|
|
|
/// The display target list for validation. |
|
ADLDisplayTarget* lpDisplayTarget; |
|
} ADLPossibleSLSMap, *LPADLPossibleSLSMap; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the SLS targets. |
|
/// |
|
/// This structure is used to store the SLS targets information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSTarget |
|
{ |
|
/// the logic adapter index |
|
int iAdapterIndex; |
|
|
|
/// The SLS map index |
|
int iSLSMapIndex; |
|
|
|
/// The target ID |
|
ADLDisplayTarget displayTarget; |
|
|
|
/// Target postion X in SLS grid |
|
int iSLSGridPositionX; |
|
|
|
/// Target postion Y in SLS grid |
|
int iSLSGridPositionY; |
|
|
|
/// The view size width, height and rotation angle per SLS Target |
|
ADLMode viewSize; |
|
|
|
/// The bit mask identifies the bits in iSLSTargetValue are currently used |
|
int iSLSTargetMask; |
|
|
|
/// The bit mask identifies status info. It is for function extension purpose |
|
int iSLSTargetValue; |
|
|
|
} ADLSLSTarget, *LPADLSLSTarget; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the Adapter offset stepping size. |
|
/// |
|
/// This structure is used to store the Adapter offset stepping size information. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLBezelOffsetSteppingSize |
|
{ |
|
/// the logic adapter index |
|
int iAdapterIndex; |
|
|
|
/// The SLS map index |
|
int iSLSMapIndex; |
|
|
|
/// Bezel X stepping size offset |
|
int iBezelOffsetSteppingSizeX; |
|
|
|
/// Bezel Y stepping size offset |
|
int iBezelOffsetSteppingSizeY; |
|
|
|
/// Identifies the bits this structure is currently using. It will be the total OR of all the bit definitions. |
|
int iBezelOffsetSteppingSizeMask; |
|
|
|
/// Bit mask identifies the display status. |
|
int iBezelOffsetSteppingSizeValue; |
|
|
|
} ADLBezelOffsetSteppingSize, *LPADLBezelOffsetSteppingSize; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about the overlap offset info for all the displays for each SLS mode. |
|
/// |
|
/// This structure is used to store the no. of overlapped modes for each SLS Mode once user finishes the configuration from Overlap Widget |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSLSOverlappedMode |
|
{ |
|
/// the SLS mode for which the overlap is configured |
|
ADLMode SLSMode; |
|
/// the number of target displays in SLS. |
|
int iNumSLSTarget; |
|
/// the first target array index in the target array |
|
int iFirstTargetArrayIndex; |
|
}ADLSLSTargetOverlap, *LPADLSLSTargetOverlap; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about driver supported PowerExpress Config Caps |
|
/// |
|
/// This structure is used to store the driver supported PowerExpress Config Caps |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPXConfigCaps |
|
{ |
|
/// The Persistent logical Adapter Index. |
|
int iAdapterIndex; |
|
|
|
/// The bit mask identifies the number of bits PowerExpress Config Caps is currently using. It is the sum of all the bit definitions defined in ADL_PX_CONFIGCAPS_XXXX /ref define_powerxpress_constants. |
|
int iPXConfigCapMask; |
|
|
|
/// The bit mask identifies the PowerExpress Config Caps value. The detailed definition is in ADL_PX_CONFIGCAPS_XXXX /ref define_powerxpress_constants. |
|
int iPXConfigCapValue; |
|
|
|
} ADLPXConfigCaps, *LPADLPXConfigCaps; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an application |
|
/// |
|
/// This structure is used to store basic information of an application |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLApplicationData |
|
{ |
|
/// Path Name |
|
char strPathName[ADL_MAX_PATH]; |
|
/// File Name |
|
char strFileName[ADL_APP_PROFILE_FILENAME_LENGTH]; |
|
/// Creation timestamp |
|
char strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH]; |
|
/// Version |
|
char strVersion[ADL_APP_PROFILE_VERSION_LENGTH]; |
|
}ADLApplicationData; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an application |
|
/// |
|
/// This structure is used to store basic information of an application |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLApplicationDataX2 |
|
{ |
|
/// Path Name |
|
wchar_t strPathName[ADL_MAX_PATH]; |
|
/// File Name |
|
wchar_t strFileName[ADL_APP_PROFILE_FILENAME_LENGTH]; |
|
/// Creation timestamp |
|
wchar_t strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH]; |
|
/// Version |
|
wchar_t strVersion[ADL_APP_PROFILE_VERSION_LENGTH]; |
|
}ADLApplicationDataX2; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an application |
|
/// |
|
/// This structure is used to store basic information of an application including process id |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLApplicationDataX3 |
|
{ |
|
/// Path Name |
|
wchar_t strPathName[ADL_MAX_PATH]; |
|
/// File Name |
|
wchar_t strFileName[ADL_APP_PROFILE_FILENAME_LENGTH]; |
|
/// Creation timestamp |
|
wchar_t strTimeStamp[ADL_APP_PROFILE_TIMESTAMP_LENGTH]; |
|
/// Version |
|
wchar_t strVersion[ADL_APP_PROFILE_VERSION_LENGTH]; |
|
//Application Process id |
|
unsigned int iProcessId; |
|
}ADLApplicationDataX3; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information of a property of an application profile |
|
/// |
|
/// This structure is used to store property information of an application profile |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _PropertyRecord |
|
{ |
|
/// Property Name |
|
char strName [ADL_APP_PROFILE_PROPERTY_LENGTH]; |
|
/// Property Type |
|
ADLProfilePropertyType eType; |
|
/// Data Size in bytes |
|
int iDataSize; |
|
/// Property Value, can be any data type |
|
unsigned char uData[1]; |
|
}PropertyRecord; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an application profile |
|
/// |
|
/// This structure is used to store information of an application profile |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLApplicationProfile |
|
{ |
|
/// Number of properties |
|
int iCount; |
|
/// Buffer to store all property records |
|
PropertyRecord record[1]; |
|
}ADLApplicationProfile; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an OD5 Power Control feature |
|
/// |
|
/// This structure is used to store information of an Power Control feature |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPowerControlInfo |
|
{ |
|
/// Minimum value. |
|
int iMinValue; |
|
/// Maximum value. |
|
int iMaxValue; |
|
/// The minimum change in between minValue and maxValue. |
|
int iStepValue; |
|
} ADLPowerControlInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an controller mode |
|
/// |
|
/// This structure is used to store information of an controller mode |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLControllerMode |
|
{ |
|
/// This falg indicates actions that will be applied by set viewport |
|
/// The value can be a combination of ADL_CONTROLLERMODE_CM_MODIFIER_VIEW_POSITION, |
|
/// ADL_CONTROLLERMODE_CM_MODIFIER_VIEW_PANLOCK and ADL_CONTROLLERMODE_CM_MODIFIER_VIEW_SIZE |
|
int iModifiers; |
|
|
|
/// Horizontal view starting position |
|
int iViewPositionCx; |
|
|
|
/// Vertical view starting position |
|
int iViewPositionCy; |
|
|
|
/// Horizontal left panlock position |
|
int iViewPanLockLeft; |
|
|
|
/// Horizontal right panlock position |
|
int iViewPanLockRight; |
|
|
|
/// Vertical top panlock position |
|
int iViewPanLockTop; |
|
|
|
/// Vertical bottom panlock position |
|
int iViewPanLockBottom; |
|
|
|
/// View resolution in pixels (width) |
|
int iViewResolutionCx; |
|
|
|
/// View resolution in pixels (hight) |
|
int iViewResolutionCy; |
|
}ADLControllerMode; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about a display |
|
/// |
|
/// This structure is used to store information about a display |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayIdentifier |
|
{ |
|
/// ADL display index |
|
long ulDisplayIndex; |
|
|
|
/// manufacturer ID of the display |
|
long ulManufacturerId; |
|
|
|
/// product ID of the display |
|
long ulProductId; |
|
|
|
/// serial number of the display |
|
long ulSerialNo; |
|
|
|
} ADLDisplayIdentifier; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 clock range |
|
/// |
|
/// This structure is used to store information about Overdrive 6 clock range |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6ParameterRange |
|
{ |
|
/// The starting value of the clock range |
|
int iMin; |
|
/// The ending value of the clock range |
|
int iMax; |
|
/// The minimum increment between clock values |
|
int iStep; |
|
|
|
} ADLOD6ParameterRange; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 capabilities |
|
/// |
|
/// This structure is used to store information about Overdrive 6 capabilities |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6Capabilities |
|
{ |
|
/// Contains a bitmap of the OD6 capability flags. Possible values: \ref ADL_OD6_CAPABILITY_SCLK_CUSTOMIZATION, |
|
/// \ref ADL_OD6_CAPABILITY_MCLK_CUSTOMIZATION, \ref ADL_OD6_CAPABILITY_GPU_ACTIVITY_MONITOR |
|
int iCapabilities; |
|
/// Contains a bitmap indicating the power states |
|
/// supported by OD6. Currently only the performance state |
|
/// is supported. Possible Values: \ref ADL_OD6_SUPPORTEDSTATE_PERFORMANCE |
|
int iSupportedStates; |
|
/// Number of levels. OD6 will always use 2 levels, which describe |
|
/// the minimum to maximum clock ranges. |
|
/// The 1st level indicates the minimum clocks, and the 2nd level |
|
/// indicates the maximum clocks. |
|
int iNumberOfPerformanceLevels; |
|
/// Contains the hard limits of the sclk range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLOD6ParameterRange sEngineClockRange; |
|
/// Contains the hard limits of the mclk range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLOD6ParameterRange sMemoryClockRange; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6Capabilities; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 clock values. |
|
/// |
|
/// This structure is used to store information about Overdrive 6 clock values. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6PerformanceLevel |
|
{ |
|
/// Engine (core) clock. |
|
int iEngineClock; |
|
/// Memory clock. |
|
int iMemoryClock; |
|
|
|
} ADLOD6PerformanceLevel; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 clocks. |
|
/// |
|
/// This structure is used to store information about Overdrive 6 clocks. This is a |
|
/// variable-sized structure. iNumberOfPerformanceLevels indicate how many elements |
|
/// are contained in the aLevels array. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6StateInfo |
|
{ |
|
/// Number of levels. OD6 uses clock ranges instead of discrete performance levels. |
|
/// iNumberOfPerformanceLevels is always 2. The 1st level indicates the minimum clocks |
|
/// in the range. The 2nd level indicates the maximum clocks in the range. |
|
int iNumberOfPerformanceLevels; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
/// Variable-sized array of levels. |
|
/// The number of elements in the array is specified by iNumberofPerformanceLevels. |
|
ADLOD6PerformanceLevel aLevels [1]; |
|
|
|
} ADLOD6StateInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about current Overdrive 6 performance status. |
|
/// |
|
/// This structure is used to store information about current Overdrive 6 performance status. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6CurrentStatus |
|
{ |
|
/// Current engine clock in 10 KHz. |
|
int iEngineClock; |
|
/// Current memory clock in 10 KHz. |
|
int iMemoryClock; |
|
/// Current GPU activity in percent. This |
|
/// indicates how "busy" the GPU is. |
|
int iActivityPercent; |
|
/// Not used. Reserved for future use. |
|
int iCurrentPerformanceLevel; |
|
/// Current PCI-E bus speed |
|
int iCurrentBusSpeed; |
|
/// Current PCI-E bus # of lanes |
|
int iCurrentBusLanes; |
|
/// Maximum possible PCI-E bus # of lanes |
|
int iMaximumBusLanes; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6CurrentStatus; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 thermal contoller capabilities |
|
/// |
|
/// This structure is used to store information about Overdrive 6 thermal controller capabilities |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6ThermalControllerCaps |
|
{ |
|
/// Contains a bitmap of thermal controller capability flags. Possible values: \ref ADL_OD6_TCCAPS_THERMAL_CONTROLLER, \ref ADL_OD6_TCCAPS_FANSPEED_CONTROL, |
|
/// \ref ADL_OD6_TCCAPS_FANSPEED_PERCENT_READ, \ref ADL_OD6_TCCAPS_FANSPEED_PERCENT_WRITE, \ref ADL_OD6_TCCAPS_FANSPEED_RPM_READ, \ref ADL_OD6_TCCAPS_FANSPEED_RPM_WRITE |
|
int iCapabilities; |
|
/// Minimum fan speed expressed as a percentage |
|
int iFanMinPercent; |
|
/// Maximum fan speed expressed as a percentage |
|
int iFanMaxPercent; |
|
/// Minimum fan speed expressed in revolutions-per-minute |
|
int iFanMinRPM; |
|
/// Maximum fan speed expressed in revolutions-per-minute |
|
int iFanMaxRPM; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6ThermalControllerCaps; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 fan speed information |
|
/// |
|
/// This structure is used to store information about Overdrive 6 fan speed information |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6FanSpeedInfo |
|
{ |
|
/// Contains a bitmap of the valid fan speed type flags. Possible values: \ref ADL_OD6_FANSPEED_TYPE_PERCENT, \ref ADL_OD6_FANSPEED_TYPE_RPM, \ref ADL_OD6_FANSPEED_USER_DEFINED |
|
int iSpeedType; |
|
/// Contains current fan speed in percent (if valid flag exists in iSpeedType) |
|
int iFanSpeedPercent; |
|
/// Contains current fan speed in RPM (if valid flag exists in iSpeedType) |
|
int iFanSpeedRPM; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6FanSpeedInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 fan speed value |
|
/// |
|
/// This structure is used to store information about Overdrive 6 fan speed value |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6FanSpeedValue |
|
{ |
|
/// Indicates the units of the fan speed. Possible values: \ref ADL_OD6_FANSPEED_TYPE_PERCENT, \ref ADL_OD6_FANSPEED_TYPE_RPM |
|
int iSpeedType; |
|
/// Fan speed value (units as indicated above) |
|
int iFanSpeed; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6FanSpeedValue; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 PowerControl settings. |
|
/// |
|
/// This structure is used to store information about Overdrive 6 PowerControl settings. |
|
/// PowerControl is the feature which allows the performance characteristics of the GPU |
|
/// to be adjusted by changing the PowerTune power limits. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6PowerControlInfo |
|
{ |
|
/// The minimum PowerControl adjustment value |
|
int iMinValue; |
|
/// The maximum PowerControl adjustment value |
|
int iMaxValue; |
|
/// The minimum difference between PowerControl adjustment values |
|
int iStepValue; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6PowerControlInfo; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 PowerControl settings. |
|
/// |
|
/// This structure is used to store information about Overdrive 6 PowerControl settings. |
|
/// PowerControl is the feature which allows the performance characteristics of the GPU |
|
/// to be adjusted by changing the PowerTune power limits. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6VoltageControlInfo |
|
{ |
|
/// The minimum VoltageControl adjustment value |
|
int iMinValue; |
|
/// The maximum VoltageControl adjustment value |
|
int iMaxValue; |
|
/// The minimum difference between VoltageControl adjustment values |
|
int iStepValue; |
|
|
|
/// Value for future extension |
|
int iExtValue; |
|
/// Mask for future extension |
|
int iExtMask; |
|
|
|
} ADLOD6VoltageControlInfo; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing ECC statistics namely SEC counts and DED counts |
|
/// Single error count - count of errors that can be corrected |
|
/// Doubt Error Detect - count of errors that cannot be corrected |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLECCData |
|
{ |
|
// Single error count - count of errors that can be corrected |
|
int iSec; |
|
// Double error detect - count of errors that cannot be corrected |
|
int iDed; |
|
|
|
} ADLECCData; |
|
|
|
|
|
/// \brief Handle to ADL client context. |
|
/// |
|
/// ADL clients obtain context handle from initial call to \ref ADL2_Main_Control_Create. |
|
/// Clients have to pass the handle to each subsequent ADL call and finally destroy |
|
/// the context with call to \ref ADL2_Main_Control_Destroy |
|
/// \nosubgrouping |
|
typedef void *ADL_CONTEXT_HANDLE; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the display mode definition used per controller. |
|
/// |
|
/// This structure is used to store the display mode definition used per controller. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDisplayModeX2 |
|
{ |
|
/// Horizontal resolution (in pixels). |
|
int iWidth; |
|
/// Vertical resolution (in lines). |
|
int iHeight; |
|
/// Interlaced/Progressive. The value will be set for Interlaced as ADL_DL_TIMINGFLAG_INTERLACED. If not set it is progressive. Refer define_detailed_timing_flags. |
|
int iScanType; |
|
/// Refresh rate. |
|
int iRefreshRate; |
|
/// Timing Standard. Refer define_modetiming_standard. |
|
int iTimingStandard; |
|
} ADLDisplayModeX2; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 extension capabilities |
|
/// |
|
/// This structure is used to store information about Overdrive 6 extension capabilities |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6CapabilitiesEx |
|
{ |
|
/// Contains a bitmap of the OD6 extension capability flags. Possible values: \ref ADL_OD6_CAPABILITY_SCLK_CUSTOMIZATION, |
|
/// \ref ADL_OD6_CAPABILITY_MCLK_CUSTOMIZATION, \ref ADL_OD6_CAPABILITY_GPU_ACTIVITY_MONITOR, |
|
/// \ref ADL_OD6_CAPABILITY_POWER_CONTROL, \ref ADL_OD6_CAPABILITY_VOLTAGE_CONTROL, \ref ADL_OD6_CAPABILITY_PERCENT_ADJUSTMENT, |
|
//// \ref ADL_OD6_CAPABILITY_THERMAL_LIMIT_UNLOCK |
|
int iCapabilities; |
|
/// The Power states that support clock and power customization. Only performance state is currently supported. |
|
/// Possible Values: \ref ADL_OD6_SUPPORTEDSTATE_PERFORMANCE |
|
int iSupportedStates; |
|
/// Returns the hard limits of the SCLK overdrive adjustment range. Overdrive clocks should not be adjusted outside of this range. The values are specified as +/- percentages. |
|
ADLOD6ParameterRange sEngineClockPercent; |
|
/// Returns the hard limits of the MCLK overdrive adjustment range. Overdrive clocks should not be adjusted outside of this range. The values are specified as +/- percentages. |
|
ADLOD6ParameterRange sMemoryClockPercent; |
|
/// Returns the hard limits of the Power Limit adjustment range. Power limit should not be adjusted outside this range. The values are specified as +/- percentages. |
|
ADLOD6ParameterRange sPowerControlPercent; |
|
/// Reserved for future expansion of the structure. |
|
int iExtValue; |
|
/// Reserved for future expansion of the structure. |
|
int iExtMask; |
|
} ADLOD6CapabilitiesEx; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 extension state information |
|
/// |
|
/// This structure is used to store information about Overdrive 6 extension state information |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6StateEx |
|
{ |
|
/// The current engine clock adjustment value, specified as a +/- percent. |
|
int iEngineClockPercent; |
|
/// The current memory clock adjustment value, specified as a +/- percent. |
|
int iMemoryClockPercent; |
|
/// The current power control adjustment value, specified as a +/- percent. |
|
int iPowerControlPercent; |
|
/// Reserved for future expansion of the structure. |
|
int iExtValue; |
|
/// Reserved for future expansion of the structure. |
|
int iExtMask; |
|
} ADLOD6StateEx; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive 6 extension recommended maximum clock adjustment values |
|
/// |
|
/// This structure is used to store information about Overdrive 6 extension recommended maximum clock adjustment values |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLOD6MaxClockAdjust |
|
{ |
|
/// The recommended maximum engine clock adjustment in percent, for the specified power limit value. |
|
int iEngineClockMax; |
|
/// The recommended maximum memory clock adjustment in percent, for the specified power limit value. |
|
/// Currently the memory is independent of the Power Limit setting, so iMemoryClockMax will always return the maximum |
|
/// possible adjustment value. This field is here for future enhancement in case we add a dependency between Memory Clock |
|
/// adjustment and Power Limit setting. |
|
int iMemoryClockMax; |
|
/// Reserved for future expansion of the structure. |
|
int iExtValue; |
|
/// Reserved for future expansion of the structure. |
|
int iExtMask; |
|
} ADLOD6MaxClockAdjust; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the Connector information |
|
/// |
|
/// this structure is used to get the connector information like length, positions & etc. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLConnectorInfo |
|
{ |
|
///index of the connector(0-based) |
|
int iConnectorIndex; |
|
///used for disply identification/ordering |
|
int iConnectorId; |
|
///index of the slot, 0-based index. |
|
int iSlotIndex; |
|
///Type of the connector. \ref define_connector_types |
|
int iType; |
|
///Position of the connector(in millimeters), from the right side of the slot. |
|
int iOffset; |
|
///Length of the connector(in millimeters). |
|
int iLength; |
|
|
|
} ADLConnectorInfo; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing the slot information |
|
/// |
|
/// this structure is used to get the slot information like length of the slot, no of connectors on the slot & etc. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLBracketSlotInfo |
|
{ |
|
///index of the slot, 0-based index. |
|
int iSlotIndex; |
|
///length of the slot(in millimeters). |
|
int iLength; |
|
///width of the slot(in millimeters). |
|
int iWidth; |
|
} ADLBracketSlotInfo; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing MST branch information |
|
/// |
|
/// this structure is used to store the MST branch information |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLMSTRad |
|
{ |
|
///depth of the link. |
|
int iLinkNumber; |
|
/// Relative address, address scheme starts from source side |
|
char rad[ADL_MAX_RAD_LINK_COUNT]; |
|
} ADLMSTRad; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing port information |
|
/// |
|
/// this structure is used to get the display or MST branch information |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLDevicePort |
|
{ |
|
///index of the connector. |
|
int iConnectorIndex; |
|
///Relative MST address. If MST RAD contains 0 it means DP or Root of the MST topology. For non DP connectors MST RAD is ignored. |
|
ADLMSTRad aMSTRad; |
|
} ADLDevicePort; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing supported connection types and properties |
|
/// |
|
/// this structure is used to get the supported connection types and supported properties of given connector |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLSupportedConnections |
|
{ |
|
///Bit vector of supported connections. Bitmask is defined in constants section. \ref define_connection_types |
|
int iSupportedConnections; |
|
///Array of bitvectors. Each bit vector represents supported properties for one connection type. Index of this array is connection type (bit number in mask). |
|
int iSupportedProperties[ADL_MAX_CONNECTION_TYPES]; |
|
} ADLSupportedConnections; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing connection state of the connector |
|
/// |
|
/// this structure is used to get the current Emulation status and mode of the given connector |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLConnectionState |
|
{ |
|
///The value is bit vector. Each bit represents status. See masks constants for details. \ref define_emulation_status |
|
int iEmulationStatus; |
|
///It contains information about current emulation mode. See constants for details. \ref define_emulation_mode |
|
int iEmulationMode; |
|
///If connection is active it will contain display id, otherwise CWDDEDI_INVALID_DISPLAY_INDEX |
|
int iDisplayIndex; |
|
} ADLConnectionState; |
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing connection properties information |
|
/// |
|
/// this structure is used to retrieve the properties of connection type |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLConnectionProperties |
|
{ |
|
//Bit vector. Represents actual properties. Supported properties for specific connection type. \ref define_connection_properties |
|
int iValidProperties; |
|
//Bitrate(in MHz). Could be used for MST branch, DP or DP active dongle. \ref define_linkrate_constants |
|
int iBitrate; |
|
//Number of lanes in DP connection. \ref define_lanecount_constants |
|
int iNumberOfLanes; |
|
//Color depth(in bits). \ref define_colordepth_constants |
|
int iColorDepth; |
|
//3D capabilities. It could be used for some dongles. For instance: alternate framepack. Value of this property is bit vector. |
|
int iStereo3DCaps; |
|
///Output Bandwidth. Could be used for MST branch, DP or DP Active dongle. \ref define_linkrate_constants |
|
int iOutputBandwidth; |
|
} ADLConnectionProperties; |
|
|
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing connection information |
|
/// |
|
/// this structure is used to retrieve the data from driver which includes |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLConnectionData |
|
{ |
|
///Connection type. based on the connection type either iNumberofPorts or IDataSize,EDIDdata is valid, \ref define_connection_types |
|
int iConnectionType; |
|
///Specifies the connection properties. |
|
ADLConnectionProperties aConnectionProperties; |
|
///Number of ports |
|
int iNumberofPorts; |
|
///Number of Active Connections |
|
int iActiveConnections; |
|
///actual size of EDID data block size. |
|
int iDataSize; |
|
///EDID Data |
|
char EdidData[ADL_MAX_DISPLAY_EDID_DATA_SIZE]; |
|
} ADLConnectionData; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about an controller mode including Number of Connectors |
|
/// |
|
/// This structure is used to store information of an controller mode |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLAdapterCapsX2 |
|
{ |
|
/// AdapterID for this adapter |
|
int iAdapterID; |
|
/// Number of controllers for this adapter |
|
int iNumControllers; |
|
/// Number of displays for this adapter |
|
int iNumDisplays; |
|
/// Number of overlays for this adapter |
|
int iNumOverlays; |
|
/// Number of GLSyncConnectors |
|
int iNumOfGLSyncConnectors; |
|
/// The bit mask identifies the adapter caps |
|
int iCapsMask; |
|
/// The bit identifies the adapter caps \ref define_adapter_caps |
|
int iCapsValue; |
|
/// Number of Connectors for this adapter |
|
int iNumConnectors; |
|
}ADLAdapterCapsX2; |
|
|
|
typedef enum _ADL_ERROR_RECORD_SEVERITY |
|
{ |
|
ADL_GLOBALLY_UNCORRECTED = 1, |
|
ADL_LOCALLY_UNCORRECTED = 2, |
|
ADL_DEFFERRED = 3, |
|
ADL_CORRECTED = 4 |
|
}ADL_ERROR_RECORD_SEVERITY; |
|
|
|
typedef union _ADL_ECC_EDC_FLAG |
|
{ |
|
struct |
|
{ |
|
unsigned int isEccAccessing : 1; |
|
unsigned int reserved : 31; |
|
}bits; |
|
unsigned int u32All; |
|
}ADL_ECC_EDC_FLAG; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about EDC Error Record |
|
/// |
|
/// This structure is used to store EDC Error Record |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLErrorRecord |
|
{ |
|
// Severity of error |
|
ADL_ERROR_RECORD_SEVERITY Severity; |
|
|
|
// Is the counter valid? |
|
int countValid; |
|
|
|
// Counter value, if valid |
|
unsigned int count; |
|
|
|
// Is the location information valid? |
|
int locationValid; |
|
|
|
// Physical location of error |
|
unsigned int CU; // CU number on which error occurred, if known |
|
char StructureName[32]; // e.g. LDS, TCC, etc. |
|
|
|
// Time of error record creation (e.g. time of query, or time of poison interrupt) |
|
char tiestamp[32]; |
|
|
|
unsigned int padding[3]; |
|
}ADLErrorRecord; |
|
|
|
typedef enum _ADL_EDC_BLOCK_ID |
|
{ |
|
ADL_EDC_BLOCK_ID_SQCIS = 1, |
|
ADL_EDC_BLOCK_ID_SQCDS = 2, |
|
ADL_EDC_BLOCK_ID_SGPR = 3, |
|
ADL_EDC_BLOCK_ID_VGPR = 4, |
|
ADL_EDC_BLOCK_ID_LDS = 5, |
|
ADL_EDC_BLOCK_ID_GDS = 6, |
|
ADL_EDC_BLOCK_ID_TCL1 = 7, |
|
ADL_EDC_BLOCK_ID_TCL2 = 8 |
|
}ADL_EDC_BLOCK_ID; |
|
|
|
typedef enum _ADL_ERROR_INJECTION_MODE |
|
{ |
|
ADL_ERROR_INJECTION_MODE_SINGLE = 1, |
|
ADL_ERROR_INJECTION_MODE_MULTIPLE = 2, |
|
ADL_ERROR_INJECTION_MODE_ADDRESS = 3 |
|
}ADL_ERROR_INJECTION_MODE; |
|
|
|
typedef union _ADL_ERROR_PATTERN |
|
{ |
|
struct |
|
{ |
|
unsigned long EccInjVector : 16; |
|
unsigned long EccInjEn : 9; |
|
unsigned long EccBeatEn : 4; |
|
unsigned long EccChEn : 4; |
|
unsigned long reserved : 31; |
|
} bits; |
|
unsigned long long u64Value; |
|
} ADL_ERROR_PATTERN; |
|
|
|
typedef struct _ADL_ERROR_INJECTION_DATA |
|
{ |
|
unsigned long long errorAddress; |
|
ADL_ERROR_PATTERN errorPattern; |
|
}ADL_ERROR_INJECTION_DATA; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about EDC Error Injection |
|
/// |
|
/// This structure is used to store EDC Error Injection |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLErrorInjection |
|
{ |
|
ADL_EDC_BLOCK_ID blockId; |
|
ADL_ERROR_INJECTION_MODE errorInjectionMode; |
|
}ADLErrorInjection; |
|
|
|
typedef struct ADLErrorInjectionX2 |
|
{ |
|
ADL_EDC_BLOCK_ID blockId; |
|
ADL_ERROR_INJECTION_MODE errorInjectionMode; |
|
ADL_ERROR_INJECTION_DATA errorInjectionData; |
|
}ADLErrorInjectionX2; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing per display FreeSync capability information. |
|
/// |
|
/// This structure is used to store the FreeSync capability of both the display and |
|
/// the GPU the display is connected to. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLFreeSyncCap |
|
{ |
|
/// FreeSync capability flags. \ref define_freesync_caps |
|
int iCaps; |
|
/// Reports minimum FreeSync refresh rate supported by the display in micro hertz |
|
int iMinRefreshRateInMicroHz; |
|
/// Reports maximum FreeSync refresh rate supported by the display in micro hertz |
|
int iMaxRefreshRateInMicroHz; |
|
/// Reserved |
|
int iReserved[5]; |
|
} ADLFreeSyncCap; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing per display Display Connectivty Experience Settings |
|
/// |
|
/// This structure is used to store the Display Connectivity Experience settings of a |
|
/// display |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLDceSettings |
|
{ |
|
DceSettingsType type; // Defines which structure is in the union below |
|
union |
|
{ |
|
struct |
|
{ |
|
bool qualityDetectionEnabled; |
|
} HdmiLq; |
|
struct |
|
{ |
|
DpLinkRate linkRate; // Read-only |
|
unsigned int numberOfActiveLanes; // Read-only |
|
unsigned int numberofTotalLanes; // Read-only |
|
int relativePreEmphasis; // Allowable values are -2 to +2 |
|
int relativeVoltageSwing; // Allowable values are -2 to +2 |
|
int persistFlag; |
|
} DpLink; |
|
struct |
|
{ |
|
bool linkProtectionEnabled; // Read-only |
|
} Protection; |
|
} Settings; |
|
int iReserved[15]; |
|
} ADLDceSettings; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Graphic Core |
|
/// |
|
/// This structure is used to get Graphic Core Info |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLGraphicCoreInfo |
|
{ |
|
/// indicate the graphic core generation |
|
int iGCGen; |
|
|
|
/// Total number of CUs. Valid for GCN (iGCGen == GCN) |
|
int iNumCUs; |
|
|
|
/// Number of processing elements per CU. Valid for GCN (iGCGen == GCN) |
|
int iNumPEsPerCU; |
|
|
|
/// Total number of SIMDs. Valid for Pre GCN (iGCGen == Pre-GCN) |
|
int iNumSIMDs; |
|
|
|
/// Total number of ROPs. Valid for both GCN and Pre GCN |
|
int iNumROPs; |
|
|
|
/// reserved for future use |
|
int iReserved[11]; |
|
}ADLGraphicCoreInfo; |
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive N clock range |
|
/// |
|
/// This structure is used to store information about Overdrive N clock range |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLODNParameterRange |
|
{ |
|
/// The starting value of the clock range |
|
int iMode; |
|
/// The starting value of the clock range |
|
int iMin; |
|
/// The ending value of the clock range |
|
int iMax; |
|
/// The minimum increment between clock values |
|
int iStep; |
|
/// The default clock values |
|
int iDefault; |
|
|
|
} ADLODNParameterRange; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive N capabilities |
|
/// |
|
/// This structure is used to store information about Overdrive N capabilities |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct _ADLODNCapabilities |
|
{ |
|
/// Number of levels which describe the minimum to maximum clock ranges. |
|
/// The 1st level indicates the minimum clocks, and the 2nd level |
|
/// indicates the maximum clocks. |
|
int iMaximumNumberOfPerformanceLevels; |
|
/// Contains the hard limits of the sclk range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange sEngineClockRange; |
|
/// Contains the hard limits of the mclk range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange sMemoryClockRange; |
|
/// Contains the hard limits of the vddc range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange svddcRange; |
|
/// Contains the hard limits of the power range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange power; |
|
/// Contains the hard limits of the power range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange powerTuneTemperature; |
|
/// Contains the hard limits of the Temperature range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange fanTemperature; |
|
/// Contains the hard limits of the Fan range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange fanSpeed; |
|
/// Contains the hard limits of the Fan range. Overdrive |
|
/// clocks cannot be set outside this range. |
|
ADLODNParameterRange minimumPerformanceClock; |
|
} ADLODNCapabilities; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive level. |
|
/// |
|
/// This structure is used to store information about Overdrive level. |
|
/// This structure is used by ADLODPerformanceLevels. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODNPerformanceLevel |
|
{ |
|
/// clock. |
|
int iClock; |
|
/// VDCC. |
|
int iVddc; |
|
/// enabled |
|
int iEnabled; |
|
} ADLODNPerformanceLevel; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive N performance levels. |
|
/// |
|
/// This structure is used to store information about Overdrive performance levels. |
|
/// This structure is used by the ADL_OverdriveN_ODPerformanceLevels_Get() and ADL_OverdriveN_ODPerformanceLevels_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODNPerformanceLevels |
|
{ |
|
int iSize; |
|
//Automatic/manual |
|
int iMode; |
|
/// Must be set to sizeof( \ref ADLODPerformanceLevels ) + sizeof( \ref ADLODPerformanceLevel ) * (ADLODParameters.iNumberOfPerformanceLevels - 1) |
|
int iNumberOfPerformanceLevels; |
|
/// Array of performance state descriptors. Must have ADLODParameters.iNumberOfPerformanceLevels elements. |
|
ADLODNPerformanceLevel aLevels[1]; |
|
} ADLODNPerformanceLevels; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive N Fan Speed. |
|
/// |
|
/// This structure is used to store information about Overdrive Fan control . |
|
/// This structure is used by the ADL_OverdriveN_ODPerformanceLevels_Get() and ADL_OverdriveN_ODPerformanceLevels_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODNFanControl |
|
{ |
|
int iMode; |
|
int iFanControlMode; |
|
int iCurrentFanSpeedMode; |
|
int iCurrentFanSpeed; |
|
int iTargetFanSpeed; |
|
int iTargetTemperature; |
|
int iMinPerformanceClock; |
|
int iMinFanLimit; |
|
} ADLODNFanControl; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about Overdrive N power limit. |
|
/// |
|
/// This structure is used to store information about Overdrive power limit. |
|
/// This structure is used by the ADL_OverdriveN_ODPerformanceLevels_Get() and ADL_OverdriveN_ODPerformanceLevels_Set() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLODNPowerLimitSetting |
|
{ |
|
int iMode; |
|
int iTDPLimit; |
|
int iMaxOperatingTemperature; |
|
} ADLODNPowerLimitSetting; |
|
|
|
typedef struct ADLODNPerformanceStatus |
|
{ |
|
int iCoreClock; |
|
int iMemoryClock; |
|
int iDCEFClock; |
|
int iGFXClock; |
|
int iUVDClock; |
|
int iVCEClock; |
|
int iGPUActivityPercent; |
|
int iCurrentCorePerformanceLevel; |
|
int iCurrentMemoryPerformanceLevel; |
|
int iCurrentDCEFPerformanceLevel; |
|
int iCurrentGFXPerformanceLevel; |
|
int iUVDPerformanceLevel; |
|
int iVCEPerformanceLevel; |
|
int iCurrentBusSpeed; |
|
int iCurrentBusLanes; |
|
int iMaximumBusLanes; |
|
int iVDDC; |
|
int iVDDCI; |
|
} ADLODNPerformanceStatus; |
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////// |
|
///\brief Structure containing information about PPLog settings. |
|
/// |
|
/// This structure is used to store information about PPLog settings. |
|
/// This structure is used by the ADL2_PPLogSettings_Set() and ADL2_PPLogSettings_Get() functions. |
|
/// \nosubgrouping |
|
//////////////////////////////////////////////////////////////////////////////////////////// |
|
typedef struct ADLPPLogSettings |
|
{ |
|
int BreakOnAssert; |
|
int BreakOnWarn; |
|
int LogEnabled; |
|
int LogFieldMask; |
|
int LogDestinations; |
|
int LogSeverityEnabled; |
|
int LogSourceMask; |
|
int PowerProfilingEnabled; |
|
int PowerProfilingTimeInterval; |
|
}ADLPPLogSettings; |
|
|
|
#endif /* ADL_STRUCTURES_H_ */ |
|
|
|
|