On IMX6D hardware we have successfully implemented gpu-viv-bin-mx6s-3.0.101-4.1.1 binaries with freescale kernel 3.0.35 and the gpu examples work fine. On the same hardware we implemented imx-gpu-viv-5.0.11.p8.3-hfp binaries with freescale kernel 4.1.15. However none of the gpu examples work.
For example if we run /opt/viv_samples/tiger/tiger we get:
[galcore]: GPU[0] hang, automatic recovery.
[galcore]: recovery done
[galcore]: GPU[0] hang, automatic recovery.
[galcore]: recovery done
etc.
We are using the right examples.
We are using hard float.
What could be wrong?
We figured this out. The device tree file had a dummy clock called out for the 3D shader.