[Mesa-dev] Megaradeon

Christian König deathsimple at vodafone.de
Thu May 15 06:02:20 PDT 2014


Am 15.05.2014 14:13, schrieb Emil Velikov:
> On 15/05/14 03:33, Michel Dänzer wrote:
>> On 15.05.2014 10:58, Marek Olšák wrote:
>>> Hi everybody,
>>>
>>> Some distros seem to care about the size of Mesa, so I came up with
>>> this little patch.
>>>
>>> It puts r600g and radeonsi into r300_dri.so. The result is one shared
>>> library which contains all three drivers. Also, all driver loaders in
>>> Mesa should now always load the r300 driver instead of r600 and
>>> radeonsi.
>>>
>>> The radeon winsys is created first, which then creates the correct
>>> screen (r300, r600, or radeonsi) according to the PCI ID.
>>>
>>> The libGL loader has actually been ignoring the driver name from the X
>>> server for quite some time, so nothing needs to be done for this
>>> outside of Mesa.
>>>
>>> This is for *_dri.so only, the other targets are still separate and
>>> probably broken with this patch. (VDPAU, XvMC, egl-gallium, OpenCL?)
>>>
>>> What's missing:
>>> - do the same for the other targets/APIs
>>> - remove r600 and radeonsi targets and clean up the build system
>>>
>>> Original files without debugging symbols:
>>>    5.9MB r300_dri.so
>>>    6.5MB r600_dri.so
>>>    5.7MB radeonsi_dri.so
>>> Megaradeon:
>>>    7.0MB r300_dri.so (all 3 drivers)
>>>
>>> If somebody who cares about the size of Mesa wants to finish this up,
>>> the patch is attached. This is only a proof that it's not really
>>> difficult. What remains is mostly just build system work.
>> FWIW, I think it would be cleaner to use a new name instead of reusing
>> any existing name.
>>
>>
> FWIW currently only radeon drivers are split in such a way - freedreno and
> nouveau have been using such separation at winsys level as far back as I can
> remember.
>
> Any thoughts about backwards compatibility - old loader (libGL, libEGL etc.)
> and new r300_dri? Example: X/ddx requests r600_dri, whereas it does not exist.
>
> If the above is not a concern, then a nicer approach would be to rename the
> classic radeon to r100/radeon-vieux, and use radeon for the gallium driver
> (idea borrowed from nouveau). Otherwise we will need to create hardlink for
> each gallium driver.

The whole approach sounds like a good idea to me.

Renaming the old driver would probably work (with a little confusion on 
the users side of course), but our marketing recently suggested a 
different name. We should discuss that internally at AMD first.

Christian.

>
> Emil
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list