Difference between revisions of "Buildroot:GSoC2014 Multimedia"
m |
|||
(29 intermediate revisions by 3 users not shown) | |||
Line 4: | Line 4: | ||
From the 2013 Google Summer of Code: | From the 2013 Google Summer of Code: | ||
* Pandaboard (TI OMAP4) | * Pandaboard (TI OMAP4) | ||
+ | ** <strike>3D acceleration: normally supported by the <tt>ti-gfx</tt> package. Should work with EGL, support under X.org unknown.</strike> | ||
+ | *** No more upstream support (in TI SDK or IMG DDK) since a while. No need to spend time on it right now. | ||
+ | ** video decoding acceleration: unknown. | ||
+ | ** Misc: how does <tt>gst-omapfb</tt> fit in the picture? | ||
* BeagleBoneBlack (TI AM335x) | * BeagleBoneBlack (TI AM335x) | ||
+ | ** 3D acceleration: normally supported by the <tt>ti-gfx</tt> package. Should work with EGL, support under X.org unknown. Was not tested last year, since 3D acceleration was not ready yet at the time. | ||
+ | *** 3D acceleration OK in framebuffer. X.org support is not tested in latest TI SDK versions, didn't try it for now. | ||
+ | ** video decoding acceleration: unknown. | ||
* BeagleBoard XM (TI OMAP3) | * BeagleBoard XM (TI OMAP3) | ||
+ | ** 3D acceleration: normally supported by the <tt>ti-gfx</tt> package. Should work with EGL, support under X.org unknown. | ||
+ | ** video decoding acceleration: unknown. | ||
* SABRE (Freescale i.MX6) | * SABRE (Freescale i.MX6) | ||
+ | ** 3D acceleration: normally supported by the <tt>gpu-viv-bin-mx6q</tt> package. Should work with EGL. For X.org, there are some patches pending. | ||
+ | ** video decoding acceleration: unknown. | ||
* Wandboard (Freescale i.MX6) | * Wandboard (Freescale i.MX6) | ||
+ | ** 3D acceleration: normally supported by the <tt>gpu-viv-bin-mx6q</tt> package. Should work with EGL. For X.org, there are some patches pending. | ||
+ | ** video decoding acceleration: unknown. | ||
* Cubieboard (Allwinner) | * Cubieboard (Allwinner) | ||
+ | ** 3D acceleration: normally supported by the <tt>sunxi-mali</tt> package. Should work with EGL, support under X.org unknown. | ||
+ | ** video decoding acceleration: normally supported by the <tt>sunxi-cedarx</tt> package. Not sure with what they are interfaced, though. | ||
* ODROID-U2 (Samsung Exynos) | * ODROID-U2 (Samsung Exynos) | ||
+ | ** 3D acceleration: not done | ||
+ | ** video decoding acceleration: not done | ||
To buy or get sponsored: | To buy or get sponsored: | ||
− | |||
* An x86 platform with an Intel card (to test full OpenGL support in Mesa) | * An x86 platform with an Intel card (to test full OpenGL support in Mesa) | ||
+ | ** Minnowboard Max could be a candidate, see http://www.minnowboard.org/meet-minnowboard-max/ | ||
+ | ** Thomas has requested sponsoring from CircuitCo on this topic. | ||
* An x86 platform with an AMD APU (ditto mesa3d) | * An x86 platform with an AMD APU (ditto mesa3d) | ||
+ | * A RaspberryPi: | ||
+ | ** 3D acceleration: through the <tt>rpi-userland</tt> package. Works with EGL, support under X.org unknown. | ||
+ | ** video decoding acceleration: through the <tt>rpi-userland</tt> and <tt>gst-omx</tt> packages. | ||
+ | |||
+ | Bonus: | ||
+ | * An x86 platform with an NVidia card | ||
+ | ** using nouveau (to test full OpenGL support in Mesa) | ||
+ | ** using the NVidia blob (to be packaged) | ||
= TODO = | = TODO = | ||
Line 20: | Line 46: | ||
* Support OpenGL on Exynos | * Support OpenGL on Exynos | ||
* Make sure OpenGL on Beagle Bone Black is working | * Make sure OpenGL on Beagle Bone Black is working | ||
+ | ** OK. | ||
* Help mainlining all the pending Buildroot patches related to multimedia | * Help mainlining all the pending Buildroot patches related to multimedia | ||
− | ** http://patchwork.ozlabs.org/patch/278299/ | + | ** [http://patchwork.ozlabs.org/patch/278299/ #278299] : sunxi-cedarx: bump to newer version, use armel2 binaries, add demo |
− | ** http://patchwork.ozlabs.org/patch/278300/ | + | ** [http://patchwork.ozlabs.org/patch/278300/ #278300] : libpng12: new package (needed for #278304) |
− | ** http://patchwork.ozlabs.org/patch/278301/ | + | ** [http://patchwork.ozlabs.org/patch/278301/ #278301] : libpng: ensure libpng12 is installed before libpng (needed for #278300) |
− | ** http://patchwork.ozlabs.org/patch/278304/ | + | ** [http://patchwork.ozlabs.org/patch/278304/ #278304] : glmark2: new package |
− | ** http://patchwork.ozlabs.org/patch/278305/ | + | *** WIP: starting point. |
− | ** http://patchwork.ozlabs.org/patch/336028/ | + | ** [http://patchwork.ozlabs.org/patch/278305/ #278305] : mesa3d-demos: new package |
− | ** http://patchwork.ozlabs.org/patch/336031/ | + | *** WIP. Currently didn't find a driver to run it. |
− | ** http://patchwork.ozlabs.org/patch/336827/ | + | ** [http://patchwork.ozlabs.org/patch/315600/ #315600] : Qt4: adapt for X11 |
− | ** http://patchwork.ozlabs.org/patch/336825/ | + | ** [http://patchwork.ozlabs.org/patch/336028/ #336028] : qt5declarative: Reduce dependencies to GLes2 only |
− | ** http://patchwork.ozlabs.org/patch/336830/ | + | ** [http://patchwork.ozlabs.org/patch/336031/ #336031] : Add support for Vivante xdriver |
− | ** http://patchwork.ozlabs.org/patch/336824/ | + | ** [http://patchwork.ozlabs.org/patch/336827/ #336827] : libva: new package |
− | ** http://patchwork.ozlabs.org/patch/336828/ | + | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099210.html |
− | ** http://patchwork.ozlabs.org/patch/336826/ | + | ** [http://patchwork.ozlabs.org/patch/336825/ #336825] : libva-intel-driver: new package |
− | * | + | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099213.html |
− | * Create | + | ** [http://patchwork.ozlabs.org/patch/336830/ #336830] : ffmpeg: Add libva support |
− | * | + | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099214.html |
− | * | + | ** [http://patchwork.ozlabs.org/patch/336824/ #336824] : libglu: new package |
− | * | + | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099209.html |
+ | ** [http://patchwork.ozlabs.org/patch/336828/ #336828] : libglew: new package | ||
+ | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099212.html | ||
+ | ** [http://patchwork.ozlabs.org/patch/336826/ #336826] : sdl: Add new dependency libglu for opengl support | ||
+ | *** In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099207.html | ||
+ | * Add support for etnaviv (i.MX6 open-source OpenGL implementation) | ||
+ | * Create new packages for (no specific ordering): | ||
+ | ** x86-video-fbturbo driver, see https://github.com/ssvb/xf86-video-fbturbo | ||
+ | ** glamor for 2D acceleration using OpenGL, see: http://www.freedesktop.org/wiki/Software/Glamor/ | ||
+ | ** Qt5 Cinematic Experience demonstration, see http://quitcoding.com/?page=work | ||
+ | ** demo/benchmark application, see https://github.com/prabindh/xgxperf | ||
+ | ** gtk3 | ||
+ | *** WIP. | ||
* Update Webkit | * Update Webkit | ||
+ | ** WIP: still have a make hang in parallel build with make 3.81. | ||
= Weekly reports = | = Weekly reports = | ||
Line 45: | Line 85: | ||
== Week 21 == | == Week 21 == | ||
== Week 22 == | == Week 22 == | ||
+ | |||
+ | === Day 1 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** Defconfig based on beaglebone_defconfig with mainly ti-gfx | ||
+ | ** Kernel boot: OK | ||
+ | ** Init: OK | ||
+ | ** Fail to load ti-gfx module | ||
+ | *** track: fbset missing | ||
+ | * Patchwork | ||
+ | ** #278305 (mesa3d-demos: new package): updating, currently not working | ||
+ | |||
+ | === Day 2 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** Still can't load ti-gfx module | ||
+ | *** Adding fbset eliminated of course one error | ||
+ | *** now /dev/fb0 is not found | ||
+ | |||
+ | * Patchwork | ||
+ | ** #278305 (mesa3d-demos: new package): updated and rebased on master. Testing build for x86 failed : | ||
+ | *** with DRI i965 driver (depends on X.org and provides full libgl with mesa3d): failed because it needs glew (not yet packaged in BR). | ||
+ | *** with Gallium nouveau driver (provides only libgles and libegl with mesa3d): failed due to linking errors for xdemos/* binaries. No refererences to all OpenGL functions (mesa3d build fine, libs are installed, correct PATH). | ||
+ | *** at least glew is a dependency for full OpenGL/X.org demos. | ||
+ | |||
+ | === Day 3 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** Still can't load ti-gfx module | ||
+ | *** forget to select again OMAP DSS driver between two configs... But even with it /dev/fb0 is still missing. | ||
+ | |||
+ | * Patchwork | ||
+ | ** #278305 (mesa3d-demos: new package): testing build for x86 was not a very good idea, as the support for mesa3d, especially on x86, is very recent and untested. Next builds will be done on RPi's OpenGL implementation. | ||
+ | *** build fine for RPi | ||
+ | *** no problem with the framebuffer, tested some non OpenGL program | ||
+ | *** but failed to execute es2gears_screen (mesa3d-demos) with error "EGLUT: EGL_MESA_screen_surface is not supported". | ||
+ | |||
+ | === Day 4 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** have to select FB_DA8XX_TDA998X in kernel config to have /dev/fb0 | ||
+ | ** Still can't load ti-gfx modules, problem with symbols exportation. Have those errors : | ||
+ | *** pvrsrvkm: Unknown symbol v7_dma_map_area (err 0) | ||
+ | *** pvrsrvkm: Unknown symbol v7_dma_flush_range (err 0) | ||
+ | |||
+ | === Day 5 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** ti-gfx modules are loaded, have to apply this patch : https://github.com/RobertCNelson/stable-kernel/blob/b00edc3576118e9ed3e987f9a2a3499b7dd792f5/patches/omap_sgx/0001-arm-Export-cache-flush-management-symbols-when-MULTI.patch | ||
+ | |||
+ | === Day 6 === | ||
+ | |||
+ | * OpenGL on BeagleBone Black | ||
+ | ** ti-gfx OpenGL demos run fine in framebuffer, it's OK | ||
+ | ** sent patches to improve OpenGL support on BBB and fix fbset dependency for ti-gfx | ||
+ | |||
+ | * Patchwork | ||
+ | ** #278305 (mesa3d-demos: new package): no solution to run it on RPi. | ||
+ | |||
+ | === Week's summary === | ||
+ | |||
+ | OpenGL on BBB is supported out of the box in framebuffer, demos run fine | ||
+ | |||
== Week 23 == | == Week 23 == | ||
+ | |||
+ | === Day 1 === | ||
+ | |||
+ | * ti-gfx: bump SDK version to 5_01_01_01, tested on BBB, patch sent | ||
+ | |||
+ | * updating package/webkit to last version | ||
+ | |||
+ | === Week's summary === | ||
+ | |||
+ | * bump WebKit to 2.4.3 | ||
+ | ** need Pango >= 1.30.0 | ||
+ | *** try Pango 1.36.3 (last version): fails, error during reconfigure: "gtk-doc.make:270: error: HAVE_GTK_DOC does not appear in AM_CONDITIONAL". Seems to need gtk-doc-am for an obscure raison. No patch yet. | ||
+ | *** try Pango 1.30.1: OK. Build fine, good enough for WebKit. | ||
+ | *** bump Pango to 1.30.1 | ||
+ | ** enable EGL/GLES2 support fails. Doesn't find EGL/egl.h while it is there (finds well GLES2/gl2.h). | ||
+ | *** disable acceleration for now | ||
+ | * had to provide again AR_FLAGS="cru" in WEBKIT_CONF_ENV to prevent ar to make thin archives and fix the error: `x' cannot be used on thin archives. | ||
+ | * have a strange deadlock with parallel make, currently only on the build server (builds fine with -j8 on my laptop). make block and freeze on libWebCoreSVG.la (while: CXXLD libWebCoreSVG.la). Fine with -j1 (well, if >10 hours build time is fine). Is it the make version? Will try in a Debian chroot. | ||
+ | |||
+ | * GTK3: new package | ||
+ | ** still some errors I resolve step by step. | ||
+ | |||
== Week 24 == | == Week 24 == | ||
+ | |||
+ | === Day 1 === | ||
+ | |||
+ | * bump WebKit to 2.4.3 | ||
+ | ** the problem for finding EGL/egl.h only occurs with rpi-userland for now. With ti-gfx it's found. | ||
+ | *** libXcomposite and libXdamage are also needed with GLES/EGL (not only GL as previously). | ||
+ | |||
+ | === Week's summary === | ||
+ | |||
+ | * test ti-gfx on Pandaboard: Pandaboard (and OMAP4 in general) is no longer supported by the SDK since a while (a version 4_04_XX_XX). As Pandaboard is used less and less and that there is no viable solution, this topic is abandoned for now. | ||
+ | |||
+ | * test ti-gfx on Bragleboard xM: for now I have an error during the compilation of the kernel's module: | ||
+ | <source>/home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c: | ||
+ | In function ‘OMAPLFBWaitForVSync’: | ||
+ | /home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c:180:92: | ||
+ | error: ‘struct omap_dss_device’ has no member named ‘output’ | ||
+ | #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = | ||
+ | (dev) != NULL ? (dev)->output->manager : NULL | ||
+ | ^ | ||
+ | /home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c:821:2: | ||
+ | note: in expansion of macro ‘OMAP_DSS_MANAGER’ | ||
+ | OMAP_DSS_MANAGER(psDSSMan, psDSSDev);</source> | ||
+ | |||
+ | * bump of imx-lib: Gary Bisson sent patches and I was not as advanced as he. I will test his next series. | ||
+ | |||
+ | * webkit: still not found a solution for the parallel make hang with make 3.81. | ||
+ | |||
+ | * libgtk3: need to bump libglib2 and pango. Have an error for pango related to font backend not found. | ||
+ | |||
== Week 25 == | == Week 25 == | ||
+ | |||
+ | === Day 1 === | ||
+ | |||
+ | * libgtk3 | ||
+ | ** pango OK: HarfBuzz is needed to build Pango. Configure does not return an error if HarfBuzz is missing, but without HarfBuzz it can't enable any backends. | ||
+ | ** cairo: patch to add freetype support | ||
+ | ** libgtk3: still patching to build host-libgtk3. Patching to reduce dependencies (gdk backends) for host-libgtk3 | ||
+ | ** Branch here: https://github.com/Eksel/buildroot/tree/libgtk3 | ||
+ | |||
+ | === Day 2 === | ||
+ | |||
+ | * libgtk3 | ||
+ | ** first series sent to bump libglib2 and pango, and add freetype support to cairo | ||
+ | ** WIP for the patch wich reduce dependencies for host-libgtk3 | ||
+ | |||
+ | === Day 3 === | ||
+ | |||
+ | * libgtk3 | ||
+ | ** looked at Eric le Bihan's branch to add libgtk3: https://github.com/elebihan/buildroot/tree/libgtk3-support | ||
+ | ** will adapt Eric's way of building host-libgtk3 without a patch | ||
+ | ** v2 of series sent | ||
+ | ** still a configure error: Package cairo-gobject was not found | ||
+ | |||
+ | === Day 4 === | ||
+ | |||
+ | * libgtk3 | ||
+ | ** cairo: add gobject support (libglib2 dependency) | ||
+ | ** libgtk3: build error: "cairo.h" No such file or directory. No explanation for now. | ||
+ | ** test Eric's way of building host-libgtk3 | ||
+ | |||
+ | === Day 5 === | ||
+ | |||
+ | * libgtk3 | ||
+ | ** finally builds! | ||
+ | ** added at-spi-core and at-spi-atk as at-spi-atk is a dependency for GTK3's accessibility module. | ||
+ | ** still have Eric's workaround for alignment test failure in at-spi-core. Need a better solution. | ||
+ | ** for all versions of at-spi-core and at-spi-atk > 2.10.2, have this error: | ||
+ | <source>Applying buildroot-libtool-v2.4.patch using patch: | ||
+ | patching file ltmain.sh | ||
+ | Hunk #1 FAILED at 1416. | ||
+ | Hunk #2 FAILED at 2962. | ||
+ | Hunk #3 succeeded at 7964 with fuzz 2 (offset 1281 lines). | ||
+ | Hunk #4 succeeded at 10554 (offset 1297 lines). | ||
+ | 2 out of 4 hunks FAILED -- saving rejects to file ltmain.sh.rej | ||
+ | Patch failed! Please fix buildroot-libtool-v2.4.patch!</source> | ||
+ | |||
== Week 26 == | == Week 26 == | ||
== Week 27 == | == Week 27 == |
Latest revision as of 11:33, 22 June 2014
Contents
Boards
From the 2013 Google Summer of Code:
- Pandaboard (TI OMAP4)
3D acceleration: normally supported by the ti-gfx package. Should work with EGL, support under X.org unknown.- No more upstream support (in TI SDK or IMG DDK) since a while. No need to spend time on it right now.
- video decoding acceleration: unknown.
- Misc: how does gst-omapfb fit in the picture?
- BeagleBoneBlack (TI AM335x)
- 3D acceleration: normally supported by the ti-gfx package. Should work with EGL, support under X.org unknown. Was not tested last year, since 3D acceleration was not ready yet at the time.
- 3D acceleration OK in framebuffer. X.org support is not tested in latest TI SDK versions, didn't try it for now.
- video decoding acceleration: unknown.
- 3D acceleration: normally supported by the ti-gfx package. Should work with EGL, support under X.org unknown. Was not tested last year, since 3D acceleration was not ready yet at the time.
- BeagleBoard XM (TI OMAP3)
- 3D acceleration: normally supported by the ti-gfx package. Should work with EGL, support under X.org unknown.
- video decoding acceleration: unknown.
- SABRE (Freescale i.MX6)
- 3D acceleration: normally supported by the gpu-viv-bin-mx6q package. Should work with EGL. For X.org, there are some patches pending.
- video decoding acceleration: unknown.
- Wandboard (Freescale i.MX6)
- 3D acceleration: normally supported by the gpu-viv-bin-mx6q package. Should work with EGL. For X.org, there are some patches pending.
- video decoding acceleration: unknown.
- Cubieboard (Allwinner)
- 3D acceleration: normally supported by the sunxi-mali package. Should work with EGL, support under X.org unknown.
- video decoding acceleration: normally supported by the sunxi-cedarx package. Not sure with what they are interfaced, though.
- ODROID-U2 (Samsung Exynos)
- 3D acceleration: not done
- video decoding acceleration: not done
To buy or get sponsored:
- An x86 platform with an Intel card (to test full OpenGL support in Mesa)
- Minnowboard Max could be a candidate, see http://www.minnowboard.org/meet-minnowboard-max/
- Thomas has requested sponsoring from CircuitCo on this topic.
- An x86 platform with an AMD APU (ditto mesa3d)
- A RaspberryPi:
- 3D acceleration: through the rpi-userland package. Works with EGL, support under X.org unknown.
- video decoding acceleration: through the rpi-userland and gst-omx packages.
Bonus:
- An x86 platform with an NVidia card
- using nouveau (to test full OpenGL support in Mesa)
- using the NVidia blob (to be packaged)
TODO
- Support OpenGL on Exynos
- Make sure OpenGL on Beagle Bone Black is working
- OK.
- Help mainlining all the pending Buildroot patches related to multimedia
- #278299 : sunxi-cedarx: bump to newer version, use armel2 binaries, add demo
- #278300 : libpng12: new package (needed for #278304)
- #278301 : libpng: ensure libpng12 is installed before libpng (needed for #278300)
- #278304 : glmark2: new package
- WIP: starting point.
- #278305 : mesa3d-demos: new package
- WIP. Currently didn't find a driver to run it.
- #315600 : Qt4: adapt for X11
- #336028 : qt5declarative: Reduce dependencies to GLes2 only
- #336031 : Add support for Vivante xdriver
- #336827 : libva: new package
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099210.html
- #336825 : libva-intel-driver: new package
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099213.html
- #336830 : ffmpeg: Add libva support
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099214.html
- #336824 : libglu: new package
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099209.html
- #336828 : libglew: new package
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099212.html
- #336826 : sdl: Add new dependency libglu for opengl support
- In Bernd/Yann' series : http://lists.busybox.net/pipermail/buildroot/2014-June/099207.html
- Add support for etnaviv (i.MX6 open-source OpenGL implementation)
- Create new packages for (no specific ordering):
- x86-video-fbturbo driver, see https://github.com/ssvb/xf86-video-fbturbo
- glamor for 2D acceleration using OpenGL, see: http://www.freedesktop.org/wiki/Software/Glamor/
- Qt5 Cinematic Experience demonstration, see http://quitcoding.com/?page=work
- demo/benchmark application, see https://github.com/prabindh/xgxperf
- gtk3
- WIP.
- Update Webkit
- WIP: still have a make hang in parallel build with make 3.81.
Weekly reports
Week 21
Week 22
Day 1
- OpenGL on BeagleBone Black
- Defconfig based on beaglebone_defconfig with mainly ti-gfx
- Kernel boot: OK
- Init: OK
- Fail to load ti-gfx module
- track: fbset missing
- Patchwork
- #278305 (mesa3d-demos: new package): updating, currently not working
Day 2
- OpenGL on BeagleBone Black
- Still can't load ti-gfx module
- Adding fbset eliminated of course one error
- now /dev/fb0 is not found
- Still can't load ti-gfx module
- Patchwork
- #278305 (mesa3d-demos: new package): updated and rebased on master. Testing build for x86 failed :
- with DRI i965 driver (depends on X.org and provides full libgl with mesa3d): failed because it needs glew (not yet packaged in BR).
- with Gallium nouveau driver (provides only libgles and libegl with mesa3d): failed due to linking errors for xdemos/* binaries. No refererences to all OpenGL functions (mesa3d build fine, libs are installed, correct PATH).
- at least glew is a dependency for full OpenGL/X.org demos.
- #278305 (mesa3d-demos: new package): updated and rebased on master. Testing build for x86 failed :
Day 3
- OpenGL on BeagleBone Black
- Still can't load ti-gfx module
- forget to select again OMAP DSS driver between two configs... But even with it /dev/fb0 is still missing.
- Still can't load ti-gfx module
- Patchwork
- #278305 (mesa3d-demos: new package): testing build for x86 was not a very good idea, as the support for mesa3d, especially on x86, is very recent and untested. Next builds will be done on RPi's OpenGL implementation.
- build fine for RPi
- no problem with the framebuffer, tested some non OpenGL program
- but failed to execute es2gears_screen (mesa3d-demos) with error "EGLUT: EGL_MESA_screen_surface is not supported".
- #278305 (mesa3d-demos: new package): testing build for x86 was not a very good idea, as the support for mesa3d, especially on x86, is very recent and untested. Next builds will be done on RPi's OpenGL implementation.
Day 4
- OpenGL on BeagleBone Black
- have to select FB_DA8XX_TDA998X in kernel config to have /dev/fb0
- Still can't load ti-gfx modules, problem with symbols exportation. Have those errors :
- pvrsrvkm: Unknown symbol v7_dma_map_area (err 0)
- pvrsrvkm: Unknown symbol v7_dma_flush_range (err 0)
Day 5
- OpenGL on BeagleBone Black
- ti-gfx modules are loaded, have to apply this patch : https://github.com/RobertCNelson/stable-kernel/blob/b00edc3576118e9ed3e987f9a2a3499b7dd792f5/patches/omap_sgx/0001-arm-Export-cache-flush-management-symbols-when-MULTI.patch
Day 6
- OpenGL on BeagleBone Black
- ti-gfx OpenGL demos run fine in framebuffer, it's OK
- sent patches to improve OpenGL support on BBB and fix fbset dependency for ti-gfx
- Patchwork
- #278305 (mesa3d-demos: new package): no solution to run it on RPi.
Week's summary
OpenGL on BBB is supported out of the box in framebuffer, demos run fine
Week 23
Day 1
- ti-gfx: bump SDK version to 5_01_01_01, tested on BBB, patch sent
- updating package/webkit to last version
Week's summary
- bump WebKit to 2.4.3
- need Pango >= 1.30.0
- try Pango 1.36.3 (last version): fails, error during reconfigure: "gtk-doc.make:270: error: HAVE_GTK_DOC does not appear in AM_CONDITIONAL". Seems to need gtk-doc-am for an obscure raison. No patch yet.
- try Pango 1.30.1: OK. Build fine, good enough for WebKit.
- bump Pango to 1.30.1
- enable EGL/GLES2 support fails. Doesn't find EGL/egl.h while it is there (finds well GLES2/gl2.h).
- disable acceleration for now
- need Pango >= 1.30.0
- had to provide again AR_FLAGS="cru" in WEBKIT_CONF_ENV to prevent ar to make thin archives and fix the error: `x' cannot be used on thin archives.
- have a strange deadlock with parallel make, currently only on the build server (builds fine with -j8 on my laptop). make block and freeze on libWebCoreSVG.la (while: CXXLD libWebCoreSVG.la). Fine with -j1 (well, if >10 hours build time is fine). Is it the make version? Will try in a Debian chroot.
- GTK3: new package
- still some errors I resolve step by step.
Week 24
Day 1
- bump WebKit to 2.4.3
- the problem for finding EGL/egl.h only occurs with rpi-userland for now. With ti-gfx it's found.
- libXcomposite and libXdamage are also needed with GLES/EGL (not only GL as previously).
- the problem for finding EGL/egl.h only occurs with rpi-userland for now. With ti-gfx it's found.
Week's summary
- test ti-gfx on Pandaboard: Pandaboard (and OMAP4 in general) is no longer supported by the SDK since a while (a version 4_04_XX_XX). As Pandaboard is used less and less and that there is no viable solution, this topic is abandoned for now.
- test ti-gfx on Bragleboard xM: for now I have an error during the compilation of the kernel's module:
/home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c:
In function ‘OMAPLFBWaitForVSync’:
/home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c:180:92:
error: ‘struct omap_dss_device’ has no member named ‘output’
#define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man =
(dev) != NULL ? (dev)->output->manager : NULL
^
/home/hadrienb/buildroot/output/build/ti-gfx-5_01_01_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c:821:2:
note: in expansion of macro ‘OMAP_DSS_MANAGER’
OMAP_DSS_MANAGER(psDSSMan, psDSSDev);
- bump of imx-lib: Gary Bisson sent patches and I was not as advanced as he. I will test his next series.
- webkit: still not found a solution for the parallel make hang with make 3.81.
- libgtk3: need to bump libglib2 and pango. Have an error for pango related to font backend not found.
Week 25
Day 1
- libgtk3
- pango OK: HarfBuzz is needed to build Pango. Configure does not return an error if HarfBuzz is missing, but without HarfBuzz it can't enable any backends.
- cairo: patch to add freetype support
- libgtk3: still patching to build host-libgtk3. Patching to reduce dependencies (gdk backends) for host-libgtk3
- Branch here: https://github.com/Eksel/buildroot/tree/libgtk3
Day 2
- libgtk3
- first series sent to bump libglib2 and pango, and add freetype support to cairo
- WIP for the patch wich reduce dependencies for host-libgtk3
Day 3
- libgtk3
- looked at Eric le Bihan's branch to add libgtk3: https://github.com/elebihan/buildroot/tree/libgtk3-support
- will adapt Eric's way of building host-libgtk3 without a patch
- v2 of series sent
- still a configure error: Package cairo-gobject was not found
Day 4
- libgtk3
- cairo: add gobject support (libglib2 dependency)
- libgtk3: build error: "cairo.h" No such file or directory. No explanation for now.
- test Eric's way of building host-libgtk3
Day 5
- libgtk3
- finally builds!
- added at-spi-core and at-spi-atk as at-spi-atk is a dependency for GTK3's accessibility module.
- still have Eric's workaround for alignment test failure in at-spi-core. Need a better solution.
- for all versions of at-spi-core and at-spi-atk > 2.10.2, have this error:
Applying buildroot-libtool-v2.4.patch using patch:
patching file ltmain.sh
Hunk #1 FAILED at 1416.
Hunk #2 FAILED at 2962.
Hunk #3 succeeded at 7964 with fuzz 2 (offset 1281 lines).
Hunk #4 succeeded at 10554 (offset 1297 lines).
2 out of 4 hunks FAILED -- saving rejects to file ltmain.sh.rej
Patch failed! Please fix buildroot-libtool-v2.4.patch!