Giter Site home page Giter Site logo

display-library's People

Contributors

adam-sawicki-a avatar amdmarco avatar ericjunwei avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

display-library's Issues

Installation Instructions

Hello,

I am trying to install ADL on my Ubuntu 16.04 system so that I may utilize this SDK however I cannot find any binaries or other installation tools. The Public-Documents makes a vague reference on page 4 that: "ADL binaries are delivered as part of the Catalyst display Driver," however provides no links and I can't seem to find anything relevant through AMD's official release channels here: https://developer.amd.com/tools-and-sdks/

I've also installed the latest 18.20 Drivers for linux cards and while my graphics card works fine, a full system search for the binaries (Libatiadlxx.so) turns up empty.

My issue is: I cannot use this SDK because I cannot install ADL. How should I install ADL on my Ubuntu16.04 system? If anyone has the libatiadlxx.so binary I'd be grateful for it!

When I try to run adlutil I get this error:

$ ./adlutil get
ADL Library not found!
ERROR: ADL Initialization error!
Press Enter to continue...

Can this library be redistributed/packaged?

I need to include this headers for a program I'm packaging for a distribution, but it is not clear if the headers provided here can be redistributed, that is, as a development package.

Asking this because in Section 3 of the EULA it says that one can, use and reproduce copies, modify and create derivative works, etc.

But in Section 5. it says that:

you may not:.. publish the SDK or Documentation for others to use or copy; or rent, lease or lend the SDK or Documentation or transfer the SDK or Documentation to any third party.

Also at the end it says:

Libraries and header files (may be built into your software and distributed only as object code):

So, it is not clear if the headers can be redistributed as package or not.

Clarification of ADLPMLogData

I am trying to obtain data on power consumption and could not find some information in the documentation on the fields of ADLPMLogData:

What unit is ulLastUpdated using? Are this milliseconds or something else like ticks from QueryPerformanceCounter?

What units are the values of ADL_PMLOG_ASIC_POWER, ADL_PMLOG_CPU_POWER, ADL_PMLOG_GFX_VOLTAGE, ADL_PMLOG_GFX_CURRENT, ADL_PMLOG_GFX_POWER, ADL_PMLOG_SOC_VOLTAGE, ADL_PMLOG_SOC_CURRENT, ADL_PMLOG_SOC_POWER? My assumption is that *_POWER is in Watts, because I got "17", which seems to be reasonable for an idle device. Unfortunately, I did not yet find a device reporting voltage and/or current.

And finally: when is ADLPMLogData written (for the first time)? There seems to be no synchronisation primitive to prevent partial reads. The sample seems to rely on the values being first written once ADL2_Adapter_PMLog_Start returns. Is this a safe assumption?

Thanks,
Christoph

ADL2_OverdriveN_SystemClocksX2_Set Failed

Hi,

I'm trying to set the clock for every powerlevel to the same value as the powerlevel 7. But
the sample OverdriveN give's always an error, for example

OverdriveN g 6 1 160000 -> ADL2_OverdriveN_SystemClocks_Set is failed

but the output of OverdriveN says that the Clock is editable ?

Can everyone help me?


ADL2_OverdriveN_SystemClocksX2_Get Data

Number of Levels : 8
Clocks: Minimum Range : 85200, Maximum Range : 198000, Step value: 500
Voltage: Minimum Range : 800, Maximum Range : 1250, Step value: 1
odPerformanceLevels->aLevels[0].Clock Value : 85200
odPerformanceLevels->aLevels[0].Clock Editable : 0
odPerformanceLevels->aLevels[0].VDDC Value : 800
odPerformanceLevels->aLevels[0].VDDC Editable : 0
odPerformanceLevels->aLevels[0].DPM State Value : 1
odPerformanceLevels->aLevels[0].DPM State Editable : 1

odPerformanceLevels->aLevels[1].Clock Value : 99100
odPerformanceLevels->aLevels[1].Clock Editable : 1
odPerformanceLevels->aLevels[1].VDDC Value : 900
odPerformanceLevels->aLevels[1].VDDC Editable : 1
odPerformanceLevels->aLevels[1].DPM State Value : 1
odPerformanceLevels->aLevels[1].DPM State Editable : 1

odPerformanceLevels->aLevels[2].Clock Value : 113800
odPerformanceLevels->aLevels[2].Clock Editable : 1
odPerformanceLevels->aLevels[2].VDDC Value : 950
odPerformanceLevels->aLevels[2].VDDC Editable : 1
odPerformanceLevels->aLevels[2].DPM State Value : 1
odPerformanceLevels->aLevels[2].DPM State Editable : 1

odPerformanceLevels->aLevels[3].Clock Value : 126900
odPerformanceLevels->aLevels[3].Clock Editable : 1
odPerformanceLevels->aLevels[3].VDDC Value : 1000
odPerformanceLevels->aLevels[3].VDDC Editable : 1
odPerformanceLevels->aLevels[3].DPM State Value : 1
odPerformanceLevels->aLevels[3].DPM State Editable : 1

odPerformanceLevels->aLevels[4].Clock Value : 134800
odPerformanceLevels->aLevels[4].Clock Editable : 1
odPerformanceLevels->aLevels[4].VDDC Value : 1050
odPerformanceLevels->aLevels[4].VDDC Editable : 1
odPerformanceLevels->aLevels[4].DPM State Value : 1
odPerformanceLevels->aLevels[4].DPM State Editable : 1

odPerformanceLevels->aLevels[5].Clock Value : 144000
odPerformanceLevels->aLevels[5].Clock Editable : 1
odPerformanceLevels->aLevels[5].VDDC Value : 1100
odPerformanceLevels->aLevels[5].VDDC Editable : 1
odPerformanceLevels->aLevels[5].DPM State Value : 1
odPerformanceLevels->aLevels[5].DPM State Editable : 1

odPerformanceLevels->aLevels[6].Clock Value : 152800
odPerformanceLevels->aLevels[6].Clock Editable : 1
odPerformanceLevels->aLevels[6].VDDC Value : 1150
odPerformanceLevels->aLevels[6].VDDC Editable : 1
odPerformanceLevels->aLevels[6].DPM State Value : 1
odPerformanceLevels->aLevels[6].DPM State Editable : 1

odPerformanceLevels->aLevels[7].Clock Value : 160000
odPerformanceLevels->aLevels[7].Clock Editable : 1
odPerformanceLevels->aLevels[7].VDDC Value : 1200
odPerformanceLevels->aLevels[7].VDDC Editable : 1
odPerformanceLevels->aLevels[7].DPM State Value : 1
odPerformanceLevels->aLevels[7].DPM State Editable : 1

Please update

ADL2_OverdriveN_Capabilities_Get does not work. That's just one of the buggy things with this repository.

I have seen references to:

ADL2_OverdriveN_CapabilitiesX2_Get, etc. but this method is not in this library.

Unable to set core and memory clock

I have AMD Radeon(TM) R7 M360 GPU. I am not able to set GPU clock. Also setting value in MSI Afterburner and clocking on apply value get reset

Ubuntu Suport

why ADL is not supported in the amdgpu-pro driver?

Get ADL_PMLOG_THROTTLER_STATUS (and other throttling sensors)

I am trying to obtain the throttling state of several AMD GPUs (6900 XT, 7900 XT and 7900 XTX). My understanding is that I request ADL_PMLOG_THROTTLER_STATUS in ADLPMLogStartInput::usSensors like for the power readings. Furthermore, I assume that for ADL_PMLOG_THROTTLER_STATUS, I would cast the respective ADLPMLogData::ulValues to ADL_THROTTLE_NOTIFICATION and if the card is throttled, the respective bit would be set.

Is that the correct way to do this?

If so, does ADL_PMLOG_THROTTLER_STATUS report the current status or does the "notification" imply that it only reports changes. In any case, I have the problem that my card (actually all of them, and I have a few) is never throttled even if reducing the current limit and running stuff like Cyberpunk for a prolonged time. Given that other tools like hwinfo show 100% for the current limit in this case, I believe the card is actually throttled and should report his.

