From: Jonathan Liu <net147@gmail.com>
To: Martin Jansa <martin.jansa@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64
Date: Tue, 20 Aug 2013 20:41:03 +1000 [thread overview]
Message-ID: <521347BF.7090507@gmail.com> (raw)
In-Reply-To: <20130820102427.GE522@jama>
On 20/08/2013 8:24 PM, Martin Jansa wrote:
> On Tue, Aug 20, 2013 at 08:10:41PM +1000, Jonathan Liu wrote:
>> The additional Gallium drivers are needed for open source ATI Radeon
>> and NVIDIA graphics drivers.
>>
>> The radeonsi and r600 drivers require LLVM 3.3 built with r600
>> PACKAGECONFIG so they must be explicitly enabled by adding r600 to the
>> mesa PACKAGECONFIG.
> BTW: I just got interesting question about egl_gallium:
>
> libEGL warning: Could not open driver /usr/lib/egl/egl_gallium.so
> (libLLVM-3.3.so: cannot open shared object file: No such file or
> directory)
> Could not initialize egl display
>
> EGL error
> Aborted
> root@qemux86:~# ls -alh /usr/lib/llvm3.3/
> drwxr-xr-x 2 root root 1.0K Aug 20 02:47 .
> drwxr-xr-x 35 root root 10.0K Aug 20 02:47 ..
> -rwxr-xr-x 1 root root 15.8M Aug 19 14:02 libLLVM-3.3.so
> -rwxr-xr-x 1 root root 78.2K Aug 19 14:02 libLTO.so
> -rwxr-xr-x 1 root root 10.1K Aug 19 14:02 libprofile_rt.so
>
> I don't know yet why it worked in my tests when I was updating mesa and
> llvm, but it's true that we need to make sure that mesa finds
> libLLVM-3.3.so in versioned subdirectory in runtime.
LLVM has been working fine for me with llvmpipe (Intel GMA 3600 -
PowerVR-based), radeon (ATI Radeon HD5450) and nouveau (NVIDIA ION
GeForce 9400M) drivers.
There is a symbolic link in /usr/lib:
$ cd /usr/lib
$ ls -l libLLVM-3.3.so
lrwxrwxrwx 1 root root 22 Aug 19 21:03 libLLVM-3.3.so ->
llvm3.3/libLLVM-3.3.so
I intend to submit xf86-video-ati and xf86-video-nouveau to
meta-openembedded later this week. I tested this change using those
recipes, linux-firmware (needed for ATI 3D acceleration) and the
following kernel options:
CONFIG_DRM_RADEON=m
CONFIG_DRM_RADEON_KMS=y
CONFIG_DRM_NOUVEAU=y
Regards,
Jonathan
>
>> Signed-off-by: Jonathan Liu <net147@gmail.com>
>> ---
>> meta/recipes-graphics/mesa/mesa.inc | 4 ++++
>> 1 file changed, 4 insertions(+)
>>
>> diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
>> index 447e186..e985d67 100644
>> --- a/meta/recipes-graphics/mesa/mesa.inc
>> +++ b/meta/recipes-graphics/mesa/mesa.inc
>> @@ -50,6 +50,10 @@ PACKAGECONFIG[egl] = "--enable-egl --with-egl-platforms=${EGL_PLATFORMS}, --disa
>> PACKAGECONFIG[openvg] = "--enable-openvg, --disable-openvg"
>>
>> GALLIUMDRIVERS = "swrast"
>> +GALLIUMDRIVERS_LLVM33 = "${@base_contains('PACKAGECONFIG', 'r600', 'radeonsi,r600', '', d)}"
>> +GALLIUMDRIVERS_LLVM = "r300,svga,nouveau${@base_version_less_or_equal('MESA_LLVM_RELEASE', '3.2', '', ',${GALLIUMDRIVERS_LLVM33}', d)}"
>> +GALLIUMDRIVERS_append_x86 = "${@base_contains('PACKAGECONFIG', 'gallium-llvm', ',${GALLIUMDRIVERS_LLVM}', '', d)}"
>> +GALLIUMDRIVERS_append_x86-64 = "${@base_contains('PACKAGECONFIG', 'gallium-llvm', ',${GALLIUMDRIVERS_LLVM}', '', d)}"
>> # keep --with-gallium-drivers separate, because when only one of gallium versions is enabled, other 2 were adding --without-gallium-drivers
>> PACKAGECONFIG[gallium] = "--with-gallium-drivers=${GALLIUMDRIVERS}, --without-gallium-drivers"
>> PACKAGECONFIG[gallium-egl] = "--enable-gallium-egl, --disable-gallium-egl"
>> --
>> 1.8.3.4
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
next prev parent reply other threads:[~2013-08-20 10:46 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-20 10:10 [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 Jonathan Liu
2013-08-20 10:24 ` Martin Jansa
2013-08-20 10:41 ` Jonathan Liu [this message]
2013-08-20 21:09 ` Martin Jansa
2013-08-20 22:42 ` Jonathan Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=521347BF.7090507@gmail.com \
--to=net147@gmail.com \
--cc=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.