- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I'm using Intel's IGCL and CUI SDK and I'm having a few issues, so I'm asking for help.
1. Should I use IGFX_GET_SET_AUX_INFO_GUID or IGFX_GET_SET_BUS_INFO_GUID when using the CUI SDK to connect to HDMI to send data?
I use a logic analyzer to capture packets and find that when I use IGFX_GET_SET_AUX_INFO_GUID, an unknown 8-bit byte data will appear in front of the packet, causing the data to be abnormal, but the speed of sending data using the IGFX_GET_SET_BUS_INFO_GUID is very slow.
IGFX_BUS_INFO busInfo = { 0 };
busInfo.dwDeviceUID = UIDofActiveDisplay;
busInfo.dwOpType = IGFX_BUS_SET;
busInfo.dwSize = iLen;
busInfo.dwAddress = uSlaveAddr;
busInfo.dwSubAddress = uSubAddress;
busInfo.dwFlags = IGFX_BUS_USE_INDEXING;
busInfo.byBusType = IGFX_BUS_I2C;
hr = pCUIExternal8->SetDeviceData((GUID*)&IGFX_GET_SET_BUS_INFO_GUID, dwsize, (BYTE*)&busInfo, &dwError);2. When using IGCL, I followed the example on GitHub, connected HDMI to send data, and found that the speed was slow, and the same size packet took several times longer than Nvidia and AMD.
ctl_i2c_access_args_t I2CArgs = { 0 };
I2CArgs.Size = sizeof(ctl_i2c_access_args_t);
I2CArgs.OpType = CTL_OPERATION_TYPE_WRITE;
I2CArgs.Address = uSlaveAddr;
I2CArgs.Offset = uOffset;
I2CArgs.DataSize = iLen;
I2CArgs.Flags = CTL_I2C_FLAG_ATOMICI2C | CTL_I2C_FLAG_SPEED_FAST;
ctl_result_t Result = ctlI2CAccess((ctl_display_output_handle_t)UIDofActiveDisplay, &I2CArgs);Looking forward to the reply, good luck!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi WeiZaicheng,
Thank you for your post and I apologize for the late reply.
This forum is for support regarding the now discontinued Intel Graphics Performance Analyzer tools. You might have better luck getting support by filing issues directly here: https://github.com/intel/drivers.gpu.control-library/issues, as IGCL / CUI SDK developers and users do not frequent this forum.
I have asked the IGCL team about your question, and received the following feedback:
If you don't have a specific requirement to use CUI SDK, then we would suggest you use IGCL API as it supersedes CUI SDK. There is no Intel platform where both IGCL and CUI SDK will be supported for end user applications.
Regarding the IGCL parameters used for I2C transactions, unless you are trying to read/write MCCS registers or want to ensure synchronization, we would recommend using I2CArgs.Flags = CTL_I2C_FLAG_SPEED_FAST;. Or you can skip setting this flag entirely.
Setting I2CArgs.Flags = CTL_I2C_FLAG_ATOMICI2C will indeed cause the transactions to be slower because the I2C flag can be considered basically equivalent to using the slow flag. Unless you are doing MCCS, we would suggest avoiding setting Atomic I2C flag
If you have any follow up questions, please file future questions or issues directly here: https://github.com/intel/drivers.gpu.control-library/issues
Thank you!
Best.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi WeiZaicheng,
Thank you for your post and I apologize for the late reply.
This forum is for support regarding the now discontinued Intel Graphics Performance Analyzer tools. You might have better luck getting support by filing issues directly here: https://github.com/intel/drivers.gpu.control-library/issues, as IGCL / CUI SDK developers and users do not frequent this forum.
I have asked the IGCL team about your question, and received the following feedback:
If you don't have a specific requirement to use CUI SDK, then we would suggest you use IGCL API as it supersedes CUI SDK. There is no Intel platform where both IGCL and CUI SDK will be supported for end user applications.
Regarding the IGCL parameters used for I2C transactions, unless you are trying to read/write MCCS registers or want to ensure synchronization, we would recommend using I2CArgs.Flags = CTL_I2C_FLAG_SPEED_FAST;. Or you can skip setting this flag entirely.
Setting I2CArgs.Flags = CTL_I2C_FLAG_ATOMICI2C will indeed cause the transactions to be slower because the I2C flag can be considered basically equivalent to using the slow flag. Unless you are doing MCCS, we would suggest avoiding setting Atomic I2C flag
If you have any follow up questions, please file future questions or issues directly here: https://github.com/intel/drivers.gpu.control-library/issues
Thank you!
Best.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your reply!
In my testing, I found that some models could not obtain the corresponding DisplayID through IGCL, for example, my work notebook is Intel UHD Graphics before the 11th generation, which could only be obtained through the CUI SDK, so I did two driver developments.
In IGCL, only I2CArgs.Flags = CTL_I2C_FLAG_SPEED_FAST; , there is no noticeable speed increase.
Thank you again for your reply, and I will ask questions in Github in the future.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page