[Openchrome-devel] Future of via drm and unichrome 3D driver.

Thomas Hellström thomas
Wed Jan 7 00:33:03 PST 2009

Hi Bruce.

Openchrome currently has OpenGL support using the "unichrome" driver in 
current mesa. However, that driver is full of bugs, logical errors and 
quite unstable. Tungsten Graphics was asked to improve that driver and 
add OpenGL 1.3, S3TC, accelerated GL_EXT_frame_buffer_objects and 
GL_ARB_pixel_buffer_objects by a customer. This involved reworking the 
DRM and the 3D driver to a point where it really became different 
drivers. Also the memory management of the openChrome 2D driver has been 
reworked to fit the unified memory manager in DRM. Part of this work was 
done by Tungsten Graphics before the VMware merger. Part of it was done 
by me on my spare time.

At some point I'd like to push this work open-source, and the suggestion 
is to create a new openchrome DRM driver and, during a period, obsolete 
the VIA drm driver. Since VIA is starting getting very active in the 
opensource DRI / DRM field, I won't do this if VIA thinks it's a bad idea.

The OpenChrome 2D driver also has EXA support, using the 3D engine, but 
that is separate from the mesa OpenGL driver. The OpenChrome 2D driver 
directly programs the 3D engine.

This is all CX700 and earlier unichromes.

For an open-source chrome9 driver built on this framework, the following 
would be needed:

1) Port VIA's new drm patches over to the new openchrome DRM. I can 
volunteer to do that.
2) Add chrome9 EXA support. Nobody's working on this. Needs more shader 
info. This is a good way for an open-source developer to get a feeling 
for how the new 3D engine behaves.
3) A new chrome9 3D driver. Preferrably based on gallium. I don't think 
anybody in the open source community is working on this. Is VIA doing 
any efforts in this direction?


BruceChang at via.com.tw wrote:
> Hello Thomas:
>     Please forgive me if my question is too stupid. It's my understanding that OpenChrome doesn't have 3D support now. Is it correct? Are you developing the 3D module for Chrome9? Or you plan to implement the EXA with 3D module?
> Thanks and Best Regards
> =================================================
> Bruce C. Chang(???)
> VIA Technologies, Inc. 
> Address: 1F, 531, Chung-Cheng Road, Hsin-Tien, 231 Taipei
> Tel: +886-2-22185452 Ext 7323
> Fax: +886-2-22186282
> Skype: Bruce.C.Chang
> Email: BruceChang at via.com.tw
> -----Original Message-----
> From: Thomas Hellstrom [mailto:thomas at shipmail.org] 
> Sent: Wednesday, January 07, 2009 3:10 PM
> To: Harald Welte
> Cc: Bruce Chang; openchrome-devel at openchrome.org; Benjamin Pan (Fremont)
> Subject: Re: Future of via drm and unichrome 3D driver.
> Harald,
> Just to clarify,
> This is not a chrome9 driver but largely reworked CX700 + older 
> unichrome stuff. However, it's a good base for incorporating the new 
> chrome9 stuff, since things like chrome9 aperture and initialization 
> falls naturally in place and it would be straighforward to add drm 
> modesetting and reserve buffers for v4l-type drivers.
> If this doesn't change your opinion, I'll suggest creating an 
> openchrome- drm and 3D module with the aim to move chrome9 drm stuff 
> over from VIA's patches.
> /Thomas

More information about the Openchrome-devel mailing list