[Mesa-dev] Willing to take Haiku support Patches? (Was: DEATH to old drivers!)

Alexander von Gluck kallisti5 at unixzen.com
Mon Dec 19 11:01:45 PST 2011


On Mon, 19 Dec 2011 11:44:51 -0700, Brian Paul wrote:
> On Mon, Dec 19, 2011 at 11:18 AM, Alexander von Gluck
> <kallisti5 at unixzen.com> wrote:
>> Good afternoon!
>>
>> The Haiku OS project (not-for-profit organization, founded in 2001) 
>> has
>> found ourselves in a weird spot, we have a working Mesa software
>> render library based on a *heavily* modified Mesa 7.4.4.
>>
>> http://cgit.haiku-os.org/haiku/tree/src/libs/mesa
>>
>> However as you can imagine, updating that is going to be a *big*
>> pain point.  As Haiku is looking to get some basic 3D rendering
>> going on it's cards, we need to do upgrade to a newer version of
>> Mesa.
>>
>> If we produced well thought out Haiku OS support patches, would
>> Mesa as a project be interested in accepting them upstream? I think
>> a better direction may be to move away from the heavily custom
>> integrated mesa library and move to stock version.
>>
>> These patches would likely start as run-of-the-mill #ifdef __HAIKU__
>> macros.
>>
>> As Haiku has a much smaller developer base then Mesa (20-30 
>> commiters)
>> these first steps would greatly assist us in getting hardware 
>> assisted
>> 3d acceleration going.
>>
>> Keep in mind this is all early analysis, I haven't tried porting 
>> 7.11.2
>> yet :)
>
> In general I'm happy to take patches for Haiku.  But I wouldn't want
> to see #ifdef __HAIKU__ lines scattered all over the code.  
> Hopefully,
> that can be limited to header files as with other platforms.
>
> What GPUs/cards do you need to support?  Does this involve restoring
> any legacy drivers that were removed a few weeks ago?  Could you move
> to Gallium-based drivers?

We are mostly looking for Radeon HD and Intel at the moment (because 
they
represent the newest chipsets we support at the moment)  It does not 
involve
restoring the legacy drivers.

We want to make sure we support do things correctly to minimize Mesa
impact / work, while keeping to the Haiku (aka BeOS) method of graphic
driver design as much as possible.

Example, in order from top to bottom:
     Kernel space graphic driver
        
http://cgit.haiku-os.org/haiku/tree/src/add-ons/kernel/drivers/graphics/radeon_hd

     User space graphic accelerant that maps graphic driver memory
        
http://cgit.haiku-os.org/haiku/tree/src/add-ons/accelerants/radeon_hd

     User space OpenGL / 3d render that ties back to the accelerant
        http://cgit.haiku-os.org/haiku/tree/src/add-ons/opengl


We can work on getting something working prior to providing patches, I
mostly wanted to test the waters to see how the Mesa developers felt 
before
putting the work in :)

Thanks!
  -- Alex


More information about the mesa-dev mailing list