[meta-freescale] Removing gpu-viv-bin-mx6q from custom image

Daiane Angolini daiane.list at gmail.com
Tue Jun 30 06:49:04 PDT 2015


On Tue, Jun 30, 2015 at 10:37 AM, Jean-Michel Hautbois
<jhautbois at gmail.com> wrote:
> 2015-06-30 15:29 GMT+02:00 Daiane Angolini <daiane.list at gmail.com>:
>> On Tue, Jun 30, 2015 at 10:20 AM, Jean-Michel Hautbois
>> <jhautbois at gmail.com> wrote:
>>> 2015-06-30 14:13 GMT+02:00 Daiane Angolini <daiane.list at gmail.com>:
>>>> On Tue, Jun 30, 2015 at 9:01 AM, Jean-Michel Hautbois
>>>> <jhautbois at gmail.com> wrote:
>>>>> Hi Daiane,
>>>>>
>>>>> 2015-06-30 13:37 GMT+02:00 Daiane Angolini <daiane.list at gmail.com>:
>>>>>> On Tue, Jun 30, 2015 at 2:33 AM, Jean-Michel Hautbois
>>>>>> <jhautbois at gmail.com> wrote:
>>>>>>> Hi !
>>>>>>>
>>>>>>> I have a custom image for a I.MX6 board and I don't need to have the
>>>>>>> gpu-viv-bin-mx6q package installed. I am depending in my image on
>>>>>>> core-image-base and I don't add it in the EXTRA_IMAGE_INSTALL variable. But
>>>>>>> I still get it installed.
>>>>>>>
>>>>>>> What is it installed by and how can I remove it ?
>>>>>>
>>>>>> The complete BSP is built targeting the maximum use of GPU
>>>>>> acceleration for any imx6Q boards. That's why you cannot "remove" GPU
>>>>>> packages. Too many dependencies making you use it by default.
>>>>>>
>>>>>> You can try to blacklist it
>>>>>> (http://www.yoctoproject.org/docs/1.8/mega-manual/mega-manual.html#ref-classes-blacklist)
>>>>>>
>>>>>> Or, you can override several BSP configurations:
>>>>>>
>>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/meta-fsl-arm/tree/conf/machine/include/imx-base.inc#n23
>>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/meta-fsl-arm/tree/conf/machine/include/imx-base.inc#n94
>>>>>> (from line 94 to 108)
>>>>>
>>>>> Just tested to add this to my custom machine :
>>>>> XSERVER_DRIVER_mx6 ?= ""
>>>>> PREFERRED_PROVIDER_virtual/egl_mx6 ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles1_mx6q ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles1_mx6dl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles1_mx6sx ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles1_mx6sl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles2_mx6q ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles2_mx6dl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles2_mx6sx ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgles2_mx6sl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgl_mx6q ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgl_mx6dl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgl_mx6sx ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libgl_mx6sl ?= ""
>>>>> PREFERRED_PROVIDER_virtual/libg2d_mx6 ?= ""
>>>>>
>>>>> But the following command still shows gpu-viv-bin-mx6q :
>>>>> bitbake -g my-image && cat pn-depends.dot | grep -v -e '-native' |
>>>>> grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq
>>>>
>>>>
>>>> I would use a stronger assignemnt instead of ?=
>>>> (http://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.html#setting-a-default-value)
>>>>
>>>> Maybe imx-base.inc from BSP is stronger than you machine config file.
>>>>
>>>> However, maybe I forgot one BSP dependency. Which package your
>>>> dependency graph say is bringing the vpu package?
>>>
>>> You mean bitbake -g gpu-viv-bin-mx6q ?
>>> Or something else ?
>>
>> I though about using the same command line you shared before:
>>
>>>>> bitbake -g my-image && cat pn-depends.dot | grep -v -e '-native' |
>>>>> grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq
>>
>> But without the grep's
>>
>> Daiane
>>>
>>> JM
>
> Well, it is quite big, I grepped on "gpu-viv" to start :
> "gpu-viv-bin-mx6q" [label="gpu-viv-bin-mx6q
> 1:3.10.17-1.0.2-hfp-r0\n/run/media/jm/SSD_JM/Projets/veobox3/poky/meta-fsl-arm/recipes-graphics/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q_3.10.17-1.0.2-hfp.bb"]
> "gpu-viv-bin-mx6q" -> "virtual/arm-poky-linux-gnueabi-gcc"
> "gpu-viv-bin-mx6q" -> "mesa"
> "gpu-viv-bin-mx6q" -> "libxext"
> "gpu-viv-bin-mx6q" -> "virtual/arm-poky-linux-gnueabi-compilerlibs"
> "gpu-viv-bin-mx6q" -> "virtual/libc"
> "gpu-viv-bin-mx6q" -> "libxfixes"
> "gpu-viv-bin-mx6q" -> "libxdamage"
> "gpu-viv-bin-mx6q" -> "virtual/libx11"
> "gpu-viv-bin-mx6q" -> "libdrm" [style=dashed]
> "gpu-viv-bin-mx6q" -> "libclc-mx6" [style=dashed]
> "gpu-viv-bin-mx6q" -> "libglslc-mx6" [style=dashed]
> "gpu-viv-bin-mx6q" -> "gpu-viv-bin-mx6q" [style=dashed]
> "gpu-viv-bin-mx6q" -> "gpu-viv-bin-mx6q-dev" [style=dashed]
>
>
> If you want everything, I will paste it, but not sure it would be useful ?

Well I expected it to be huge. The idea here is to try to understand
which are the configuration which is bringing the features vivante
PROVIDES.

For example, it looks like you are using X11, even not using X11. You
can think about remove it from DISTRO_FEATURES.

What happens is something like: x11 lib -> GL -> vivante

Another possible is opengl on DISTRO_FEATURES. Have you double checked
it? It may bring mesa (among another other packages which can bring
mesa). Take a look in mesa bbappend

http://git.yoctoproject.org/cgit/cgit.cgi/meta-fsl-arm/tree/recipes-graphics/mesa/mesa_%25.bbappend

What was the result of blacklist'ing the package name?


Daiane
>
> JM


More information about the meta-freescale mailing list