Rob Clark has expanded his Freedreno
efforts from just being a reverse-engineered user-space (Gallium3D) graphics driver for Qualcomm's Adreno/Snapdragon hardware. Rob has now written his own DRM/KMS kernel driver for dealing with the Snapdragon graphics hardware.
Freedreno doesn't have the official backing of Qualcomm and is just a project that was started by Rob last year in his spare time, but it's made remarkable progress. With Mesa 9.2, the Freedreno Gallium3D driver is merged
for supporting the A2xx hardware while Rob has already been working on A3xx support
Announced on Friday via the dri-devel mailing list
is a Qualcomm Snapdragon DRM/KMS driver. Again, this is just a side project and done through reverse-engineering by Rob, who was working at Texas Instruments and is now employed by Red Hat.
As there's quite a lot of differences between the different Qualcomm display controllers and 2D/3D Adreno cores, this "MSM" DRM driver was designed with a modular approach in mind to accomodate the different Qualcomm SoCs. Right now as well this DRM driver is under early review and doesn't yet expose any custom IOCTLs to user-space. Exposed right now is just the plane, CRTC, and encoder objects.
Many more details on this early Qualcomm Snapdragon MSM DRM driver can be found via its mailing list post
. This new driver is nearly 7,000 lines of code and will hopefully be in a state for merging into a future Linux kernel release.