Speaking of hwinfo, I was unable to find out which APIs would enable me to retrieve the individual limits. Specifically, none of ADL_PMLOG_THROTTLER_TEMP_EDGE_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_GCD_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_HOTSPOT_MCD_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_MEM_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_GFX_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_MEM0_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_MEM1_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_VR_SOC_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_LIQUID0_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_LIQUID1_PERCENTAGE, ADL_PMLOG_THROTTLER_TEMP_PLX_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_GFX_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_SOC_PERCENTAGE, ADL_PMLOG_THROTTLER_TDC_USR_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT0_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT1_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT2_PERCENTAGE, ADL_PMLOG_THROTTLER_PPT3_PERCENTAGE, ADL_PMLOG_THROTTLER_FIT_PERCENTAGE, ADL_PMLOG_THROTTLER_GFX_APCC_PLUS_PERCENTAGE seem to be supported on any of my card. The workaround of retrieving the configured limits via ADL2_OverdriveN_CapabilitiesX2_Get and computing the state from the actual power and temperature readings failed, because the function returns ADL_OK, but does not write anything (the debug version still shows uninitialised memory once the function returned successfully.

Long story short: how can I find out whether one of the reasonably new cards are throttled at a given point in time?

ADL2_RegisterEvent() Documentation

ADL2_RegisterEvent() does not describe what events IDs are available or how to use them.

I'm assuming its the ADL_DRIVER_EVENT_TYPE enumeration but there's no documentation for these enumerations available.

Ultimately this function is not usable without improved documentation.

ADL2_Adapter_Primary_Set not work

My laptop has installed with an integrated and discrete graphics cards. I want to be able to dynamically switch the graphic card in my application by command ADL2_Adapter_Primary_Set, however it failed.

Adapter[0]
        Adapter Index: 0
        UDID: PCI_VEN_1002&DEV_6611&SUBSYS_3376103C&REV_87_4&BA1671C&0&0008A
        Location: PCI bus 1, device 0, function 0
        VendorID: 03ea
        Adapter Name: AMD Radeon R7 200 Series
        Display Name: \\.\DISPLAY1
        Present: yes
        Exist: yes
        Driver Path \Registry\Machine\System\CurrentControlSet\Control\Video\{578194D0-212C-11EB-89EA-806E6F6E6963}\0000
        Driver Path X: {4d36e968-e325-11ce-bfc1-08002be10318}\0000
        PNP String: PCI\VEN_1002&DEV_6611&SUBSYS_3376103C&REV_87\4&BA1671C&0&0008
        OS Display Index: 0
        Primary: no
        Active: no
        Versions
                CrimsonVersion: 20.11.2
                CatalystVersion:
                CatalystWebLink: http://support.amd.com/drivers/xml/driver_09_us.xml
                DriverVersion: 20.45.01.18-201113a-361132C-RadeonSoftwareAdrenalin2020
        BIOS
                Part#: 113-TIC44369-001
                Version: 015.049.000.018
                Date: 2019/04/11 06:44
        Display Modes
                640x480
        Aspects: Radeon3D;DisplaysColour2,DisplaysColour;DisplaysManager;DisplaysOptions;DeviceCRT2;DeviceLCD2;DeviceDFP2;MMVideo;Overdrive5.Desktop

Adapter[4]
        Adapter Index: 4
        UDID: PCI_VEN_8086&DEV_9BC8&SUBSYS_877E103C&REV_03_3&11583659&2&10A
        Location: PCI bus 0, device 2, function 0
        VendorID: 1f96
        Adapter Name: Intel(R) UHD Graphics 630
        Display Name: \\.\DISPLAY5
        Present: yes
        Exist: yes
        Driver Path \Registry\Machine\System\CurrentControlSet\Control\Video\{7ED7FA77-212C-11EB-89EB-5CBAEFF03DAE}\0000
        Driver Path X: {4d36e968-e325-11ce-bfc1-08002be10318}\0001
        PNP String: PCI\VEN_8086&DEV_9BC8&SUBSYS_877E103C&REV_03\3&11583659&2&10
        OS Display Index: 4
        Primary: yes
        Active: yes
        Versions
                CrimsonVersion: 20.11.2
                CatalystVersion:
                CatalystWebLink: http://support.amd.com/drivers/xml/driver_09_us.xml
                DriverVersion: 20.45.01.18-201113a-361132C-RadeonSoftwareAdrenalin2020
        Display Modes
                1920x1080

What I did

As the above info shown, the current primary active adapter is Intel(R) UHD Graphics 630(Adapter[4]), I want to switch to AMD graphics card(i.e. set Adapter[0] to become primary active) by:

int primaryBeforeSet = -1, primaryAfterSet = -1, primary = 0;
auto ret = ADL2_Adapter_Primary_Get(context, &primaryBeforeSet); // primaryBeforeSet will be 4
ADL2_Adapter_Primary_Set(context, primary); // change primary adatper index to 0
ret = ADL2_Flush_Driver_Data(context, primaryBeforeSet); // ret will be -1
ADL2_Adapter_Primary_Get(context, &primaryAfterSet); // primaryAfterSet will be 4 instead of 0

What did I expect to happen?

I want Adapter[0] to become the primary active adapter(i.e. switch to AMD graphics card).

What happened instead?

ADL2_Adapter_Primary_Set not work(because call ADL2_Adapter_Primary_Get later will always get the forth adapter, i.e. Adapter[4]) and ADL2_Flush_Driver_Data will get a ADL_ERR return code.

Is that the right way to switch the graphics cards? Any help will be much appreciated.

Radeon VII: temperature and fan state not supported

With a Radeon VII GPU both :

ADL2_OverdriveN_Temperature_Get(...)

and

ADL2_OverdriveN_FanControl_Get(...)

return errorcode -8

Tested with Windows Adrenalin driver version 19.2.2.

All other Vega and Polaris based GPUs work fine.

driver 23.2.1 issues and ADL support for 7000 serie sketchy...

Hello,

I noticed a few bugs:

  • starting 23.2.1 for all Overdrive8 cards (5000/6000/7000), it isn't possible to get the max power value. (this one comes as not visible. It was working fine up to last 22.11.2 driver.

  • For the 7000 serie (tested on 7900xt), pmlog table does not report power usage: ADL_PMLOG_ASIC_POWER, but digging a bit more into it power usage is reported at index 73 (considering ADL_PMLOG_ASIC_POWER is 23, I guess it is a typo :D )

Furthurmore pmlog program also detects for the 7900 some other indexes above those in ADL_PMLOG_SENSORS which are reported as unknown

Best regards

Function typedefs are not in public headers

Is there any good reason to not provide function signature typedefs inside public headers and have them scattered around examples?

typedef int(*ADL2_MAIN_CONTROL_CREATE)(ADL_MAIN_MALLOC_CALLBACK, int, ADL_CONTEXT_HANDLE*);
typedef int(*ADL2_MAIN_CONTROL_DESTROY)(ADL_CONTEXT_HANDLE);
typedef int(*ADL2_ADAPTER_NUMBEROFADAPTERS_GET)(ADL_CONTEXT_HANDLE, int*);
typedef int(*ADL2_ADAPTER_PRIMARY_GET)(ADL_CONTEXT_HANDLE, int* lpPrimaryAdapterIndex);
typedef int(*ADL2_ADAPTER_ADAPTERINFO_GET)(ADL_CONTEXT_HANDLE, LPAdapterInfo lpInfo, int iInputSize);
typedef int(*ADL2_ADAPTER_ACTIVE_GET) (ADL_CONTEXT_HANDLE, int, int*);
typedef int(*ADL2_DISPLAY_DISPLAYINFO_GET) (ADL_CONTEXT_HANDLE context, int iAdapterIndex, int* lpNumDisplays, ADLDisplayInfo ** lppInfo, int iForceDetect);
//Virtual Resolution ADL2 calls
typedef int(*ADL2_DISPLAY_PROPERTY_GET) (ADL_CONTEXT_HANDLE context, int iAdapterIndex, int iDisplayIndex, ADLDisplayProperty * lpDisplayProperty);
typedef int(*ADL2_DISPLAY_PROPERTY_SET) (ADL_CONTEXT_HANDLE context, int iAdapterIndex, int iDisplayIndex, ADLDisplayProperty * lpDisplayProperty);
typedef int(*ADL2_ADAPTER_MEMORYINFO3_GET) (ADL_CONTEXT_HANDLE context, int iAdapterIndex, ADLMemoryInfo3 *);

// Definitions of the used function pointers. Add more if you use other ADL APIs
typedef int ( *ADL_MAIN_CONTROL_CREATE )(ADL_MAIN_MALLOC_CALLBACK, int );
typedef int ( *ADL_MAIN_CONTROL_DESTROY )();
typedef int ( *ADL_ADAPTER_NUMBEROFADAPTERS_GET ) ( int* );
typedef int ( *ADL_ADAPTER_ADAPTERINFO_GET ) ( LPAdapterInfo, int );
typedef int ( *ADL_ADAPTER_ACTIVE_GET ) ( int, int* );
typedef int ( *ADL_OVERDRIVE_CAPS ) (int iAdapterIndex, int *iSupported, int *iEnabled, int *iVersion);
typedef int ( *ADL_OVERDRIVE5_THERMALDEVICES_ENUM ) (int iAdapterIndex, int iThermalControllerIndex, ADLThermalControllerInfo *lpThermalControllerInfo);
typedef int ( *ADL_OVERDRIVE5_ODPARAMETERS_GET ) ( int iAdapterIndex, ADLODParameters * lpOdParameters );
typedef int ( *ADL_OVERDRIVE5_TEMPERATURE_GET ) (int iAdapterIndex, int iThermalControllerIndex, ADLTemperature *lpTemperature);
typedef int ( *ADL_OVERDRIVE5_FANSPEED_GET ) (int iAdapterIndex, int iThermalControllerIndex, ADLFanSpeedValue *lpFanSpeedValue);
typedef int ( *ADL_OVERDRIVE5_FANSPEEDINFO_GET ) (int iAdapterIndex, int iThermalControllerIndex, ADLFanSpeedInfo *lpFanSpeedInfo);
typedef int ( *ADL_OVERDRIVE5_ODPERFORMANCELEVELS_GET ) (int iAdapterIndex, int iDefault, ADLODPerformanceLevels *lpOdPerformanceLevels);
typedef int ( *ADL_OVERDRIVE5_ODPARAMETERS_GET ) (int iAdapterIndex, ADLODParameters *lpOdParameters);
typedef int ( *ADL_OVERDRIVE5_CURRENTACTIVITY_GET ) (int iAdapterIndex, ADLPMActivity *lpActivity);
typedef int ( *ADL_OVERDRIVE5_FANSPEED_SET )(int iAdapterIndex, int iThermalControllerIndex, ADLFanSpeedValue *lpFanSpeedValue);
typedef int ( *ADL_OVERDRIVE5_ODPERFORMANCELEVELS_SET ) (int iAdapterIndex, ADLODPerformanceLevels *lpOdPerformanceLevels);
typedef int ( *ADL_OVERDRIVE5_POWERCONTROL_CAPS )(int iAdapterIndex, int *lpSupported);
typedef int ( *ADL_OVERDRIVE5_POWERCONTROLINFO_GET )(int iAdapterIndex, ADLPowerControlInfo *lpPowerControlInfo);
typedef int ( *ADL_OVERDRIVE5_POWERCONTROL_GET )(int iAdapterIndex, int *lpCurrentValue, int *lpDefaultValue);
typedef int ( *ADL_OVERDRIVE5_POWERCONTROL_SET )(int iAdapterIndex, int iValue);
typedef int ( *ADL_OVERDRIVE6_FANSPEED_GET )(int iAdapterIndex, ADLOD6FanSpeedInfo *lpFanSpeedInfo);
typedef int ( *ADL_OVERDRIVE6_THERMALCONTROLLER_CAPS )(int iAdapterIndex, ADLOD6ThermalControllerCaps *lpThermalControllerCaps);
typedef int ( *ADL_OVERDRIVE6_TEMPERATURE_GET )(int iAdapterIndex, int *lpTemperature);
typedef int ( *ADL_OVERDRIVE6_CAPABILITIES_GET ) (int iAdapterIndex, ADLOD6Capabilities *lpODCapabilities);
typedef int ( *ADL_OVERDRIVE6_STATEINFO_GET )(int iAdapterIndex, int iStateType, ADLOD6StateInfo *lpStateInfo);
typedef int ( *ADL_OVERDRIVE6_CURRENTSTATUS_GET )(int iAdapterIndex, ADLOD6CurrentStatus *lpCurrentStatus);
typedef int ( *ADL_OVERDRIVE6_POWERCONTROL_CAPS ) (int iAdapterIndex, int *lpSupported);
typedef int ( *ADL_OVERDRIVE6_POWERCONTROLINFO_GET )(int iAdapterIndex, ADLOD6PowerControlInfo *lpPowerControlInfo);
typedef int ( *ADL_OVERDRIVE6_POWERCONTROL_GET )(int iAdapterIndex, int *lpCurrentValue, int *lpDefaultValue);
typedef int ( *ADL_OVERDRIVE6_FANSPEED_SET )(int iAdapterIndex, ADLOD6FanSpeedValue *lpFanSpeedValue);
typedef int ( *ADL_OVERDRIVE6_STATE_SET )(int iAdapterIndex, int iStateType, ADLOD6StateInfo *lpStateInfo);
typedef int ( *ADL_OVERDRIVE6_POWERCONTROL_SET )(int iAdapterIndex, int iValue);

It seem it would be better for usability to put all typedefs inside adl_sdk.h with ADL_MAIN_MALLOC_CALLBACK:

typedef void* ( __stdcall *ADL_MAIN_MALLOC_CALLBACK )( int );

Some questions about OverDrive.

I use AMD Radeon RX 580 GPU on Win10 64bit, and I call ADL2_Overdrive_Caps() and the iVersion result is 7.
I hope to know:

  • what overdrive version api should I use?
  • where can I find the correspondence between GPU and OD version? Is it related to GPU driver or only GPU related๏ผŸ

Error in setting core and memory clock

I have AMD Radeon(TM) R7 M360 with driver version 21.3.1. I am not able to set core and memory clock .The function ADL_Overdrive6_State_Set return -8 i.e ADL_ERR_NOT_SUPPORTED. What should i do?

port of the SDK to Python

I am in the process of porting this SDK to Python. Well I have actually ported everything that is in the SDK. It is however missing the functions, function parameters with their type and also the return types.

I am trying to collect information from anyone who has used this SDK. There have been issues reported of incorrect documentation regarding the shared library functions. And since this SDK is not complete and does not include the functions/paramaters/returned values I am going to have to map these things out for my Python port.

Anyone that has come across one (or more) of these inconsistencies, and you have spent the time to locate the proper use of the function and would like to help by sharing the correct use that would be awesome. and the help would be greatly appreciated.

I am thinking that corrections to the documentation and also adding the functions to the SDK at the same time would be a smart thing to do.

I am going to make a branch on my fork for this task and anyone that wants to help is more then welcome to. Once the docs and functions have been added I will do a single PR for the additions.. The only thing I do ask is that I get a PR for each function added. This is going to make it easier if something is not working correctly to be able to remove it if necessary.

here is a link to the branch if you would like to help.
https://github.com/kdschlosser/display-library/tree/adding_functions

New function needed to return the GPU memory width in bits

Both I and a friend have been unable to find a was to read the GPU memory width in bits and suspect that doing this is currently not possible.

Given that NVidia have NvAPI_GPU_GetFBWidthAndLocation() and Intel have zesMemoryGetProperties() to read the memory bus width I feel that ADL should have a way to return this information, please can one be added.

Windows 11 , Overdrive8 doesnt allow voltage or freqs to change.

When running under windows 11 , when you set a voltage it says success but the value reported does not change. Windows 11 X64. Running sample with params of "c 6 0 1400" both cmd prompt with out admin and with no admin same effect. GPU 5700XT 8GB in custom mode in Radeon software - Freqs/Voltage of 800, 1189,1578 / 700 , 749 , 809

copy of what it reports.


Adapter Index[0]

OD8_GFXCLK_FREQ3:OD8_GFXCLK_FREQ3:ADL2_Overdrive8_Setting_Set is Success

****** Driver Values: After Apply ******

Adapter Index[0]

itemID:OD8_GFXCLK_FREQ1: is Visible
actualValue:800
OD8_GFXCLK_FREQ1:maxValue:2150
minValue:800
defaultValue:800

itemID:OD8_GFXCLK_FREQ2: is Visible
actualValue:1189
OD8_GFXCLK_FREQ2:maxValue:2150
minValue:800
defaultValue:1414

itemID:OD8_GFXCLK_FREQ3: is Visible
actualValue:1578 <---- this should be what is requested. ie 1400
OD8_GFXCLK_FREQ3:maxValue:2150
minValue:800
defaultValue:2029

itemID:OD8_GFXCLK_FMIN: is Visible
actualValue:800
OD8_GFXCLK_FMIN:maxValue:2150
minValue:800
defaultValue:800

itemID:OD8_GFXCLK_FMAX: is Visible
actualValue:1578
OD8_GFXCLK_FMAX:maxValue:2150
minValue:800
defaultValue:2029

ADLSensorType: PMLOG_CLK_GFXCLK
PMLOG_CLK_GFXCLK.supported:1
PMLOG_CLK_GFXCLK.value:1242

ADLSensorType: PMLOG_INFO_ACTIVITY_GFX-GPU activity percentage value
PMLOG_INFO_ACTIVITY_GFX.supported:1
PMLOG_INFO_ACTIVITY_GFX.value:99

No function to get ADLGraphicCoreInfo struct data

I've looked into all APIs modules but was not able to find any call that would populate the information of the struct ADLGraphicCoreInfo.

Is there any additional documentation that lists any other functions not listed here? Perhaps a NDA version like NVAPI.

Problem on AMD Radeon RX 7900, Driver is Adrenalin 23.12.1

image

When the Sample(Overdrive8) ran to the ADL2_Overdrive8_Init_SettingX2_Get step in the GetOD8InitSetting function, an exception occurred and there was an address error.
I observed that this error only appeared recently, Is it caused by the recent update of the driver? The environment is AMD Radeon RX 7900 XTX graphics card, the driver version is Adrenalin 23.12.1.
Thanks for your help.

Structure definitions are missing


int ADL2_ApplicationProfiles_PropertyType_Getย (ADL_CONTEXT_HANDLEย context, const wchar_t *DriverArea, const wchar_t *PropertyName,ย DATATYPESย *outType)
int ADL_ApplicationProfiles_DriverAreaPrivacy_Getย (const wchar_t *DriverArea,ย PRIVACYTYPESย *outDriverAreaPrivacy)
int ADL_ApplicationProfiles_GetCustomizationย (ADL_AP_DATABASEย Databaseln,ย CUSTOMISATIONSย *pCustomizationOut)

PRIVACYTYPESย , CUSTOMISATIONS, DATATYPESย have no definition in any of the include files, but are documented.

Looks like "structures.h" is missing from the SDK

AMD driver version 22.5.1 broken API

GPU: RX 6950xt
Driver Version: 22.5.1

I use GPU temp to control my case fans, but after 22.5.1 update, GPU temp is not accessible anymore. I ran "Overdrive8 t", and I can't get any temp reading

OK this is just stupid

You guys are doing version bumps to display_library and code is being changed in the ADL whether it be new functions or bug fixes but you are not updating any of the documentation and code to reflect these changes.

This is the list of documented functions and functions that are undocumented

Documented Functions (click to show)
ADL2_AdapterX2_Caps
ADL2_Adapter_AMDAndNonAMDDIsplayClone_Get
ADL2_Adapter_ASICFamilyType_Get
ADL2_Adapter_Accessibility_Get
ADL2_Adapter_Active_Get
ADL2_Adapter_Active_Set
ADL2_Adapter_Active_SetPrefer
ADL2_Adapter_AdapterInfoX2_Get
ADL2_Adapter_AdapterInfo_Get
ADL2_Adapter_Aspects_Get
ADL2_Adapter_BoardLayout_Get
ADL2_Adapter_CloneTypes_Get
ADL2_Adapter_ConfigMemory_Get
ADL2_Adapter_ConnectionData_Get
ADL2_Adapter_ConnectionData_Remove
ADL2_Adapter_ConnectionData_Set
ADL2_Adapter_ConnectionState_Get
ADL2_Adapter_CrossGPUClone_Disable
ADL2_Adapter_Crossfire_Caps
ADL2_Adapter_Crossfire_Get
ADL2_Adapter_Crossfire_Set
ADL2_Adapter_Display_Caps
ADL2_Adapter_EDC_ErrorInjection_Set
ADL2_Adapter_EDC_ErrorRecords_Get
ADL2_Adapter_EDIDManagement_Caps
ADL2_Adapter_EmulationMode_Set
ADL2_Adapter_Graphic_Core_Info_Get
ADL2_Adapter_ID_Get
ADL2_Adapter_MVPU_Set
ADL2_Adapter_MemoryInfo_Get
ADL2_Adapter_ModeSwitch
ADL2_Adapter_NumberOfActivatableSources_Get
ADL2_Adapter_NumberOfAdapters_Get
ADL2_Adapter_ObservedClockInfo_Get
ADL2_Adapter_PMLog_Start
ADL2_Adapter_PMLog_Stop
ADL2_Adapter_PMLog_Support_Get
ADL2_Adapter_Primary_Get
ADL2_Adapter_Primary_Set
ADL2_Adapter_RegValueString_Get
ADL2_Adapter_RegValueString_Set
ADL2_Adapter_Speed_Caps
ADL2_Adapter_Speed_Get
ADL2_Adapter_Speed_Set
ADL2_Adapter_SupportedConnections_Get
ADL2_Adapter_VideoBiosInfo_Get
ADL2_BOOST_Settings_Get
ADL2_BOOST_Settings_Set
ADL2_CHILL_SettingsX2_Get
ADL2_CHILL_SettingsX2_Set
ADL2_DELAG_Settings_Get
ADL2_DELAG_Settings_Set
ADL2_Display_AdapterID_Get
ADL2_Display_BezelOffsetSteppingSize_Get
ADL2_Display_BezelOffset_Set
ADL2_Display_BezelSupported_Validate
ADL2_Display_DisplayMapConfig_Get
ADL2_Display_DisplayMapConfig_PossibleAddAndRemove
ADL2_Display_DisplayMapConfig_Set
ADL2_Display_DisplayMapConfig_Validate
ADL2_Display_ForcibleDisplay_Get
ADL2_Display_ForcibleDisplay_Set
ADL2_Display_Modes_Get
ADL2_Display_Modes_Set
ADL2_Display_NumberOfDisplays_Get
ADL2_Display_Overlap_Set
ADL2_Display_PossibleMapping_Get
ADL2_Display_PossibleMode_Get
ADL2_Display_SLSGrid_Caps
ADL2_Display_SLSMapConfigX2_Delete
ADL2_Display_SLSMapConfigX2_Get
ADL2_Display_SLSMapConfig_Create
ADL2_Display_SLSMapConfig_Delete
ADL2_Display_SLSMapConfig_Get
ADL2_Display_SLSMapConfig_Rearrange
ADL2_Display_SLSMapConfig_SetState
ADL2_Display_SLSMapIndexList_Get
ADL2_Display_SLSMapIndex_Get
ADL2_Display_SLSMiddleMode_Get
ADL2_Display_SLSMiddleMode_Set
ADL2_Display_SLSRecords_Get
ADL2_FPS_Caps
ADL2_FPS_Settings_Get
ADL2_FPS_Settings_Reset
ADL2_FPS_Settings_Set
ADL2_Flush_Driver_Data
ADL2_RIS_Settings_Get
ADL2_RIS_Settings_Set
ADL2_Workstation_GlobalEDIDPersistence_Get
ADL2_Workstation_GlobalEDIDPersistence_Set
ADL_AdapterX2_Caps
ADL_Adapter_ASICFamilyType_Get
ADL_Adapter_Accessibility_Get
ADL_Adapter_Active_Get
ADL_Adapter_Active_Set
ADL_Adapter_Active_SetPrefer
ADL_Adapter_AdapterInfoX2_Get
ADL_Adapter_AdapterInfo_Get
ADL_Adapter_Aspects_Get
ADL_Adapter_BoardLayout_Get
ADL_Adapter_ConfigMemory_Get
ADL_Adapter_ConnectionData_Get
ADL_Adapter_ConnectionData_Remove
ADL_Adapter_ConnectionData_Set
ADL_Adapter_ConnectionState_Get
ADL_Adapter_Crossfire_Caps
ADL_Adapter_Crossfire_Get
ADL_Adapter_Crossfire_Set
ADL_Adapter_Display_Caps
ADL_Adapter_EDIDManagement_Caps
ADL_Adapter_EmulationMode_Set
ADL_Adapter_ID_Get
ADL_Adapter_MemoryInfo_Get
ADL_Adapter_ModeSwitch
ADL_Adapter_NumberOfActivatableSources_Get
ADL_Adapter_NumberOfAdapters_Get
ADL_Adapter_ObservedClockInfo_Get
ADL_Adapter_Primary_Get
ADL_Adapter_Primary_Set
ADL_Adapter_RegValueString_Get
ADL_Adapter_RegValueString_Set
ADL_Adapter_Speed_Caps
ADL_Adapter_Speed_Get
ADL_Adapter_Speed_Set
ADL_Adapter_SupportedConnections_Get
ADL_Adapter_VideoBiosInfo_Get
ADL_Display_AdapterID_Get
ADL_Display_BezelOffsetSteppingSize_Get
ADL_Display_BezelOffset_Set
ADL_Display_BezelSupported_Validate
ADL_Display_DisplayMapConfig_Get
ADL_Display_DisplayMapConfig_PossibleAddAndRemove
ADL_Display_DisplayMapConfig_Set
ADL_Display_DisplayMapConfig_Validate
ADL_Display_ForcibleDisplay_Get
ADL_Display_ForcibleDisplay_Set
ADL_Display_Modes_Get
ADL_Display_Modes_Set
ADL_Display_Overlap_Set
ADL_Display_PossibleMapping_Get
ADL_Display_PossibleMode_Get
ADL_Display_SLSGrid_Caps
ADL_Display_SLSMapConfigX2_Get
ADL_Display_SLSMapConfig_Create
ADL_Display_SLSMapConfig_Delete
ADL_Display_SLSMapConfig_Get
ADL_Display_SLSMapConfig_Rearrange
ADL_Display_SLSMapConfig_SetState
ADL_Display_SLSMapIndexList_Get
ADL_Display_SLSMapIndex_Get
ADL_Display_SLSMiddleMode_Get
ADL_Display_SLSMiddleMode_Set
ADL_Display_SLSRecords_Get
ADL_Flush_Driver_Data
ADL_Workstation_GlobalEDIDPersistence_Get
ADL_Workstation_GlobalEDIDPersistence_Set
ADL2_Graphics_VersionsX2_Get
ADL2_Graphics_Versions_Get
ADL2_Main_ControlX2_Create
ADL2_Main_Control_Create
ADL2_Main_Control_Destroy
ADL2_Main_Control_Refresh
ADL_Graphics_Versions_Get
ADL_Main_ControlX2_Create
ADL_Main_Control_Create
ADL_Main_Control_Destroy
ADL_Main_Control_Refresh
ADL2_ApplicationProfiles_HitListsX2_Get
ADL2_ApplicationProfiles_HitListsX3_Get
ADL2_ApplicationProfiles_HitLists_Get
ADL2_ApplicationProfiles_ProfileOfAnApplication_Search
ADL2_ApplicationProfiles_System_Reload
ADL2_ApplicationProfiles_User_Load
ADL2_ApplicationProfiles_User_Unload
ADL_ApplicationProfiles_HitListsX2_Get
ADL_ApplicationProfiles_HitLists_Get
ADL_ApplicationProfiles_ProfileOfAnApplication_Search
ADL_ApplicationProfiles_System_Reload
ADL_ApplicationProfiles_User_Load
ADL_ApplicationProfiles_User_Unload
ADL2_Adapter_CrossDisplayPlatformInfo_Get
ADL2_Adapter_CrossdisplayAdapterRole_Caps
ADL2_Adapter_CrossdisplayInfoX2_Set
ADL2_Adapter_CrossdisplayInfo_Get
ADL2_Adapter_CrossdisplayInfo_Set
ADL_Adapter_CrossDisplayPlatformInfo_Get
ADL_Adapter_CrossdisplayAdapterRole_Caps
ADL_Adapter_CrossdisplayInfoX2_Set
ADL_Adapter_CrossdisplayInfo_Get
ADL_Adapter_CrossdisplayInfo_Set
ADL2_Adapter_ModeTimingOverride_Caps
ADL2_CDS_UnsafeMode_Set
ADL2_CV_DongleSettings_Get
ADL2_CV_DongleSettings_Reset
ADL2_CV_DongleSettings_Set
ADL2_DFP_AllowOnlyCETimings_Get
ADL2_DFP_AllowOnlyCETimings_Set
ADL2_DFP_BaseAudioSupport_Get
ADL2_DFP_GPUScalingEnable_Get
ADL2_DFP_GPUScalingEnable_Set
ADL2_DFP_HDMISupport_Get
ADL2_DFP_MVPUAnalogSupport_Get
ADL2_DFP_PixelFormat_Caps
ADL2_DFP_PixelFormat_Get
ADL2_DFP_PixelFormat_Set
ADL2_Display_AdjustCaps_Get
ADL2_Display_AdjustmentCoherent_Get
ADL2_Display_AdjustmentCoherent_Set
ADL2_Display_Capabilities_Get
ADL2_Display_ColorCaps_Get
ADL2_Display_ColorDepth_Get
ADL2_Display_ColorDepth_Set
ADL2_Display_ColorTemperatureSourceDefault_Get
ADL2_Display_ColorTemperatureSource_Get
ADL2_Display_ColorTemperatureSource_Set
ADL2_Display_Color_Get
ADL2_Display_Color_Set
ADL2_Display_ConnectedDisplays_Get
ADL2_Display_ControllerOverlayAdjustmentCaps_Get
ADL2_Display_ControllerOverlayAdjustmentData_Get
ADL2_Display_ControllerOverlayAdjustmentData_Set
ADL2_Display_CustomizedModeListNum_Get
ADL2_Display_CustomizedModeList_Get
ADL2_Display_CustomizedMode_Add
ADL2_Display_CustomizedMode_Delete
ADL2_Display_CustomizedMode_Validate
ADL2_Display_DCE_Get
ADL2_Display_DCE_Set
ADL2_Display_DDCBlockAccess_Get
ADL2_Display_DDCInfo2_Get
ADL2_Display_DDCInfo_Get
ADL2_Display_Deflicker_Get
ADL2_Display_Deflicker_Set
ADL2_Display_DeviceConfig_Get
ADL2_Display_DisplayContent_Cap
ADL2_Display_DisplayContent_Get
ADL2_Display_DisplayContent_Set
ADL2_Display_DisplayInfo_Get
ADL2_Display_DitherState_Get
ADL2_Display_DitherState_Set
ADL2_Display_Downscaling_Caps
ADL2_Display_DpMstInfo_Get
ADL2_Display_EdidData_Get
ADL2_Display_FilterSVideo_Get
ADL2_Display_FilterSVideo_Set
ADL2_Display_FormatsOverride_Get
ADL2_Display_FormatsOverride_Set
ADL2_Display_FreeSyncState_Get
ADL2_Display_FreeSyncState_Set
ADL2_Display_FreeSync_Cap
ADL2_Display_ImageExpansion_Get
ADL2_Display_ImageExpansion_Set
ADL2_Display_MVPUCaps_Get
ADL2_Display_MVPUStatus_Get
ADL2_Display_ModeTimingOverrideListX2_Get
ADL2_Display_ModeTimingOverrideList_Get
ADL2_Display_ModeTimingOverrideX2_Get
ADL2_Display_ModeTimingOverride_Delete
ADL2_Display_ModeTimingOverride_Get
ADL2_Display_ModeTimingOverride_Set
ADL2_Display_ODClockConfig_Set
ADL2_Display_ODClockInfo_Get
ADL2_Display_Overscan_Get
ADL2_Display_Overscan_Set
ADL2_Display_PixelFormatDefault_Get
ADL2_Display_PixelFormat_Get
ADL2_Display_PixelFormat_Set
ADL2_Display_Position_Get
ADL2_Display_Position_Set
ADL2_Display_PreservedAspectRatio_Get
ADL2_Display_PreservedAspectRatio_Set
ADL2_Display_Property_Get
ADL2_Display_Property_Set
ADL2_Display_ReducedBlanking_Get
ADL2_Display_ReducedBlanking_Set
ADL2_Display_Size_Get
ADL2_Display_Size_Set
ADL2_Display_SupportedColorDepth_Get
ADL2_Display_SupportedPixelFormat_Get
ADL2_Display_SwitchingCapability_Get
ADL2_Display_TVCaps_Get
ADL2_Display_TargetTiming_Get
ADL2_Display_UnderScan_Auto_Get
ADL2_Display_UnderScan_Auto_Set
ADL2_Display_UnderscanState_Get
ADL2_Display_UnderscanState_Set
ADL2_Display_UnderscanSupport_Get
ADL2_Display_Underscan_Get
ADL2_Display_Underscan_Set
ADL2_Display_ViewPort_Cap
ADL2_Display_ViewPort_Get
ADL2_Display_ViewPort_Set
ADL2_Display_WriteAndReadI2C
ADL2_Display_WriteAndReadI2CRev_Get
ADL2_TV_Standard_Get
ADL2_TV_Standard_Set
ADL_Adapter_ModeTimingOverride_Caps
ADL_CDS_UnsafeMode_Set
ADL_CV_DongleSettings_Get
ADL_CV_DongleSettings_Reset
ADL_CV_DongleSettings_Set
ADL_DFP_AllowOnlyCETimings_Get
ADL_DFP_AllowOnlyCETimings_Set
ADL_DFP_BaseAudioSupport_Get
ADL_DFP_GPUScalingEnable_Get
ADL_DFP_GPUScalingEnable_Set
ADL_DFP_HDMISupport_Get
ADL_DFP_MVPUAnalogSupport_Get
ADL_DFP_PixelFormat_Caps
ADL_DFP_PixelFormat_Get
ADL_DFP_PixelFormat_Set
ADL_Display_AdjustCaps_Get
ADL_Display_AdjustmentCoherent_Get
ADL_Display_AdjustmentCoherent_Set
ADL_Display_Capabilities_Get
ADL_Display_ColorCaps_Get
ADL_Display_ColorDepth_Get
ADL_Display_ColorDepth_Set
ADL_Display_ColorTemperatureSource_Get
ADL_Display_ColorTemperatureSource_Set
ADL_Display_Color_Get
ADL_Display_Color_Set
ADL_Display_ConnectedDisplays_Get
ADL_Display_ControllerOverlayAdjustmentCaps_Get
ADL_Display_ControllerOverlayAdjustmentData_Get
ADL_Display_ControllerOverlayAdjustmentData_Set
ADL_Display_CustomizedModeListNum_Get
ADL_Display_CustomizedModeList_Get
ADL_Display_CustomizedMode_Add
ADL_Display_CustomizedMode_Delete
ADL_Display_CustomizedMode_Validate
ADL_Display_DCE_Get
ADL_Display_DCE_Set
ADL_Display_DDCBlockAccess_Get
ADL_Display_DDCInfo2_Get
ADL_Display_DDCInfo_Get
ADL_Display_Deflicker_Get
ADL_Display_Deflicker_Set
ADL_Display_DeviceConfig_Get
ADL_Display_DisplayContent_Cap
ADL_Display_DisplayContent_Get
ADL_Display_DisplayContent_Set
ADL_Display_DisplayInfo_Get
ADL_Display_DitherState_Get
ADL_Display_DitherState_Set
ADL_Display_Downscaling_Caps
ADL_Display_DpMstInfo_Get
ADL_Display_EdidData_Get
ADL_Display_FilterSVideo_Get
ADL_Display_FilterSVideo_Set
ADL_Display_FormatsOverride_Get
ADL_Display_FormatsOverride_Set
ADL_Display_FreeSyncState_Get
ADL_Display_FreeSyncState_Set
ADL_Display_FreeSync_Cap
ADL_Display_ImageExpansion_Get
ADL_Display_ImageExpansion_Set
ADL_Display_MVPUCaps_Get
ADL_Display_MVPUStatus_Get
ADL_Display_ModeTimingOverrideListX2_Get
ADL_Display_ModeTimingOverrideList_Get
ADL_Display_ModeTimingOverrideX2_Get
ADL_Display_ModeTimingOverride_Delete
ADL_Display_ModeTimingOverride_Get
ADL_Display_ModeTimingOverride_Set
ADL_Display_NumberOfDisplays_Get
ADL_Display_ODClockConfig_Set
ADL_Display_ODClockInfo_Get
ADL_Display_Overscan_Get
ADL_Display_Overscan_Set
ADL_Display_PixelFormat_Get
ADL_Display_PixelFormat_Set
ADL_Display_Position_Get
ADL_Display_Position_Set
ADL_Display_PreservedAspectRatio_Get
ADL_Display_PreservedAspectRatio_Set
ADL_Display_Property_Get
ADL_Display_Property_Set
ADL_Display_ReducedBlanking_Get
ADL_Display_ReducedBlanking_Set
ADL_Display_Size_Get
ADL_Display_Size_Set
ADL_Display_SupportedColorDepth_Get
ADL_Display_SupportedPixelFormat_Get
ADL_Display_SwitchingCapability_Get
ADL_Display_TVCaps_Get
ADL_Display_TargetTiming_Get
ADL_Display_UnderScan_Auto_Get
ADL_Display_UnderScan_Auto_Set
ADL_Display_Underscan_Get
ADL_Display_Underscan_Set
ADL_Display_ViewPort_Cap
ADL_Display_ViewPort_Get
ADL_Display_ViewPort_Set
ADL_Display_WriteAndReadI2C
ADL_Display_WriteAndReadI2CRev_Get
ADL_TV_Standard_Get
ADL_TV_Standard_Set
ADL2_Graphics_Platform_Get
ADL_Graphics_Platform_Get
ADL2_Adapter_Tear_Free_Cap
ADL2_Overdrive5_CurrentActivity_Get
ADL2_Overdrive5_FanSpeedInfo_Get
ADL2_Overdrive5_FanSpeedToDefault_Set
ADL2_Overdrive5_FanSpeed_Get
ADL2_Overdrive5_FanSpeed_Set
ADL2_Overdrive5_ODParameters_Get
ADL2_Overdrive5_ODPerformanceLevels_Get
ADL2_Overdrive5_ODPerformanceLevels_Set
ADL2_Overdrive5_PowerControlInfo_Get
ADL2_Overdrive5_PowerControl_Caps
ADL2_Overdrive5_PowerControl_Get
ADL2_Overdrive5_PowerControl_Set
ADL2_Overdrive5_Temperature_Get
ADL2_Overdrive5_ThermalDevices_Enum
ADL2_Overdrive_Caps
ADL_Overdrive5_CurrentActivity_Get
ADL_Overdrive5_FanSpeedInfo_Get
ADL_Overdrive5_FanSpeedToDefault_Set
ADL_Overdrive5_FanSpeed_Get
ADL_Overdrive5_FanSpeed_Set
ADL_Overdrive5_ODParameters_Get
ADL_Overdrive5_ODPerformanceLevels_Get
ADL_Overdrive5_ODPerformanceLevels_Set
ADL_Overdrive5_PowerControlInfo_Get
ADL_Overdrive5_PowerControl_Caps
ADL_Overdrive5_PowerControl_Get
ADL_Overdrive5_PowerControl_Set
ADL_Overdrive5_Temperature_Get
ADL_Overdrive5_ThermalDevices_Enum
ADL_Overdrive_Caps
ADL2_Overdrive6_AdvancedFan_Caps
ADL2_Overdrive6_CapabilitiesEx_Get
ADL2_Overdrive6_Capabilities_Get
ADL2_Overdrive6_CurrentPower_Get
ADL2_Overdrive6_CurrentStatus_Get
ADL2_Overdrive6_FanPWMLimitData_Get
ADL2_Overdrive6_FanPWMLimitData_Set
ADL2_Overdrive6_FanPWMLimitRangeInfo_Get
ADL2_Overdrive6_FanSpeed_Get
ADL2_Overdrive6_FanSpeed_Reset
ADL2_Overdrive6_FanSpeed_Set
ADL2_Overdrive6_PowerControlInfo_Get
ADL2_Overdrive6_PowerControl_Caps
ADL2_Overdrive6_PowerControl_Get
ADL2_Overdrive6_PowerControl_Set
ADL2_Overdrive6_StateEx_Get
ADL2_Overdrive6_StateEx_Set
ADL2_Overdrive6_StateInfo_Get
ADL2_Overdrive6_State_Reset
ADL2_Overdrive6_State_Set
ADL2_Overdrive6_TargetTemperatureData_Get
ADL2_Overdrive6_TargetTemperatureData_Set
ADL2_Overdrive6_TargetTemperatureRangeInfo_Get
ADL2_Overdrive6_Temperature_Get
ADL2_Overdrive6_ThermalController_Caps
ADL2_Overdrive6_ThermalLimitUnlock_Get
ADL2_Overdrive6_ThermalLimitUnlock_Set
ADL2_Overdrive6_VoltageControlInfo_Get
ADL2_Overdrive6_VoltageControl_Get
ADL2_Overdrive6_VoltageControl_Set
ADL_Overdrive6_AdvancedFan_Caps
ADL_Overdrive6_CapabilitiesEx_Get
ADL_Overdrive6_Capabilities_Get
ADL_Overdrive6_CurrentStatus_Get
ADL_Overdrive6_FanPWMLimitData_Get
ADL_Overdrive6_FanPWMLimitData_Set
ADL_Overdrive6_FanPWMLimitRangeInfo_Get
ADL_Overdrive6_FanSpeed_Get
ADL_Overdrive6_FanSpeed_Reset
ADL_Overdrive6_FanSpeed_Set
ADL_Overdrive6_PowerControlInfo_Get
ADL_Overdrive6_PowerControl_Caps
ADL_Overdrive6_PowerControl_Get
ADL_Overdrive6_PowerControl_Set
ADL_Overdrive6_StateEx_Get
ADL_Overdrive6_StateEx_Set
ADL_Overdrive6_StateInfo_Get
ADL_Overdrive6_State_Reset
ADL_Overdrive6_State_Set
ADL_Overdrive6_TargetTemperatureData_Get
ADL_Overdrive6_TargetTemperatureData_Set
ADL_Overdrive6_TargetTemperatureRangeInfo_Get
ADL_Overdrive6_Temperature_Get
ADL_Overdrive6_ThermalController_Caps
ADL_Overdrive6_ThermalLimitUnlock_Get
ADL_Overdrive6_ThermalLimitUnlock_Set
ADL_Overdrive6_VoltageControlInfo_Get
ADL_Overdrive6_VoltageControl_Get
ADL_Overdrive6_VoltageControl_Set
ADL2_AutoTuningResult_Get
ADL2_Device_PMLog_Device_Create
ADL2_Device_PMLog_Device_Destroy
ADL2_New_QueryPMLogData_Get
ADL2_Overdrive8_Current_SettingX2_Get
ADL2_Overdrive8_Current_SettingX3_Get
ADL2_Overdrive8_Current_Setting_Get
ADL2_Overdrive8_Init_SettingX2_Get
ADL2_Overdrive8_Init_Setting_Get
ADL2_Overdrive8_PMLogSenorRange_Caps
ADL2_Overdrive8_PMLogSenorType_Support_Get
ADL2_Overdrive8_PMLog_ShareMemory_Read
ADL2_Overdrive8_PMLog_ShareMemory_Start
ADL2_Overdrive8_PMLog_ShareMemory_Stop
ADL2_Overdrive8_PMLog_ShareMemory_Support
ADL2_Overdrive8_Setting_Set
ADL2_CustomFan_Caps
ADL2_CustomFan_Get
ADL2_CustomFan_Set
ADL2_OverdriveN_CapabilitiesX2_Get
ADL2_OverdriveN_Capabilities_Get
ADL2_OverdriveN_FanControl_Get
ADL2_OverdriveN_FanControl_Set
ADL2_OverdriveN_MemoryClocksX2_Get
ADL2_OverdriveN_MemoryClocksX2_Set
ADL2_OverdriveN_MemoryClocks_Get
ADL2_OverdriveN_MemoryClocks_Set
ADL2_OverdriveN_MemoryTimingLevel_Get
ADL2_OverdriveN_MemoryTimingLevel_Set
ADL2_OverdriveN_PerformanceStatus_Get
ADL2_OverdriveN_PowerLimit_Get
ADL2_OverdriveN_PowerLimit_Set
ADL2_OverdriveN_SettingsExt_Get
ADL2_OverdriveN_SettingsExt_Set
ADL2_OverdriveN_SystemClocksX2_Get
ADL2_OverdriveN_SystemClocksX2_Set
ADL2_OverdriveN_SystemClocks_Get
ADL2_OverdriveN_SystemClocks_Set
ADL2_OverdriveN_Temperature_Get
ADL2_OverdriveN_ZeroRPMFan_Get
ADL2_OverdriveN_ZeroRPMFan_Set
ADL2_Display_PowerXpressActiveGPU_Get
ADL2_Display_PowerXpressActiveGPU_Set
ADL2_Display_PowerXpressVersion_Get
ADL2_Display_PowerXpress_AutoSwitchConfig_Get
ADL2_Display_PowerXpress_AutoSwitchConfig_Set
ADL2_PowerXpress_AncillaryDevices_Get
ADL2_PowerXpress_Config_Caps
ADL2_PowerXpress_Scheme_Get
ADL2_PowerXpress_Scheme_Set
ADL2_SwitchableGraphics_Applications_Get
ADL_Display_PowerXpressActiveGPU_Get
ADL_Display_PowerXpressActiveGPU_Set
ADL_Display_PowerXpressVersion_Get
ADL_Display_PowerXpress_AutoSwitchConfig_Get
ADL_Display_PowerXpress_AutoSwitchConfig_Set
ADL_PowerXpress_AncillaryDevices_Get
ADL_PowerXpress_Config_Caps
ADL_PowerXpress_Scheme_Get
ADL_PowerXpress_Scheme_Set
ADL2_Workstation_AdapterNumOfGLSyncConnectors_Get
ADL2_Workstation_Caps
ADL2_Workstation_DeepBitDepth_Get
ADL2_Workstation_DeepBitDepth_Set
ADL2_Workstation_DisplayGLSyncMode_Get
ADL2_Workstation_DisplayGLSyncMode_Set
ADL2_Workstation_DisplayGenlockCapable_Get
ADL2_Workstation_ECCData_Get
ADL2_Workstation_ECCX2_Get
ADL2_Workstation_ECC_Caps
ADL2_Workstation_ECC_Get
ADL2_Workstation_ECC_Set
ADL2_Workstation_GLSyncGenlockConfiguration_Get
ADL2_Workstation_GLSyncGenlockConfiguration_Set
ADL2_Workstation_GLSyncModuleDetect_Get
ADL2_Workstation_GLSyncModuleInfo_Get
ADL2_Workstation_GLSyncPortState_Get
ADL2_Workstation_GLSyncPortState_Set
ADL2_Workstation_GLSyncSupportedTopology_Get
ADL2_Workstation_LoadBalancing_Caps
ADL2_Workstation_LoadBalancing_Get
ADL2_Workstation_LoadBalancing_Set
ADL2_Workstation_Stereo_Get
ADL2_Workstation_Stereo_Set
ADL_Workstation_AdapterNumOfGLSyncConnectors_Get
ADL_Workstation_Caps
ADL_Workstation_DeepBitDepth_Get
ADL_Workstation_DeepBitDepth_Set
ADL_Workstation_DisplayGLSyncMode_Get
ADL_Workstation_DisplayGLSyncMode_Set
ADL_Workstation_DisplayGenlockCapable_Get
ADL_Workstation_ECCData_Get
ADL_Workstation_ECCX2_Get
ADL_Workstation_ECC_Caps
ADL_Workstation_ECC_Get
ADL_Workstation_ECC_Set
ADL_Workstation_GLSyncGenlockConfiguration_Get
ADL_Workstation_GLSyncGenlockConfiguration_Set
ADL_Workstation_GLSyncModuleDetect_Get
ADL_Workstation_GLSyncModuleInfo_Get
ADL_Workstation_GLSyncPortState_Get
ADL_Workstation_GLSyncPortState_Set
ADL_Workstation_GLSyncSupportedTopology_Get
ADL_Workstation_LoadBalancing_Caps
ADL_Workstation_LoadBalancing_Get
ADL_Workstation_LoadBalancing_Set
ADL_Workstation_Stereo_Get
ADL_Workstation_Stereo_Set
Undocumented Functions (click to show)
ADL2_ADC_CurrentProfileFromDrv_Get
ADL2_ADC_Display_AdapterDeviceProfileEx_Get
ADL2_ADC_DrvDataToProfile_Copy
ADL2_ADC_FindClosestMode_Get
ADL2_ADC_IsDevModeEqual_Get
ADL2_ADC_Profile_Apply
ADL2_APO_AudioDelayAdjustmentInfo_Get
ADL2_APO_AudioDelay_Restore
ADL2_APO_AudioDelay_Set
ADL2_AdapterLimitation_Caps
ADL2_Adapter_ASICInfo_Get
ADL2_Adapter_AceDefaults_Restore
ADL2_Adapter_AdapterInfoX3_Get
ADL2_Adapter_AdapterInfoX4_Get
ADL2_Adapter_AdapterList_Disable
ADL2_Adapter_AdapterLocationPath_Get
ADL2_Adapter_AudioChannelSplitConfiguration_Get
ADL2_Adapter_AudioChannelSplit_Disable
ADL2_Adapter_AudioChannelSplit_Enable
ADL2_Adapter_BigSw_Info_Get
ADL2_Adapter_BlackAndWhiteLevelSupport_Get
ADL2_Adapter_BlackAndWhiteLevel_Get
ADL2_Adapter_BlackAndWhiteLevel_Set
ADL2_Adapter_Caps
ADL2_Adapter_ChipSetInfo_Get
ADL2_Adapter_ConfigMemory_Cap
ADL2_Adapter_ConfigureState_Get
ADL2_Adapter_CrossfireX2_Get
ADL2_Adapter_DefaultAudioChannelTable_Load
ADL2_Adapter_Desktop_Caps
ADL2_Adapter_Desktop_SupportedSLSGridTypes_Get
ADL2_Adapter_DeviceID_Get
ADL2_Adapter_DisplayAudioEndpoint_Enable
ADL2_Adapter_DisplayAudioEndpoint_Mute
ADL2_Adapter_DisplayAudioInfo_Get
ADL2_Adapter_DisplayGTCCaps_Get
ADL2_Adapter_DriverSettings_Get
ADL2_Adapter_DriverSettings_Set
ADL2_Adapter_ECC_ErrorInjection_Set
ADL2_Adapter_ECC_ErrorRecords_Get
ADL2_Adapter_ExtInfo_Get
ADL2_Adapter_Feature_Caps
ADL2_Adapter_FrameMetrics_Caps
ADL2_Adapter_FrameMetrics_FrameDuration_Disable
ADL2_Adapter_FrameMetrics_FrameDuration_Enable
ADL2_Adapter_FrameMetrics_FrameDuration_Get
ADL2_Adapter_FrameMetrics_FrameDuration_Start
ADL2_Adapter_FrameMetrics_FrameDuration_Stop
ADL2_Adapter_FrameMetrics_Get
ADL2_Adapter_FrameMetrics_Start
ADL2_Adapter_FrameMetrics_Stop
ADL2_Adapter_Gamma_Get
ADL2_Adapter_Gamma_Set
ADL2_Adapter_HBC_Caps
ADL2_Adapter_HBM_ECC_UC_Check
ADL2_Adapter_Headless_Get
ADL2_Adapter_IsGamingDriver_Info_Get
ADL2_Adapter_LocalDisplayConfig_Get
ADL2_Adapter_LocalDisplayConfig_Set
ADL2_Adapter_LocalDisplayState_Get
ADL2_Adapter_MaxCursorSize_Get
ADL2_Adapter_MemoryInfo2_Get
ADL2_Adapter_MirabilisSupport_Get
ADL2_Adapter_Modes_ReEnumerate
ADL2_Adapter_PreFlipPostProcessing_Disable
ADL2_Adapter_PreFlipPostProcessing_Enable
ADL2_Adapter_PreFlipPostProcessing_Get_Status
ADL2_Adapter_PreFlipPostProcessing_Select_LUT_Algorithm
ADL2_Adapter_PreFlipPostProcessing_Select_LUT_Buffer
ADL2_Adapter_PreFlipPostProcessing_Unselect_LUT_Buffer
ADL2_Adapter_RAS_ErrorInjection_Set
ADL2_Adapter_RegValueInt_Get
ADL2_Adapter_RegValueInt_Set
ADL2_Adapter_SWInfo_Get
ADL2_Adapter_TRNG_Get
ADL2_Adapter_VRAMUsage_Get
ADL2_Adapter_VariBrightEnable_Set
ADL2_Adapter_VariBrightLevel_Get
ADL2_Adapter_VariBrightLevel_Set
ADL2_Adapter_VariBright_Caps
ADL2_Adapter_VerndorID_Int_get
ADL2_Adapter_VideoTheaterModeInfo_Get
ADL2_Adapter_VideoTheaterModeInfo_Set
ADL2_Adapter_XConnectSupport_Get
ADL2_ApplicationProfilesX2_AppInterceptionList_Set
ADL2_ApplicationProfilesX2_AppStartStopInfo_Get
ADL2_ApplicationProfiles_AppInterceptionList_Set
ADL2_ApplicationProfiles_AppInterception_Set
ADL2_ApplicationProfiles_AppStartStopInfo_Get
ADL2_ApplicationProfiles_AppStartStop_Resume
ADL2_ApplicationProfiles_Applications_Get
ADL2_ApplicationProfiles_ConvertToCompact
ADL2_ApplicationProfiles_DriverAreaPrivacy_Get
ADL2_ApplicationProfiles_GetCustomization
ADL2_ApplicationProfiles_ProfileApplicationX2_Assign
ADL2_ApplicationProfiles_ProfileApplication_Assign
ADL2_ApplicationProfiles_ProfileOfAnApplicationX2_Search
ADL2_ApplicationProfiles_ProfileOfAnApplication_InMemorySearch
ADL2_ApplicationProfiles_Profile_Create
ADL2_ApplicationProfiles_Profile_Exist
ADL2_ApplicationProfiles_Profile_Remove
ADL2_ApplicationProfiles_PropertyType_Get
ADL2_ApplicationProfiles_Release_Get
ADL2_ApplicationProfiles_RemoveApplication
ADL2_ApplicationProfiles_StatusInfo_Get
ADL2_Audio_CurrentSampleRate_Get
ADL2_Blockchain_BlockchainMode_Caps
ADL2_Blockchain_BlockchainMode_Get
ADL2_Blockchain_BlockchainMode_Set
ADL2_Blockchain_Hashrate_Set
ADL2_Chill_Caps_Get
ADL2_Chill_Settings_Get
ADL2_Chill_Settings_Notify
ADL2_Chill_Settings_Set
ADL2_DVRSupport_Get
ADL2_Desktop_DOPP_Enable
ADL2_Desktop_DOPP_EnableX2
ADL2_Desktop_Detach
ADL2_Desktop_Device_Create
ADL2_Desktop_Device_Destroy
ADL2_Desktop_ExclusiveModeX2_Get
ADL2_Desktop_HardwareCursor_SetBitmap
ADL2_Desktop_HardwareCursor_SetPosition
ADL2_Desktop_HardwareCursor_Toggle
ADL2_Desktop_PFPAComplete_Set
ADL2_Desktop_PFPAState_Get
ADL2_Desktop_PrimaryInfo_Get
ADL2_Desktop_TextureState_Get
ADL2_Desktop_Texture_Enable
ADL2_DisplayScaling_Set
ADL2_Display_AudioMappingInfo_Get
ADL2_Display_AvivoColor_Get
ADL2_Display_AvivoCurrentColor_Set
ADL2_Display_AvivoDefaultColor_Set
ADL2_Display_BackLight_Get
ADL2_Display_BackLight_Set
ADL2_Display_ContainerID_Get
ADL2_Display_DisplayMapConfigX2_Set
ADL2_Display_DpMstAuxMsg_Get
ADL2_Display_DummyVirtual_Destroy
ADL2_Display_DummyVirtual_Get
ADL2_Display_EdidData_Set
ADL2_Display_EnumDisplays_Get
ADL2_Display_GamutMapping_Get
ADL2_Display_GamutMapping_Reset
ADL2_Display_GamutMapping_Set
ADL2_Display_Gamut_Caps
ADL2_Display_Gamut_Get
ADL2_Display_Gamut_Set
ADL2_Display_HDCP_Get
ADL2_Display_HDCP_Set
ADL2_Display_HDRState_Get
ADL2_Display_HDRState_Set
ADL2_Display_InfoPacket_Get
ADL2_Display_InfoPacket_Set
ADL2_Display_IsVirtual_Get
ADL2_Display_LCDRefreshRateCapability_Get
ADL2_Display_LCDRefreshRateOptions_Get
ADL2_Display_LCDRefreshRateOptions_Set
ADL2_Display_LCDRefreshRate_Get
ADL2_Display_LCDRefreshRate_Set
ADL2_Display_Limits_Get
ADL2_Display_ModeTimingOverrideInfo_Get
ADL2_Display_ModeTimingOverrideListX3_Get
ADL2_Display_ModeTimingOverrideX2_Set
ADL2_Display_ModeTimingOverrideX3_Get
ADL2_Display_Modes_X2_Get
ADL2_Display_MonitorPowerState_Set
ADL2_Display_NativeAUXChannel_Access
ADL2_Display_NeedWorkaroundFor5Clone_Get
ADL2_Display_Overlap_NotifyAdjustment
ADL2_Display_PowerXpressActvieGPUR2_Get
ADL2_Display_PreferredMode_Get
ADL2_Display_RcDisplayAdjustment
ADL2_Display_ReGammaCoefficients_Get
ADL2_Display_ReGammaCoefficients_Set
ADL2_Display_RegammaR1_Get
ADL2_Display_RegammaR1_Set
ADL2_Display_Regamma_Get
ADL2_Display_Regamma_Set
ADL2_Display_SLSBuilder_CommonMode_Get
ADL2_Display_SLSBuilder_Create
ADL2_Display_SLSBuilder_DisplaysCanBeNextCandidateInSLS_Get
ADL2_Display_SLSBuilder_DisplaysCanBeNextCandidateToEnabled_Get
ADL2_Display_SLSBuilder_Get
ADL2_Display_SLSBuilder_IsActive_Notify
ADL2_Display_SLSBuilder_MaxSLSLayoutSize_Get
ADL2_Display_SLSBuilder_TimeOut_Get
ADL2_Display_SLSBuilder_Update
ADL2_Display_SLSMapConfig_ImageCropType_Set
ADL2_Display_SLSMapConfig_SupportedImageCropType_Get
ADL2_Display_SLSMapConfig_Valid
ADL2_Display_Sharpness_Caps
ADL2_Display_Sharpness_Get
ADL2_Display_Sharpness_Info_Get
ADL2_Display_Sharpness_Set
ADL2_Display_SourceContentAttribute_Get
ADL2_Display_SourceContentAttribute_Set
ADL2_Display_SplitDisplay_Caps
ADL2_Display_SplitDisplay_Get
ADL2_Display_SplitDisplay_RestoreDesktopConfiguration
ADL2_Display_SplitDisplay_Set
ADL2_Display_TargetTimingX2_Get
ADL2_Display_Vector_Get
ADL2_Display_VirtualType_Get
ADL2_Display_WriteAndReadI2CLargePayload
ADL2_ElmCompatibilityMode_Caps
ADL2_ElmCompatibilityMode_Status_Get
ADL2_ElmCompatibilityMode_Status_Set
ADL2_ExclusiveModeGet
ADL2_Feature_Settings_Get
ADL2_Feature_Settings_Set
ADL2_GPUVMPageSize_Info_Get
ADL2_GPUVMPageSize_Info_Set
ADL2_GPUVerInfo_Get
ADL2_GcnAsicInfo_Get
ADL2_Graphics_IsDetachableGraphicsPlatform_Get
ADL2_Graphics_IsGfx9AndAbove
ADL2_Graphics_MantleVersion_Get
ADL2_Graphics_VulkanVersion_Get
ADL2_HybridGraphicsGPU_Set
ADL2_MGPUSLS_Status_Set
ADL2_MMD_FeatureList_Get
ADL2_MMD_FeatureValuesX2_Get
ADL2_MMD_FeatureValuesX2_Set
ADL2_MMD_FeatureValues_Get
ADL2_MMD_FeatureValues_Set
ADL2_MMD_FeaturesX2_Caps
ADL2_MMD_Features_Caps
ADL2_MMD_VideoAdjustInfo_Get
ADL2_MMD_VideoAdjustInfo_Set
ADL2_MMD_VideoColor_Caps
ADL2_MMD_VideoColor_Get
ADL2_MMD_VideoColor_Set
ADL2_MMD_Video_Caps
ADL2_Main_Control_GetProcAddress
ADL2_Main_Control_IsFunctionValid
ADL2_Main_LogDebug_Set
ADL2_Main_LogError_Set
ADL2_Overdrive5_PowerControlAbsValue_Caps
ADL2_Overdrive5_PowerControlAbsValue_Get
ADL2_Overdrive5_PowerControlAbsValue_Set
ADL2_Overdrive6_ControlI2C
ADL2_Overdrive6_FuzzyController_Caps
ADL2_Overdrive6_MaxClockAdjust_Get
ADL2_Overdrive6_PowerControlInfo_Get_X2
ADL2_Overdrive6_TemperatureEx_Get
ADL2_OverdriveN_AutoWattman_Caps
ADL2_OverdriveN_AutoWattman_Get
ADL2_OverdriveN_AutoWattman_Set
ADL2_OverdriveN_CountOfEvents_Get
ADL2_OverdriveN_SCLKAutoOverClock_Get
ADL2_OverdriveN_SCLKAutoOverClock_Set
ADL2_OverdriveN_Test_Set
ADL2_OverdriveN_ThrottleNotification_Get
ADL2_PPLogSettings_Get
ADL2_PPLogSettings_Set
ADL2_PPW_Caps
ADL2_PPW_Status_Get
ADL2_PPW_Status_Set
ADL2_PageMigration_Settings_Get
ADL2_PageMigration_Settings_Set
ADL2_PerGPU_GDEvent_Register
ADL2_PerGPU_GDEvent_UnRegister
ADL2_PerfTuning_Status_Get
ADL2_PerfTuning_Status_Set
ADL2_PerformanceTuning_Caps
ADL2_PowerStates_Get
ADL2_PowerXpress_Configuration_Get
ADL2_PowerXpress_ExtendedBatteryMode_Caps
ADL2_PowerXpress_ExtendedBatteryMode_Get
ADL2_PowerXpress_ExtendedBatteryMode_Set
ADL2_PowerXpress_LongIdleDetect_Get
ADL2_PowerXpress_LongIdleDetect_Set
ADL2_PowerXpress_PowerControlMode_Get
ADL2_PowerXpress_PowerControlMode_Set
ADL2_RegisterEvent
ADL2_RegisterEventX2
ADL2_Remap
ADL2_RemoteDisplay_Destroy
ADL2_RemoteDisplay_Display_Acquire
ADL2_RemoteDisplay_Display_Release
ADL2_RemoteDisplay_Display_Release_All
ADL2_RemoteDisplay_Hdcp20_Create
ADL2_RemoteDisplay_Hdcp20_Destroy
ADL2_RemoteDisplay_Hdcp20_Notify
ADL2_RemoteDisplay_Hdcp20_Process
ADL2_RemoteDisplay_IEPort_Set
ADL2_RemoteDisplay_Initialize
ADL2_RemoteDisplay_Nofitiation_Register
ADL2_RemoteDisplay_Notification_UnRegister
ADL2_RemoteDisplay_Support_Caps
ADL2_RemoteDisplay_VirtualWirelessAdapter_InUse_Get
ADL2_RemoteDisplay_VirtualWirelessAdapter_Info_Get
ADL2_RemoteDisplay_VirtualWirelessAdapter_RadioState_Get
ADL2_RemoteDisplay_VirtualWirelessAdapter_WPSSetting_Change
ADL2_RemoteDisplay_VirtualWirelessAdapter_WPSSetting_Get
ADL2_RemoteDisplay_WFDDeviceInfo_Get
ADL2_RemoteDisplay_WFDDeviceName_Change
ADL2_RemoteDisplay_WFDDevice_StatusInfo_Get
ADL2_RemoteDisplay_WFDDiscover_Start
ADL2_RemoteDisplay_WFDDiscover_Stop
ADL2_RemoteDisplay_WFDLink_Connect
ADL2_RemoteDisplay_WFDLink_Creation_Accept
ADL2_RemoteDisplay_WFDLink_Disconnect
ADL2_RemoteDisplay_WFDLink_WPS_Process
ADL2_RemoteDisplay_WFDWDSPSettings_Set
ADL2_RemoteDisplay_WirelessDisplayEnableDisable_Commit
ADL2_RemotePlay_ControlFlags_Set
ADL2_ScreenPoint_AudioMappingInfo_Get
ADL2_Send
ADL2_SendX2
ADL2_Stereo3D_2DPackedFormat_Set
ADL2_Stereo3D_3DCursorOffset_Get
ADL2_Stereo3D_3DCursorOffset_Set
ADL2_Stereo3D_CurrentFormat_Get
ADL2_Stereo3D_Info_Get
ADL2_Stereo3D_Modes_Get
ADL2_TurboSyncSupport_Get
ADL2_UnRegisterEvent
ADL2_UnRegisterEventX2
ADL2_User_Settings_Notify
ADL2_WS_Overdrive_Caps
ADL2_Win_IsHybridAI
ADL2_Workstation_8BitGrayscale_Get
ADL2_Workstation_8BitGrayscale_Set
ADL2_Workstation_DeepBitDepthX2_Get
ADL2_Workstation_DeepBitDepthX2_Set
ADL2_Workstation_GLSyncCounters_Get
ADL2_Workstation_RAS_ErrorCounts_Get
ADL2_Workstation_RAS_ErrorCounts_Reset
ADL2_Workstation_SDISegmentList_Get
ADL2_Workstation_SDI_Caps
ADL2_Workstation_SDI_Get
ADL2_Workstation_SDI_Set
ADL2_Workstation_UnsupportedDisplayModes_Enable
ADL_ADC_CurrentProfileFromDrv_Get
ADL_ADC_Display_AdapterDeviceProfileEx_Get
ADL_ADC_DrvDataToProfile_Copy
ADL_ADC_FindClosestMode_Get
ADL_ADC_IsDevModeEqual_Get
ADL_ADC_Profile_Apply
ADL_APO_AudioDelayAdjustmentInfo_Get
ADL_APO_AudioDelay_Restore
ADL_APO_AudioDelay_Set
ADL_AdapterLimitation_Caps
ADL_Adapter_ASICInfo_Get
ADL_Adapter_AdapterList_Disable
ADL_Adapter_AudioChannelSplitConfiguration_Get
ADL_Adapter_AudioChannelSplit_Disable
ADL_Adapter_AudioChannelSplit_Enable
ADL_Adapter_BigSw_Info_Get
ADL_Adapter_BlackAndWhiteLevelSupport_Get
ADL_Adapter_BlackAndWhiteLevel_Get
ADL_Adapter_BlackAndWhiteLevel_Set
ADL_Adapter_Caps
ADL_Adapter_ChipSetInfo_Get
ADL_Adapter_ConfigMemory_Cap
ADL_Adapter_ConfigureState_Get
ADL_Adapter_CrossfireX2_Get
ADL_Adapter_DefaultAudioChannelTable_Load
ADL_Adapter_DisplayAudioEndpoint_Enable
ADL_Adapter_DisplayAudioEndpoint_Mute
ADL_Adapter_DisplayAudioInfo_Get
ADL_Adapter_DisplayGTCCaps_Get
ADL_Adapter_DriverSettings_Get
ADL_Adapter_DriverSettings_Set
ADL_Adapter_ExtInfo_Get
ADL_Adapter_Gamma_Get
ADL_Adapter_Gamma_Set
ADL_Adapter_LocalDisplayConfig_Get
ADL_Adapter_LocalDisplayConfig_Set
ADL_Adapter_LocalDisplayState_Get
ADL_Adapter_MaxCursorSize_Get
ADL_Adapter_MemoryInfo2_Get
ADL_Adapter_MirabilisSupport_Get
ADL_Adapter_Modes_ReEnumerate
ADL_Adapter_ObservedGameClockInfo_Get
ADL_Adapter_RegValueInt_Get
ADL_Adapter_RegValueInt_Set
ADL_Adapter_SWInfo_Get
ADL_Adapter_Tear_Free_Cap
ADL_Adapter_VariBrightEnable_Set
ADL_Adapter_VariBrightLevel_Get
ADL_Adapter_VariBrightLevel_Set
ADL_Adapter_VariBright_Caps
ADL_Adapter_VideoTheaterModeInfo_Get
ADL_Adapter_VideoTheaterModeInfo_Set
ADL_ApplicationProfiles_Applications_Get
ADL_ApplicationProfiles_ConvertToCompact
ADL_ApplicationProfiles_DriverAreaPrivacy_Get
ADL_ApplicationProfiles_GetCustomization
ADL_ApplicationProfiles_ProfileApplicationX2_Assign
ADL_ApplicationProfiles_ProfileApplication_Assign
ADL_ApplicationProfiles_ProfileOfAnApplicationX2_Search
ADL_ApplicationProfiles_ProfileOfAnApplication_InMemorySearch
ADL_ApplicationProfiles_Profile_Create
ADL_ApplicationProfiles_Profile_Exist
ADL_ApplicationProfiles_Profile_Remove
ADL_ApplicationProfiles_PropertyType_Get
ADL_ApplicationProfiles_Release_Get
ADL_ApplicationProfiles_RemoveApplication
ADL_ApplicationProfiles_StatusInfo_Get
ADL_Audio_CurrentSampleRate_Get
ADL_DisplayScaling_Set
ADL_Display_AudioMappingInfo_Get
ADL_Display_AvivoColor_Get
ADL_Display_AvivoCurrentColor_Set
ADL_Display_AvivoDefaultColor_Set
ADL_Display_BackLight_Get
ADL_Display_BackLight_Set
ADL_Display_ContainerID_Get
ADL_Display_CurrentPixelClock_Get
ADL_Display_EdidData_Set
ADL_Display_EnumDisplays_Get
ADL_Display_GamutMapping_Get
ADL_Display_GamutMapping_Reset
ADL_Display_GamutMapping_Set
ADL_Display_Gamut_Caps
ADL_Display_Gamut_Get
ADL_Display_Gamut_Set
ADL_Display_InfoPacket_Get
ADL_Display_InfoPacket_Set
ADL_Display_LCDRefreshRateCapability_Get
ADL_Display_LCDRefreshRateOptions_Get
ADL_Display_LCDRefreshRateOptions_Set
ADL_Display_LCDRefreshRate_Get
ADL_Display_LCDRefreshRate_Set
ADL_Display_Limits_Get
ADL_Display_ModeTimingOverrideInfo_Get
ADL_Display_MonitorPowerState_Set
ADL_Display_NativeAUXChannel_Access
ADL_Display_NeedWorkaroundFor5Clone_Get
ADL_Display_PixelClockAllowableRange_Set
ADL_Display_PixelClockCaps_Get
ADL_Display_PowerXpressActvieGPUR2_Get
ADL_Display_RcDisplayAdjustment
ADL_Display_ReGammaCoefficients_Get
ADL_Display_ReGammaCoefficients_Set
ADL_Display_RegammaR1_Get
ADL_Display_RegammaR1_Set
ADL_Display_Regamma_Get
ADL_Display_Regamma_Set
ADL_Display_Sharpness_Caps
ADL_Display_Sharpness_Get
ADL_Display_Sharpness_Info_Get
ADL_Display_Sharpness_Set
ADL_Display_SourceContentAttribute_Get
ADL_Display_SourceContentAttribute_Set
ADL_Display_SplitDisplay_Caps
ADL_Display_SplitDisplay_Get
ADL_Display_SplitDisplay_RestoreDesktopConfiguration
ADL_Display_SplitDisplay_Set
ADL_Display_Vector_Get
ADL_Display_WriteAndReadI2CLargePayload
ADL_MMD_FeatureList_Get
ADL_MMD_FeatureValuesX2_Get
ADL_MMD_FeatureValuesX2_Set
ADL_MMD_FeatureValues_Get
ADL_MMD_FeatureValues_Set
ADL_MMD_FeaturesX2_Caps
ADL_MMD_Features_Caps
ADL_MMD_VideoAdjustInfo_Get
ADL_MMD_VideoAdjustInfo_Set
ADL_MMD_VideoColor_Caps
ADL_MMD_VideoColor_Get
ADL_MMD_VideoColor_Set
ADL_MMD_Video_Caps
ADL_Main_Control_GetProcAddress
ADL_Main_Control_IsFunctionValid
ADL_Main_LogDebug_Set
ADL_Main_LogError_Set
ADL_Overdrive5_PowerControlAbsValue_Caps
ADL_Overdrive5_PowerControlAbsValue_Get
ADL_Overdrive5_PowerControlAbsValue_Set
ADL_Overdrive6_FuzzyController_Caps
ADL_Overdrive6_MaxClockAdjust_Get
ADL_PowerXpress_ExtendedBatteryMode_Caps
ADL_PowerXpress_ExtendedBatteryMode_Get
ADL_PowerXpress_ExtendedBatteryMode_Set
ADL_PowerXpress_LongIdleDetect_Get
ADL_PowerXpress_LongIdleDetect_Set
ADL_PowerXpress_PowerControlMode_Get
ADL_PowerXpress_PowerControlMode_Set
ADL_Remap
ADL_RemoteDisplay_Destroy
ADL_RemoteDisplay_Display_Acquire
ADL_RemoteDisplay_Display_Release
ADL_RemoteDisplay_Display_Release_All
ADL_RemoteDisplay_Hdcp20_Create
ADL_RemoteDisplay_Hdcp20_Destroy
ADL_RemoteDisplay_Hdcp20_Notify
ADL_RemoteDisplay_Hdcp20_Process
ADL_RemoteDisplay_IEPort_Set
ADL_RemoteDisplay_Initialize
ADL_RemoteDisplay_Nofitiation_Register
ADL_RemoteDisplay_Notification_UnRegister
ADL_RemoteDisplay_Support_Caps
ADL_RemoteDisplay_VirtualWirelessAdapter_InUse_Get
ADL_RemoteDisplay_VirtualWirelessAdapter_Info_Get
ADL_RemoteDisplay_VirtualWirelessAdapter_RadioState_Get
ADL_RemoteDisplay_VirtualWirelessAdapter_WPSSetting_Change
ADL_RemoteDisplay_VirtualWirelessAdapter_WPSSetting_Get
ADL_RemoteDisplay_WFDDeviceInfo_Get
ADL_RemoteDisplay_WFDDeviceName_Change
ADL_RemoteDisplay_WFDDevice_StatusInfo_Get
ADL_RemoteDisplay_WFDDiscover_Start
ADL_RemoteDisplay_WFDDiscover_Stop
ADL_RemoteDisplay_WFDLink_Connect
ADL_RemoteDisplay_WFDLink_Creation_Accept
ADL_RemoteDisplay_WFDLink_Disconnect
ADL_RemoteDisplay_WFDLink_WPS_Process
ADL_RemoteDisplay_WFDWDSPSettings_Set
ADL_RemoteDisplay_WirelessDisplayEnableDisable_Commit
ADL_ScreenPoint_AudioMappingInfo_Get
ADL_Stereo3D_2DPackedFormat_Set
ADL_Stereo3D_3DCursorOffset_Get
ADL_Stereo3D_3DCursorOffset_Set
ADL_Stereo3D_CurrentFormat_Get
ADL_Stereo3D_Info_Get
ADL_Stereo3D_Modes_Get
ADL_Win_IsHybridAI
ADL_Workstation_8BitGrayscale_Get
ADL_Workstation_8BitGrayscale_Set
ADL_Workstation_DeepBitDepthX2_Get
ADL_Workstation_DeepBitDepthX2_Set
ADL_Workstation_GLSyncCounters_Get
ADL_Workstation_RAS_Get_Error_Counts
ADL_Workstation_RAS_Get_Features
ADL_Workstation_RAS_Reset_Error_Counts
ADL_Workstation_RAS_Set_Features
ADL_Workstation_SDISegmentList_Get
ADL_Workstation_SDI_Caps
ADL_Workstation_SDI_Get
ADL_Workstation_SDI_Set
ADL_Workstation_UnsupportedDisplayModes_Enable
AmdPowerXpressRequestHighPerformance
Desktop_Detach
Send
SendX2

And now I am having a problem and I am sure it to will go unanswered. but here goes anyway.

Windows 7 x64
Driver version 20.2.1

I have ported the entire SDK to Python and there seems to be some kind of an issue with the ADL2_Adapter_BoardLayout_Get function. When I run the code using the atiadlxx.dll which is the x64 library it runs without issue. but when I run the code using atiadlxy.dll which is the 32 bit library (32 bit python) There is a paramter size issue when calling the function. This is the exact error I get.

Procedure called with not enough arguments (2602832 bytes missing) or wrong calling convention

I am thinking that the 32 bit library takes different paramaters then the 64 bit. Now because of the lack of function definitions in this reposity and only partial documentation being available there is no way to know what is outta wack. This function takes 7 total parameters and 2 of those parameters are structures one is void and the rest are 32 bit integers. on x86 and x64 systems a c++ int is at least 32 bits wide. I am thinking that the issue is in one of the structures. But the number of bytes that are missing is what is throwing me off. it is saying that it's off by 2.4822 megabytes which is HUGE! so this is obviously not an issue with an integer or with any of the structures being passed.

Now all of the parameters except the context and the adapter index should be pointers and to my knowledge a pointer does not have a size.

Here are the number fo bytes for each of the parameters (not the pointers) for x64
8: context (void)
4: adapter index (int)
4: valid flags (int)
4: number of slots (int)
12: ADLBracketSlotInfo (structure)
4: number of connectors (int)
24: ADLConnectorInfo (structure)

Here are the number fo bytes for each of the parameters (not the pointers) for x64
4: context (void)
4: adapter index (int)
4: valid flags (int)
4: number of slots (int)
12: ADLBracketSlotInfo (structure)
4: number of connectors (int)
24: ADLConnectorInfo (structure)

ADLBracketSlotInfo has 3 fields and each field is an int
ADLConnectorInfo has 6 fields and each field is an int.

Now the sizes are identical except for the void which is 32 bits on x86 and 64 bits on x86 and I know the context is not the problem because other functions work without issue.

There is nothing there that is going to make up 2.4822 megabytes worth of parameter size. I think there is a bug in the ADL library code.

But in all reality how about someone start actually maintaining this library properly instead of adding new features and chnging things in the ADL and not doing anything here.

If I was provided the code for the ADL or at least have the code for the structures provided and the parameter types that need to be passed to the functions would allow me to keep the documentation up to snuff. I am not a C/C++ guy and updating the display_library code would not be something that I would do properly. If there was proper documentation on the functions there might be someone willing to handle that end of things. It is absoutly crazy to keep on adding and changing the ADL and the only thing getting updated here are version bumps. By doing that the only thing that is ahppening is more and more of the display_library is getting broken.

if you look at the list of undocumented functions it puts it into better perspective of how badly this library is maintained.

ADLSensorType #31 is not defined

ADLSensorType #31 is not defined, but this is returned by the AMD Radeon Vega 8 Mobile Graphics when I call ADL2_New_QueryPMLogData_Get().

Please can the definitions be updated to include this and any others that are absent please?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.