i.MX6 Dual - GPU hang

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

i.MX6 Dual - GPU hang

1,580 次查看
shajin
Contributor II

Hello Community,

I'm working on a custom platform based out of i.MX6 Dual core processor. The software running on the platform is Yocto thud with QT 5.15.2. The Linux kernel version is 4.9.168 and the GPU driver version is 6.2.4.p1.8-r0 (https://github.com/Freescale/kernel-module-imx-gpu-viv.git Tag - 6.2.4.p1.8). 

 

I'm observing an error (ES30: some draw get error and skipped during validation) on the serial console after a long usage of the device. Soon after this error occurs, the QT fails to render to the display. Based on the internet search about the string i understand this error could be related to the GPU driver. Unfortunately, I couldn't see the error statements in the GPU driver source code. Is there anyone faced this error before and resolved? Any pointers on this case would be helpful. 

Thanks for your time. 

 

Thanks,

Shajin

标签 (2)
0 项奖励
回复
2 回复数

1,574 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Shajin

 

what bsp used in the case. GPU is working fine on nxp linux releases from

source.codeaurora.org/external/imx/linux-imx repository :
https://source.codeaurora.org/external/imx/linux-imx/tree/?h=imx_5.4.70_2.3.0

Documentation:

https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applicat...

 

Best regards
igor

0 项奖励
回复

1,546 次查看
shajin
Contributor II

Hi Igor,

 

Thank you for the response. Our BSP is based out of Freescale's Yocto Thud release. But the Linux kernel and QT are updated to higher versions. In our case the Linux kernel was updated to 4.9.168 and similarly the GPU drivers used is 6.2.4.p1.8-r0. 

 

On further investigating about this error ES30, I found one place in i.MX6 User Graphics user guide under section 15.4 where it talks about GPU hang scenario. 

15.4 Avoid GPU hang and data corruption when use occlusion query

Description:
On i.MX6D/Q GPU IP, both Hierarchical Depth (HZ) write and Occlusion Query (OQ) write share the same port. If HZ Fast Clear(FC) is enabled, and OQ uses the HZ port to perform a write, the HZ FC data may become corrupted, even lead to GPU hang unexpectedly.

Software Workaround:
A software workaround is recommended for this issue and is available from L4.9 bsp release. Because the issue occurs very infrequently, a per-application work around is most efficient. Software will disable HZ with a per-app detection and also provide a new environment variable control (VIV_DISABLE_HZ).

 

1. As per the document, A fix was integrated in 4.9 BSP release. Can you provide more information about this patch set? It will help me to cross check it out in our BSP source code. 

2. Can you provide more information on a per-application work around mentioned under Software workaround? Is it something we can have contol factor on the GUI side where there is GPU failure?

 

Thanks

Shajin

标记 (1)
0 项奖励
回复