summaryrefslogtreecommitdiffstats
path: root/meta-egvirt/recipes-extended/vhost-device-can
AgeCommit message (Expand)AuthorFilesLines
2023-12-13CAN, GPIO, RNG vhost-devices for virtio-loopback [v6]quillback_16.92.0quillback/16.92.016.92.0Michele Paolino10-0/+1409
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
require conf/distro/poky.conf

# AGL specific derivations
DISTRO = "poky-agl"
DISTRO_NAME = "Automotive Grade Linux"


# Release flags
DISTRO_CODENAME = "lamprey"
AGL_BRANCH = "lamprey"
AGLVERSION = "12.1.6"
# switch  devel/release
#AGLRELEASETYPE ?= "agldevelopment"
AGLRELEASETYPE ?= "aglrelease"
OVERRIDES .= ":${AGLRELEASETYPE}"
#

#for development
DISTRO_VERSION:agldevelopment := "${AGLVERSION}+snapshot-${DATE}"
AGL_APP_REVISION:agldevelopment = "${AUTOREV}"
AGL_DEFAULT_REVISION:agldevelopment = "${AUTOREV}"

#for release
DISTRO_VERSION:aglrelease := "${AGLVERSION}"
DISTRO_BRANCH_VERSION_TAG = "${DISTRO_CODENAME}/${@'${DISTRO_VERSION}'.replace('+snapshot-${DATE}','')}"
AGL_APP_REVISION:aglrelease := "refs/tags/${DISTRO_BRANCH_VERSION_TAG}"
AGL_DEFAULT_REVISION:aglrelease := "refs/tags/${DISTRO_BRANCH_VERSION_TAG}"

# reproducible builds:
# enable the flag
BUILD_REPRODUCIBLE_BINARIES = "1"
# Set the desired timestamps
export SOURCE_DATE_EPOCH = "1638397300"
REPRODUCIBLE_TIMESTAMP_ROOTFS = "1638397300"
# inherit the class
INHERIT += "reproducible_build"


# SDK
SDK_VENDOR = "-aglsdk"

# SDKPATHINSTALL is the folder where the SDK is going to be installed
# Due to an issue with the qt5 environment (see SPEC-1667),
# we add DEFAULTTUNE to the SDKPATH to mitigate the issue.
SDKPATHINSTALL = "/opt/agl-sdk/${SDK_VERSION}-${DEFAULTTUNE}"


MAINTAINER = "AGL https://lists.automotivelinux.org/g/agl-dev-community"

TARGET_VENDOR = "-agl"

# Override these in poky based distros
AGL_DEFAULT_DISTRO_FEATURES = "largefile opengl wayland pam bluetooth bluez5 3g polkit"
POKY_DEFAULT_DISTRO_FEATURES := "${AGL_DEFAULT_DISTRO_FEATURES}"
OVERRIDES .= ":${DISTRO_CODENAME}"

DISTRO_FEATURES:remove = "x11"
DISTRO_FEATURES_BACKFILL_CONSIDERED = "pulseaudio"

INIT_MANAGER = "systemd"
# Override default of "systemd-compat-units"
VIRTUAL-RUNTIME_initscripts = ""
# Override default of "busybox-syslog"
VIRTUAL-RUNTIME_base-utils-syslog = ""

# network manager to use (possible values: systemd, connman)
VIRTUAL-RUNTIME_net_manager = "connman"


QEMU_TARGETS ?= "arm aarch64 i386 x86_64 riscv64"
# Other QEMU_TARGETS "mips mips64 mips64el ppc sh4"

MIRRORS =+ "\
bzr://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
cvs://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
git://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
gitsm://.*/.*    https://download.automotivelinux.org/AGL/mirror/ \n \
hg://.*/.*       https://download.automotivelinux.org/AGL/mirror/ \n \
osc://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
p4://.*/.*       https://download.automotivelinux.org/AGL/mirror/ \n \
svn://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
bzr://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
cvs://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
git://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
gitsm://.*/.*    http://download.automotivelinux.org/AGL/mirror/  \n \
hg://.*/.*       http://download.automotivelinux.org/AGL/mirror/  \n \
osc://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
p4://.*/.*       http://download.automotivelinux.org/AGL/mirror/  \n \
svn://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
                 \
ftp://.*/.*      https://download.automotivelinux.org/AGL/mirror/ \n \
http://.*/.*     https://download.automotivelinux.org/AGL/mirror/ \n \
https://.*/.*    https://download.automotivelinux.org/AGL/mirror/ \n \
ftp://.*/.*      http://download.automotivelinux.org/AGL/mirror/  \n \
http://.*/.*     http://download.automotivelinux.org/AGL/mirror/  \n \
https://.*/.*    http://download.automotivelinux.org/AGL/mirror/  \n \
"

