Re: OE Linux & board-support-package


Alexander Kanavin
 

Demo apps is the least of the worst. They also add benchmarks, make
tweaks to components that are in distribution (rather than hardware
support) scope, and even go ahead and define their own distributions,
and then make it impossible or very difficult to separate the distro
from the BSP. Oh, and all of this on top of yocto from 2014.

That's where the 'vendor from hell' moniker comes from.

Alex

On Thu, 5 May 2022 at 12:22, csimmonds <chris@...> wrote:

BSP is not a well defined term in embedded Linux. Back in the day, Montavista tried to popularise the term LSP, meaning Linux Support Package but it never caught on. These days, BSP generally means all the things you need to run a basic system. So that's bootloader, device tree, kernel config, kernel patches (if any), and firmware blobs. It can also include user space config such as video codecs, opengl libraries, and systemd units to start the respective daemons.

SoC and SoM vendors often overload their OE BSPs with irrelevant demo apps as well. Constant bugbear of system integrators.

HTH,
Chris

On 5 May 2022 10:51:39 BST, "jchludzinski via lists.yoctoproject.org" <jchludzinski=vivaldi.net@...> wrote:

OK, let me try this:

With other embedded OS's, the hardware specifics that are in the BSP are in the device trees in Linux. I assume the BSP's for OE Linux are rather simple?



On 2022-05-05 04:47, Josef Holzmayr wrote:

Howdy!

Am Do., 5. Mai 2022 um 10:43 Uhr schrieb jchludzinski via
lists.yoctoproject.org
<jchludzinski=vivaldi.net@...>:


OK, let's go with that.

I've watched the "Live Coding with Yocto Project #1: download and first
build" youtube video. Where is the BSP built in this procedure?

The BSP that is implicitly used in that video is the generic QEMU one,
which comes included with poky. Technically speaking, it lives in
https://git.yoctoproject.org/poky/tree/meta/conf/machine and
https://git.yoctoproject.org/poky/tree/meta/recipes-kernel/linux/linux-yocto_5.15.bb

A BSP can be many things, and this one is a rather small one, as
booting into and running linux on QEMU doesn't need patching and all
that, so in that case it comes pretty close to the perfect world that
Michael mentioned.

Greetz,
Josef (who did that video, actually)




On 2022-05-05 03:16, Michael Opdenacker via lists.yoctoproject.org
wrote:

On 5/5/22 08:39, jchludzinski via lists.yoctoproject.org wrote:

A board-support-package (BSP) is software that provides a layer of
abstraction from the physical board specifics for the host embedded OS
(e.g., VXworks).

I believe the device tree files (*.dts, *dtsi) in OE Linux provide the
same function. It allows to OE kernel code to be independent of device
specifics.


The Device Tree files are just descriptions of the hardware. In a
perfect world, you could indeed use the same mainline kernel to support
all possible devices. However, that kernel would be unnecessarily big
for your custom system. You most probably want to customize its
configuration, and may also need custom kernel drivers and patches.
There's also the need for a bootloader compiled for your platform.

That's why we need BSPs :-)

Cheers,
Michael.





Join yocto@lists.yoctoproject.org to automatically receive all group messages.