Yocto BSP Structure

I’m currently trying to set up a little demo that uses rpmsg to communicate between the FreeRTOS and Linux CPUs. I could also run the echo server example, but I couldn’t get the linux example to compile (imx_rpmsg_tty.c « rpmsg « drivers - linux-toradex.git - Linux kernel for Apalis, Colibri and Verdin modules). My SDK is somehow missing some headers (linux/delay.h, linux/tty_driver.h, linux/tty_flip.h, linux/virtio.h). I compiled it with bitbake angstrom-lxde-image -c populate_sdk.

This led to some questions I tried to answer by looking into your yocto layers, but I was a bit confused.

First, where are the recipes for the demo applications? I searched in meta-toradex-demos, but couldn’t find them.

Are there any machine configurations or some documentation what the features of the different machines are? Are there more than this 3 images (angstrom-lxde-image, console-tdx-image, angstrom-qt-x11-image)?

Is there more documentation about what the different meta layers do?

Where did you do the linux kernel adaptions for the supported hardware? Is there a similar documentation how to do them as it has without yocto (Device Tree Customization | Toradex Developer Center)?

Hi Andri

First, where are the recipes for the demo applications? I searched in meta-toradex-demos, but couldn’t find them.
Which demos are exactly talking about?

Are there any machine configurations or some documentation what the features of the different machines are?
The machine configuration are described in build/local.conf. We have mainline or downstream kernel machine. Which kind of documentation do you want to have?

Is there more documentation about what the different meta layers do?
You can find under layers/meta-layer always a README file.

Where did you do the linux kernel adaptions for the supported hardware?
The adaptation are done in kernel itself. If you want to build the images without yocto, you can read the following article?

Which demos are exactly talking about?

For example:
RPMsg TTY Example
RPMsg PingPong Example

The machine configuration are described in build/local.conf. We have mainline or downstream kernel machine. Which kind of documentation do you want to have?

Which of these features (BSP Layers and Reference Images for Yocto Project Software | Toradex Developer Center) are on a specific image? Let’s say the angstrom-lxde-image. That is what I am looking for, a short overview.

The adaptation are done in kernel itself. If you want to build the images without yocto, you can read the following
In the meantime I found this article. It’s is more what I have looked for Patching Kernel in OpenEmbedded

How do you do the citation markup?

You do not need to compile the RPmsg driver externally. The driver is part of the kernel, and will be built by the kernel build system. The OE build system will make sure that the kernel as well all modules are compiled and deployed on the rootfs.

All three images (angstrom-lxde-image, console-tdx-image, angstrom-qt-x11-image) should already have the kernel module imx_rpmsg_pingpong on board. Using the commands documented in the FreeRTOS on the Cortex-M4 of a Colibri iMX7 article should work with all of those images.

You can quote by using the blockquote button in the toolbar or by using > Text on a separate line.

Ah, tried that, but was confused by the syntax :smiley: Thanks!

So is it working now?

I know now what I wanted to know. I mainly realized that I asked the wrong question. In short I was looking for the kernel development at the wrong place

Ok, thanks for the feedback.