# The CONNECTIVITY_CHECK_URI's are used to test whether we can succesfully
# fetch from the network (and warn you if not). To disable the test set
# the variable to be empty.
# Git example url: git://git.yoctoproject.org/yocto-firewall-test;protocol=git;rev=HEAD
CONNECTIVITY_CHECK_URIS ?= ""

# using multiple BSP layers causes dangling bbappends in meta-agl-bsp
# turn it into a warning
#BB_DANGLINGAPPENDS_WARNONLY = "1"

# Not yet upstreamed; should be submitted.
SECURITY_CFLAGS:pn-qtwebengine = "${SECURITY_NO_PIE_CFLAGS}"

#Redefined USER_CLASSES
#Disable prelink. It is unmaintained and likely will go away.
#default: USER_CLASSES ?= "buildstats image-mklibs image-prelink"
USER_CLASSES = "buildstats image-mklibs"

# AGL uses 4 optimization levels
# 2 for ARM 32bit 
#   - a high and a medium setting for the CCARGS
#   - the high setting is default (needs >= cortex-a15)
#   - the medium setting is enabled with: DISTRO_FEATURES:append = " agl-medium-arm-compiler "
# 1 for ARM 64bit / AARCH64
# 1 for x86-64
# 1 for RISC-V 64-bit
require conf/distro/include/${TARGET_ARCH}-tune.inc

# Generic qemu and qemuboot (runqemu) enhancements
# check qemuboot.bbclass
# - use 2G RAM by default
QB_MEM ?= "-m 2048"
# use pulseaudio on the host side - off as qemu-native is built with alsa
#QB_AUDIO_DRV = "pa"
# expose a virtual 'hda' sound card to the guest (arm/aarch64/x86-64)
QB_AUDIO_OPT = "-soundhw hda"

# Board templates can add extra IMAGE_FSTYPES through this.
# It is added (late) through the AGL image recipes.
AGL_EXTRA_IMAGE_FSTYPES ??= ""
AGL_EXTRA_INITRAMFS_FSTYPES ??= ""
#
# Default IMAGE FSTYPES wic.xz
AGL_DEFAULT_IMAGE_FSTYPES ?= "wic.xz wic.bmap wic.xz.sha256sum"
AGL_DEFAULT_IMAGE_FSTYPES:qemuall ?= "${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
AGL_DEFAULT_IMAGE_FSTYPES:append:netboot = " ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'ext4.xz', 'ext4', d)}"
AGL_DEFAULT_INITRAMFS_FSTYPES ?= "ext4.gz"

# DEFAULT IMAGE_FSTYPES for AGL (no - BSPs should not set this)
#
IMAGE_FSTYPES = "${AGL_DEFAULT_IMAGE_FSTYPES} ${AGL_EXTRA_IMAGE_FSTYPES}"
INITRAMFS_FSTYPES = "${AGL_DEFAULT_INITRAMFS_FSTYPES} ${AGL_EXTRA_INITRAMFS_FSTYPES}"
#
# THE FUTURE is 'wic'
# IMAGE_FSTYPES:append = " wic"

# Complementary package definitions for agl-test-wgt and agl-devel-wgt
# image features
COMPLEMENTARY_GLOB[agl-test-wgt] = '*-test'
COMPLEMENTARY_GLOB[agl-devel-wgt] = '*-coverage *-debug'

# Fix for rpm metadata clash between nativesdk-cmake and nativesdk-qtbase-tools
# (revalidate after 2017-10-15, 2018-06-12: still required)
DIRFILES:pn-nativesdk-cmake = "1"

# For https://jira.automotivelinux.org/browse/SPEC-1629 :
# We exclude the conflicting vars from the sstate task hash.
# This needs to be verified.
do_package_write_rpm[vardepsexclude] += "ARCHIVER_TOPDIR PF"

# Set preferred provider to new navi application
PREFERRED_RPROVIDER_virtual/navigation ?= "ondemandnavi"

# Set preferred provider for low-can device mapping configuration
PREFERRED_RPROVIDER_virtual/low-can-dev-mapping ?= "dev-mapping"

# Mask upstream meta-security bbappend that interferes with non-linux-yocto
# kernels due to the bug of having two wildcards, which bitbake does not
# support. Not having it is not an issue, since there is also explicit
# enabling of required security features done by meta-agl/meta-security.
BBMASK += "meta-security/recipes-kernel/linux/linux-%_5.%.bbappend"

# Workaround for https://jira.automotivelinux.org/browse/SPEC-3621
# TLDR: do_image_wic will modify the target's /etc/fstab while
# do_image_tar and do_image_ext4 can run in parallel
# This needs to be fixed upstream:
# See https://bugzilla.yoctoproject.org/show_bug.cgi?id=13994
INHERIT += "image_types_wic_workaround"