The latest update on Freedreno came on Tuesday via his blog. Aside from getting the stencil buffer working and fixing batching problems in the 2D driver, Rob has also begun eyeing a Gallium3D-based driver and he's already implemented DRI2 support within the xf86-video-freedreno DDX driver.
Rob Clark has already written a libdrm_freedreno DRM module for interfacing with the kernel driver. This libdrm can be used by the xf86-video-freedreno DDX as well as the eventual Gallium3D driver. "Eventually we will need a proper DRM kernel driver, but libdrm_freedreno abstracts this well enough that I can concentrate on the 2d/3d userspace parts. The eventually plan is that when there is a proper DRM kernel driver (supporting a pushbuffer type interface, and synchronization between 2d and 3d pipes), libdrm_freedreno will be the point where we support talking to either the new driver or the existing QCOM kernel driver."
It will likely be a while before there's a fully-working Gallium3D driver for Qualcomm's ARM SoC, but at least Rob Clark is making much progress in the reverse-engineering and driver writing process, which he is doing purely in his spare time.