frontend/dri: Implement mapping individual planes.
It is kinda surprising that
image2 = fromPlanar(image, 2, NULL)
mapImage(..., image2, ...)
does not map the third plane.
This implements that behavior in the case where the DRI frontend lowers the multi-planar textures.
In the case it doesn't this would need driver support. AFAIU at least etnaviv is impacted, and while it looks possible, I don't have the etnaviv knowledge or hardware to implement it.
Instead of silently returning weird results (either always plane 0 or possibly something interleaved) this adds an error return on mapping multi-planar textures otherwise.