GC300 2D unit won't work with GC2000 3D disabled on MMP3
Lucas Stach
l.stach at pengutronix.de
Tue Dec 1 10:33:36 UTC 2020
Hi Lubomir,
Am Montag, den 30.11.2020, 18:07 +0100 schrieb Lubomir Rintel:
Hello,
(adding Ivan to Cc, since he brought the issue up privately. Ivan,
etnaviv@ is a moderated list, please subscribe if you're going to
reply.)
I'm wondering if anyone can help me understand what is going with
Vivante
GC300 on a MMP3 and find a reasonable fix. MMP3 has these two GPU
cores:
[ 2.142545] etnaviv-gpu d420d000.gpu: model: GC2000, revision:
5026
[ 2.154468] etnaviv-gpu d420f000.gpu: model: GC300, revision: 4634
[ 2.166808] [drm] Initialized etnaviv 1.3.0 20151214 for etnaviv
on minor 0
Currently, clients that try to use the GC300 2D unit -- libdrm's
etnaviv_2d
test or the xorg-x11-drv-armada ddx on a MMP3 don't work and etnaviv
complains:
[ 295.077770] etnaviv-gpu d420d000.gpu: recover hung GPU!
That is, until the clock that's supposedly for the GC2000 3D unit are
turned on. Then things work fine.
I believe the above splat is with the etnaviv_2d_test? This test is
broken in that it will just pick the first GPU core (in your case the
GC2000) instead of looking for a core with 2D capabilities. Submitting
2D jobs into the 3D GPU will do nothing or hang the GPU, depending on
the specific GPU generation.
I don't know exactly what the armada driver is doing, IIRC it properly
looks for a 2D GPU core.
Is the symptom the same if the 2d_test is fixed to submit into the
right GPU core?
Regards,
Lucas
More information about the etnaviv
mailing list