====== meta-ost ====== [[https://gitlab.ost.ch/tech/inf/public/yocto/meta-ost | meta-ost on gitlab ]] meta-ost is a collection of [[software:linux:yocto:start | yocto/OpenEmbedded]] layers containing the following recipes and machines: ===== Layers ===== ==== meta-ost ==== ''meta-ost'' contains all recipes that are not dependent on any specific machine/layer. ^ users ^^^^ ^ recipe ^ user ^ password ^description | | ost-user | ost | ost | standard user with ''sudo'' privileges | | - | root | - | default root user that comes with yocto | **Note**: The root user login is disabled on production images (ssh & local), use ''ost-user'' instead. ^ images ^^ ^ (recipe) name ^ description ^ | ost-image | base image containing OST specific customizations| ^ kernel modules ^^ ^ recipe ^ description ^ | flink | [[ https://github.com/flink-project | flink ]] | | fpga-loader | [[ https://github.com/ntb-ch/fpga_loader | fpga_loader ]] | ^ other ^^ ^ recipe ^ description ^ | libeeros | [[ https://github.com/eeros-project/ | EEROS]] | | libucl | [[ https://github.com/vstakhov/libucl | libucl]] | | udhcpc-service | [[ https://wiki.archlinux.org/index.php/Systemd | SystemD]] service to bring up ethernet using udhcpc (dhcp client) | ==== meta-ost-toradex ==== ''meta-ost-toradex'' contains all recipes that depend or are otherwise specific to toradex modules and their yocto layers. ^ kernels ^^^^ ^ version ^ RT? ^ compatible machines ^ comment ^ | all | RT & nonRT | cb20 | appends ''linux-toradex'' & ''linux-toradex-rt'' | ^ other ^^ ^ recipe ^ description ^ | u-boot-toradex | append ''u-boot'' to use cb20 device tree by default | ===== Machines ===== ^ machines ^ layer ^ description ^ | x86-rt | meta-ost | [[ .:x86-rt | Generic x86 with RT kernel ]] | | bblue | meta-ost | [[ .:bblue | Beaglebone Blue]] | | cb20 | meta-ost-toradex | [[ .:cb20 | OST CB20 Board ]] | ===== Distros ===== ^ Distros ^^ | ost-distro | distribution for production images | | ost-devel | distribution for development images based on ''ost-distro'' | ==== ost-distro vs ost-devel - Development vs Production Images==== While ''ost-distro'' is intended to be used for production images and provides some base settings such as configuring SystemD as the init-System and ''.ipk'' as the package format of choice, ''ost-devel'' builds on ''ost-distro'' but modifies the configuration to be more amenable for images used during development. The most notable difference between a development and production image is that the production image disables ''root'' login and ships with a read only filesystem for extra resilience in case of power cuts/improper shutdowns. Images built with ''ost-devel'' allow for passwordless ''root'' login and mount the root filesystem as read/write. Additionally, ''ost-devel'' adds ''ostdevel'' to ''OVERRIDES'' allowing recipes to easily change their behavior for development or production images. For example: MY_VAR = "default value used in production images (when not using ost-devel)" MY_VAR:ostdevel = "value used when using ost-devel (i.e. in development images)" For more information about bitbake overrides, check {{ https://www.yoctoproject.org/docs/3.1/bitbake-user-manual/bitbake-user-manual.html#conditional-syntax-overrides | the bitbake manual}}. This is used in ''ost-image'' to include additional packages in the development image such as strace, usbutils and evtest. For a full list of the additional packages, check {{https://gitlab.ost.ch/tech/inf/public/meta-ost/-/blob/main/meta-ost/recipes-images/base/ost-image-base.bb | ost-image-base.bb}}. ===== Status ===== ^ Feature / Machine ^ cb20 ^ bblue ^ ^ SDK | t | t | ^ RT | t | t | ^ RO-FS | t | t | ^ flink | t ^ ^ ^ EtherCAT ^ ^ | ^ EEROS | t | t | ^ cyclictest | t | o | ^ ROS | o | o | ^ wlan ^ | t | ^ librobotcontrol ^ | t | | t | (tested) confirmed working | | u | untested, but should work | | w | work in progress | | o | open | ^ | not applicable | ==== Performance Tests ==== [[ .:cyclictest | Results for Yocto Images with Cyclictest]]