* [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 @ 2013-08-20 10:10 Jonathan Liu 2013-08-20 10:24 ` Martin Jansa 0 siblings, 1 reply; 5+ messages in thread From: Jonathan Liu @ 2013-08-20 10:10 UTC (permalink / raw) To: openembedded-core 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. 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 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 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 0 siblings, 1 reply; 5+ messages in thread From: Martin Jansa @ 2013-08-20 10:24 UTC (permalink / raw) To: Jonathan Liu; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 2813 bytes --] 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. > > 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 -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 2013-08-20 10:24 ` Martin Jansa @ 2013-08-20 10:41 ` Jonathan Liu 2013-08-20 21:09 ` Martin Jansa 0 siblings, 1 reply; 5+ messages in thread From: Jonathan Liu @ 2013-08-20 10:41 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-core 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 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 2013-08-20 10:41 ` Jonathan Liu @ 2013-08-20 21:09 ` Martin Jansa 2013-08-20 22:42 ` Jonathan Liu 0 siblings, 1 reply; 5+ messages in thread From: Martin Jansa @ 2013-08-20 21:09 UTC (permalink / raw) To: Jonathan Liu; +Cc: openembedded-core [-- Attachment #1: Type: text/plain, Size: 3888 bytes --] On Tue, Aug 20, 2013 at 08:41:03PM +1000, Jonathan Liu wrote: > 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 But this one is from llvm3.3-dev package which isn't installed by default, isn't it in your setup? > 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 > -- Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 205 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] mesa: enable additional drivers for gallium-llvm x86/x86-64 2013-08-20 21:09 ` Martin Jansa @ 2013-08-20 22:42 ` Jonathan Liu 0 siblings, 0 replies; 5+ messages in thread From: Jonathan Liu @ 2013-08-20 22:42 UTC (permalink / raw) To: Martin Jansa; +Cc: openembedded-core On 21/08/2013 7:09 AM, Martin Jansa wrote: > On Tue, Aug 20, 2013 at 08:41:03PM +1000, Jonathan Liu wrote: >> 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 > But this one is from llvm3.3-dev package which isn't installed by > default, isn't it in your setup? Right. It's in llvm3.3-dev. I have been testing it in my dev image which includes the dev packages. It needs to be moved into the main package. Regards, Jonathan > >> 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 ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-08-20 22:47 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 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 2013-08-20 21:09 ` Martin Jansa 2013-08-20 22:42 ` Jonathan Liu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox