[yocto] [meta-raspberrypi][PATCH v2 00/13] Support for VC4 graphics driver

piotr.lewicki piotr.lewicki at elfin.de
Tue May 24 02:59:26 PDT 2016


I have tried these patches, but there were some hunks and errors during 
applying to current master revision 
(69840c0bbe03c2e61601e2377c8e2adc264e0478).
Building 'rpi-hwup-image' passed, but while building 'rpi-test-image' 
(omxplayer recipe) I have noticed some errors due to missing files:
- IL/OMX_Core.h
- VG/openvg.h
- bcm_host.h

I'm attaching omxplayer_build_errors.txt with build log and my patch 
with changes created by Herve (adapted to current master revision) - 
Support_for_VC4_graphics_driver.patch (Herve- if you decide to use that 
and resend v3 of patches - please remove my TODO from 
"conf/machine/include/rpi-base.inc"

Could you take a look at that and help me resolve those issues?


I currently have a problem that I'm forced to use Raspbian because 
playing FHD/1080p videos with omxplayer from Yocto runs choppy (I'm not 
sure if that's the right word, but playback is not smooth) while with 
Raspbian it works perfect.
Do you think that enabling VC4 graphics driver can solve my issue?
Did any of you experienced similar problems? Do you have some other 
solution or do you know what's the cause of this?


Thanks,
Piotr Lewicki


On 20.05.2016 13:51, Herve Jourdain wrote:
> This v2 series addresses the following issues with the first series:
> a. Fix the 4.4.10 kernel revision
> b. Effectively add vc4-kms-v3d overlay to the list of overlays to build (forgotten previously)
> c. Make the parameter to the v4c-kms-v3d overlay configurable
> d. Add default values for the cma parameter to the v4c-kms-v3d overlay, depending on the board (and the memory it has)
>
> This patch series enables the support for the VC4 graphics driver from Eric Anholt.
> There was a previous patch series by Javier Martinez Canillas, but it required use of a different kernel.
> VC4 is now supported in the raspberrypi official kernel, at least for 4.4.9+.
> The support in 4.1 exists, but it is NOT STABLE, so it has been deemed unreasonable to support VC4 with 4.1 kernels.
>
> THEREFORE, VC4 graphics is supported ONLY for kernel versions 4.4.9 and later.
>
> This patch series proposes to support VC4 by only adding 'vc4graphics' to MACHINE_FEATURES, for raspberrypi. If this is set, it will trigger all the necessary configuration/changes to use the VC4 driver, including mesa/wayland/weston currently, and adding the overlay required.
> In order for this series to work, some previous patches are needed (support for .dtbo, and fix of the mesa packaging when there is no DRI driver).
> The memory reserved for the VC4 driver has default values depending on the version of the board used, but it can be configured by setting VC4_CMA_SIZE to a value supported by the overlay ('cma-256', 'cma-192', 'cma-128', 'cma-96', 'cma-64').
> 'cma-256' is the recommended value, but it might not be possible on boards with 512MB or DRAM, or less...
> 'cma-64' is known to not being able to support FHD/1080p.
>
> It was tested with wayland/weston, without the support for X11.
>
> This patch series depends on two other patch series previously posted, that enable the support for .dtbo overlay files.
>
> Herve Jourdain (13):
>    rpi-default-providers.inc: change default providers to support
>      vc4graphics
>    rpi-base.inc: add vc4-kms-v3d to the overlays to support vc4graphics
>    raspberrypi.conf: set the default value of VC4_CMA_SIZE to support
>      vc4graphics
>    raspberrypi0.conf: set the default value of VC4_CMA_SIZE to support
>      vc4graphics
>    raspberrypi2.conf: set the default value of VC4_CMA_SIZE to support
>      vc4graphics
>    raspberrypi3.conf: set the default value of VC4_CMA_SIZE to support
>      vc4graphics
>    firmware.inc: bump version to support vc4graphics
>    rpi-config_git.bb: add v4c overlay to config.txt to support
>      vc4graphics
>    wayland/weston_%.bbappend: modify configuration options to support
>      vc4graphics
>    weston/weston_%.bbappend: modify configuration options to support
>      vc4graphics
>    mesa_%.bbappend: new file to add the correct configuration options to
>      support vc4graphics
>    linux-raspberrypi_4.4.bb: bump the kernel revision to 4.4.10 to
>      support vc4graphics
>    linux-rpi.inc: add the configuration options required to support
>      vc4graphics
>
>   conf/machine/include/rpi-base.inc              |  1 +
>   conf/machine/include/rpi-default-providers.inc |  8 ++++----
>   conf/machine/raspberrypi.conf                  |  2 ++
>   conf/machine/raspberrypi0.conf                 |  2 ++
>   conf/machine/raspberrypi2.conf                 |  2 ++
>   conf/machine/raspberrypi3.conf                 |  2 ++
>   recipes-bsp/bootfiles/rpi-config_git.bb        | 10 +++++++++-
>   recipes-bsp/common/firmware.inc                |  4 ++--
>   recipes-graphics/mesa/mesa_%.bbappend          |  4 ++++
>   recipes-graphics/wayland/weston_%.bbappend     |  6 ++----
>   recipes-graphics/weston/weston_%.bbappend      | 13 +++++++------
>   recipes-kernel/linux/linux-raspberrypi_4.4.bb  |  4 ++--
>   recipes-kernel/linux/linux-rpi.inc             | 10 ++++++++++
>   13 files changed, 49 insertions(+), 19 deletions(-)
>   create mode 100644 recipes-graphics/mesa/mesa_%.bbappend
>

-------------- next part --------------
| In file included from linux/RBP.h:45:0,
|                  from linux/RBP.cpp:22:
| ./DllBCM.h:34:22: fatal error: bcm_host.h: No such file or directory
| compilation terminated.
| make: *** [linux/RBP.o] Error 1
| make: *** Waiting for unfinished jobs....
| In file included from SubtitleRenderer.cpp:27:0:
| SubtitleRenderer.h:30:23: fatal error: VG/openvg.h: No such file or directory
| compilation terminated.
| make: *** [SubtitleRenderer.o] Error 1
| In file included from OMXCore.h:32:0,
|                  from OMXVideo.h:25,
|                  from OMXVideo.cpp:28:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| make: *** [OMXVideo.o] Error 1
| In file included from OMXCore.h:32:0,
|                  from OMXCore.cpp:31:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| make: *** [OMXCore.o] Error 1
| In file included from OMXCore.h:32:0,
|                  from OMXAudio.h:34,
|                  from OMXAudio.cpp:27:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| make: *** [OMXAudio.o] Error 1
| In file included from OMXCore.h:32:0,
|                  from OMXClock.h:27,
|                  from OMXReader.cpp:29:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| In file included from OMXCore.h:32:0,
|                  from OMXClock.h:27,
|                  from OMXPlayerAudio.h:32,
|                  from OMXPlayerAudio.cpp:28:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| In file included from OMXCore.h:32:0,
|                  from OMXClock.h:27,
|                  from OMXClock.cpp:32:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| In file included from OMXCore.h:32:0,
|                  from OMXClock.h:27,
|                  from OMXPlayerSubtitles.h:23,
|                  from OMXPlayerSubtitles.cpp:19:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| In file included from OMXCore.h:32:0,
|                  from OMXClock.h:27,
|                  from OMXPlayerVideo.h:30,
|                  from OMXPlayerVideo.cpp:28:
| DllOMX.h:36:25: fatal error: IL/OMX_Core.h: No such file or directory
| compilation terminated.
| make: *** [OMXReader.o] Error 1
| make: *** [OMXPlayerAudio.o] Error 1
| make: *** [OMXClock.o] Error 1
| make: *** [OMXPlayerSubtitles.o] Error 1
| make: *** [OMXPlayerVideo.o] Error 1
| ERROR: oe_runmake failed
| ERROR: Function failed: do_compile (log file is located at /home/piotr.lewicki/yocto-raspberry/pi3-16.05.19/build/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/omxplayer/git-r4/temp/log.do_compile.6167)
ERROR: Task 928 (/home/piotr.lewicki/yocto-raspberry/pi3-16.05.19/layers/meta-raspberrypi/recipes-multimedia/omxplayer/omxplayer_git.bb, do_compile) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3680 tasks of which 3639 didn't need to be rerun and 1 failed.
Waiting for 0 running tasks to finish:

Summary: 1 task failed:
  /home/piotr.lewicki/yocto-raspberry/pi3-16.05.19/layers/meta-raspberrypi/recipes-multimedia/omxplayer/omxplayer_git.bb, do_compile
  Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Support_for_VC4_graphics_driver.patch
Type: text/x-patch
Size: 8382 bytes
Desc: not available
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20160524/c7faefbb/attachment.bin>


More information about the yocto mailing list