2018-04-30: VC4 display, V3D kernel and userspace

For VC4, I landed Stefan Schake’s patches for CTM support (notably Android color correction) and per-plane alpha (so you can fade planes in and out without rewriting the alpha in all the pixels). He also submitted patches to the kernel and Mesa for syncobjects/fence fd support (needed for Android HWC2, which I gave some simplifying feedback for but are otherwise almost ready to land.

For V3D, I incorporated Daniel Vetter’s feedback to the DRM code and resubmitted it. I’m optimistic for merging to 4.18. I then spent a while trawling the HW bug reports looking for reasons for my remaining set of GPU hangs on 7278, generating a large set of Mesa patches (most of which were assertions for those GPU restrictions I learned about, and which we aren’t triggering yet). While I was doing that, I also went through some CTS and piglit failures, and:

  • fixed gallium’s refcounting of separate stencil buffers
  • fixed reloads of separate-stencil buffers
  • added v4.x MSAA support
  • added centroid varying support
  • fixed a bit of 2101010 unorm/snorm texture support in gallium
  • fixed a few EGL tests from the GLES CTS