Hello Diego,
We ported Android 6.0.1_2.1.0 BSP for our custom board. But still we are facing same issue. Our device sometimes run stable for about 1 day and gets freezed. The tombstone files indicates the fault is due to either render thread in com.android.systemui or system_server binder_2.
Whether it could be because of GPU power issue? From link https://community.nxp.com/message/926938, GPU hang may occur if LDO_PU volatge is less than the minimum required value. Is that true?
We measured VDD_PU_CAP & VDD_SOC_CAP of our board
At bootloader, VDD_SOC_CAP= 1.27V VDD_PU_CAP= 1.27V
After android is up VDD_SOC_CAP= 1.27V VDD_PU_CAP= toggles between 0.23V and 1.27V
SOC_IN and ARM_IN is set to 1.425V
Upon further analysis we found that the VDD_PU_CAP toggle is due to repeated call of imx6q_pm_pu_power_on() and imx6q_pm_pu_power_off() .These functions will enable/disable PU regulator. Above functions are present in kernel_imx/arch/arm/mach-imx/gpc.c
When we perform any operation on display like touch the screen,CPU frequency changes from 396MHz to 996MHz and PU regulator is enabled and disabled continuously.
When there is no operation, approximately every 1 minute once the frequency switches from 396MHz to 996MHz and back to 396MHz. And also PU regulator is enabled and disabled.
Is the continuous enable and disable of PU regulator when there is no operation is the expected behavior? or PU regulator should be always enabled?
Whether the continuous frequency shift and regulator on/off cause hang?
Thanks,
Asha