ADL_SDK ADL_Display_WriteAndReadI2C can not work
I want to use the function ADL_Display_WriteAndReadI2C in ADL_SDK to access the EDID of monitor, but the function always returns -1 which is not successful. I put part of my code here:
ADL_i2c_rw = (ADL_DISPLAY_I2C)GetProcAddress(hDLL,"ADL_Display_WriteAndReadI2C");
pi2c = malloc(sizeof(ADLI2C));
memset(pi2c, 0x0, sizeof(ADLI2C));
pi2c->iSize = sizeof(ADLI2C);
pi2c->iLine = 1;
pi2c->iAddress = 0x50;
pi2c->iOffset = 0;
pi2c->iAction = ADL_DL_I2C_ACTIONREAD;
pi2c->iSpeed = 100;
pi2c->iDataSize = 1; // 1-Byte
pi2c->pcData = malloc(pi2c->iDataSize);
if (ADL_i2c_rw != NULL)
{
iRet = ADL_i2c_rw(iAdapterIndex, pi2c);
printf(_T("\n"));
for (i = 0; i < pi2c->iDataSize; i++)
{
printf(_T("ADL_Display_WriteAndReadI2C[%d]: 0x%x02\n"), i, pi2c->pcData);
}
}
Can anyone give me some help? thanks a lot!
or can anyone give me some suggestion to contact AMD/ATI (I already have sent mail to gputools.support@amd.com but no reply)