Re: yocto 1.6 - beaglebone black - cape manager

Denys Dmytriyenko

On Mon, Oct 06, 2014 at 02:57:08PM -0600, Gary Thomas wrote:
On 2014-10-06 13:43, Denys Dmytriyenko wrote:
On Thu, Sep 04, 2014 at 07:02:13PM -0300, Diego Sueiro wrote:
I'm build yocto 1.6, My hardware is beaglebone black I successfull
build system image. But I can't see cape manager.
I need them to use SPI - enable spidev - .
What do i do to build yocto with a cape manager?
As far as I know, you have to use meta-beagleboard
<> (almost 1 year without
any new commit) as your BSP layer to get capemanager support with Yocto.
Take a look here
The kernel version is 3.8.

Here we have good news of having capemanager support on mainline:

Here you have a linux repo with capemanager support:
I don't know if there is any WIP to get this kernel compiled by Yocto/OE.

[I was asked to provide additional comments to this topic - I'm the maintainer
of meta-ti and the author of BeagleBone Black support in meta-yocto-bsp]

I see that Diego has pretty much covered all the basics above. I'll just add
few clarifications and details...

There are few different OE/Yocto BSPs for BeagleBone Black:

1. meta-yocto-bsp provides "reference" BSPs for each of the supported
architectures. One for ARM (BeagleBone Black), one for MIPS, PPC and x86.
The keyword is "reference", as it is based on the mainline kernel/bootloader
and does not support any advanced features or anything not in the upstream
mainline kernel - e.g. no capes, no power management, no hardware
acceleration, no 3D, no PRU, etc. The purpose of this BSP is to have some
basic out-of-box experience for the select hardware platforms within Poky to
evaluate the Yocto Project and OpenEmbedded framework, but not the specific
hardware platforms. For proper and more comprehensive HW support users are
directed to the corresponding official BSPs - meta-intel, meta-ti, meta-fsl
(ARM, PPC), meta-amd, etc. etc.

2. meta-ti is the official Texas Instruments BSP that provides the latest WIP
"staging" kernel and bootloader with most of the advanced features and
peripheral support for the wider range of latest TI platforms, including
BeagleBone Black. Most of the work in the "staging" area is being upstreamed,
so it eventually appears in the mainline kernel and u-boot. It doesn't support
capes on BBB, at least not yet - see below.

3. meta-beagleboard (now defunct) was a split-off from meta-ti few years ago
to concentrate on the development of the BeagleBoard and BeagleBone specifics,
such as capes. At the time it was based on 3.8 kernel and had large patchsets
to add device tree overlays and cape management, among other things. Although,
meta-beagleboard seems to be dead now, the work on the devtree overlays and
cape manager has continued, thanks to Pantelis Antoniou - see the blog post on, linked by Diego above.

The plan always was for meta-ti and meta-beagleboard to meet upstream, hence
meta-ti will eventually have all the necessary pieces to support capes, once
it lands upstream. Meanwhile, TI now concentrates on supporting all the other
advanced features and upstreaming everything to mainline.

BTW, the kernel repo from Robert Nelson (the last link from Diego above) is
now based on the TI "staging" kernel, i.e. the one provided by meta-ti, plus
some additional patches not yet accepted upstream. I might look into adding a
recipe to meta-ti to pull in that tree, but haven't decided yet...
Which, if any, of these choices is suitable for accelerated graphics?
Which device(s) will that choice support? HDMI, LCD cape, ???
Can accelerated graphics, e.g. SGX, be supported by QT5? If so, what
additional magic needs to be done?
If you are asking about BeagleBone Black specifically, then meta-ti does
provide accelerated GLES 3D graphics for SGX over HDMI. On other devices,
built-in LCD is also supported, but not LCD cape, due to reasons above.
SGX is basically supported on Qt5, but there are some pieces missing, for
which there is work either in progress or planned - for more details I'd
recommend moving the discussion to meta-ti or meta-arago lists.


Join { to automatically receive all group messages.