diff options
Diffstat (limited to 'meta-agl-bsp/conf')
49 files changed, 485 insertions, 331 deletions
diff --git a/meta-agl-bsp/conf/include/agl_am62xx-evm.inc b/meta-agl-bsp/conf/include/agl_am62xx-evm.inc new file mode 100644 index 000000000..24fd95141 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_am62xx-evm.inc @@ -0,0 +1,8 @@ +# am62xx-evm has a k3r5 BBMULTICONFIG to build its bootloader +# firmware, need to use an override to set DEFAULTTUNE back to +# what that machine configuration needs. +DEFAULTTUNE:k3r5:forcedefaulttune = "armv7athf" + +# meta-ti-bsp layer conf does break expectations wrt common folders +# meta-ti-bsp/conf/layer.conf:TI_COMMON_DEPLOY ?= "${TOPDIR}/deploy-ti" +TI_COMMON_DEPLOY := "${TMPDIR}/deploy" diff --git a/meta-agl-bsp/conf/include/agl_bbe.inc b/meta-agl-bsp/conf/include/agl_bbe.inc index 5c28bea20..5252c558b 100644 --- a/meta-agl-bsp/conf/include/agl_bbe.inc +++ b/meta-agl-bsp/conf/include/agl_bbe.inc @@ -6,35 +6,19 @@ CORE_IMAGE_EXTRA_INSTALL += "packagegroup-machine-base" #------------------------------------------------- -## Graphics section ## -#------------------------------------------------- -PACKAGES_GFX = "ti-sgx-ddk-km" -IMAGE_INSTALL_append = " ${PACKAGES_GFX}" - - -# Enable Gfx Pkgs -MACHINE_FEATURES_append = " sgx" -MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" - -DEPENDS_remove = "virtual/libgl" - -# Preferred providers -PREFERRED_PROVIDER_virtual/libgles1 = "" -PREFERRED_PROVIDER_virtual/libgles2 = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/egl = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/libgbm = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/mesa = "mesa-gl" - -#------------------------------------------------- ## Multimedia section ## #------------------------------------------------- # DEFAULTTUNE for cortex-a8 -DISTRO_FEATURES_append = " agl-medium-arm-compiler" - -SECURITY_CFLAGS_pn-mozjs = "" -SECURITY_LDFLAGS_pn-mozjs = "" -SECURITY_CFLAGS_pn-gpm = "" -SECURITY_LDFLAGS_pn-gpm = "" -SECURITY_CFLAGS_pn-libatasmart = "" -SECURITY_LDFLAGS_pn-libatasmart = "" +DISTRO_FEATURES:append = " agl-medium-arm-compiler" + +SECURITY_CFLAGS:pn-mozjs = "" +SECURITY_LDFLAGS:pn-mozjs = "" +SECURITY_CFLAGS:pn-gpm = "" +SECURITY_LDFLAGS:pn-gpm = "" +SECURITY_CFLAGS:pn-libatasmart = "" +SECURITY_LDFLAGS:pn-libatasmart = "" + +# meta-ti-bsp layer conf does break expectations wrt common folders +# meta-ti-bsp/conf/layer.conf:TI_COMMON_DEPLOY ?= "${TOPDIR}/deploy-ti" +TI_COMMON_DEPLOY := "${TMPDIR}/deploy"
\ No newline at end of file diff --git a/meta-agl-bsp/conf/include/agl_beaglebone-ai64.inc b/meta-agl-bsp/conf/include/agl_beaglebone-ai64.inc new file mode 100644 index 000000000..1e03b70ff --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_beaglebone-ai64.inc @@ -0,0 +1,6 @@ +# beaglebone-ai64 has a k3r5 BBMULTICONFIG to build its bootloader +# and firmware, need to use an override to set DEFAULTTUNE back to +# what that machine configuration needs. +DEFAULTTUNE:k3r5:forcedefaulttune = "armv7athf" + +TI_COMMON_DEPLOY := "${TMPDIR}/deploy" diff --git a/meta-agl-bsp/conf/include/agl_beaglebone.inc b/meta-agl-bsp/conf/include/agl_beaglebone.inc index cfd189df3..ec3a3a448 100644 --- a/meta-agl-bsp/conf/include/agl_beaglebone.inc +++ b/meta-agl-bsp/conf/include/agl_beaglebone.inc @@ -1,40 +1,10 @@ # This config is for the beaglebone (inspired from the vayu config). -#------------------------------------------------- -## Graphics section ## -#------------------------------------------------- -PACKAGES_GFX = "ti-sgx-ddk-km" -IMAGE_INSTALL_append = " ${PACKAGES_GFX}" - - -# Enable Gfx Pkgs -MACHINE_FEATURES_append = " sgx" -MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" - -DEPENDS_remove = "virtual/libgl" - -# Preferred providers -PREFERRED_PROVIDER_virtual/libgles1 = "" -PREFERRED_PROVIDER_virtual/libgles2 = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/egl = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/libgbm = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/mesa = "mesa-gl" - -#------------------------------------------------- -## Multimedia section ## -#------------------------------------------------- - -PREFERRED_PROVIDER_virtual/kernel = "linux-ti-staging" -PREFERRED_VERSION_virtual/kernel = "4.9" - # DEFAULTTUNE for cortex-a8 -DISTRO_FEATURES_append = " agl-medium-arm-compiler" - -SECURITY_CFLAGS_pn-mozjs = "" -SECURITY_LDFLAGS_pn-mozjs = "" -SECURITY_CFLAGS_pn-gpm = "" -SECURITY_LDFLAGS_pn-gpm = "" -SECURITY_CFLAGS_pn-libatasmart = "" -SECURITY_LDFLAGS_pn-libatasmart = "" +DISTRO_FEATURES:append = " agl-medium-arm-compiler" WKS_FILE = "sdimage-bootpart-uuid.wks" + +# meta-ti-bsp layer conf does break expectations wrt common folders +# meta-ti-bsp/conf/layer.conf:TI_COMMON_DEPLOY ?= "${TOPDIR}/deploy-ti" +TI_COMMON_DEPLOY := "${TMPDIR}/deploy"
\ No newline at end of file diff --git a/meta-agl-bsp/conf/include/agl_beagleplay.inc b/meta-agl-bsp/conf/include/agl_beagleplay.inc new file mode 100644 index 000000000..77b669bb7 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_beagleplay.inc @@ -0,0 +1,6 @@ +# beagleplay has a k3r5 BBMULTICONFIG to build its bootloader +# and firmware, need to use an override to set DEFAULTTUNE back to +# what that machine configuration needs. +DEFAULTTUNE:k3r5:forcedefaulttune = "armv7athf" + +TI_COMMON_DEPLOY := "${TMPDIR}/deploy" diff --git a/meta-agl-bsp/conf/include/agl_cubox-i.inc b/meta-agl-bsp/conf/include/agl_cubox-i.inc index 46464325b..ee5e759e4 100644 --- a/meta-agl-bsp/conf/include/agl_cubox-i.inc +++ b/meta-agl-bsp/conf/include/agl_cubox-i.inc @@ -1,24 +1,15 @@ -DISTRO_FEATURES_append = " agl-medium-arm-compiler" +require agl_imx6-common.inc -# This disables the Freescale/NXP Vivante GPU driver and enables -# etnaviv support. -MACHINEOVERRIDES .= ":use-mainline-bsp" - -# Disable meta-freescale package architecure mangling, as it causes -# issues with AGL's explicit setting of DEFAULTTUNE. -INHERIT_remove = "fsl-dynamic-packagearch" -MACHINE_SOCARCH = "${TUNE_PKGARCH}" +# Force use of the community supported LTS kernel instead of the +# default linux-fslc +PREFERRED_PROVIDER_virtual/kernel = "linux-fslc-lts" # Include devicetrees for SOM 1.5 and Hummingboard 2 hardware -KERNEL_DEVICETREE_append = " \ - imx6dl-hummingboard-som-v15.dtb imx6q-hummingboard-som-v15.dtb \ - imx6dl-hummingboard2.dtb imx6q-hummingboard2.dtb \ - imx6dl-hummingboard2-som-v15.dtb imx6q-hummingboard2-som-v15.dtb \ +KERNEL_DEVICETREE:append = " \ + imx6dl-hummingboard-som-v15.dtb \ + imx6q-hummingboard-som-v15.dtb \ + imx6dl-hummingboard2.dtb \ + imx6q-hummingboard2.dtb \ + imx6dl-hummingboard2-som-v15.dtb \ + imx6q-hummingboard2-som-v15.dtb \ " - -# Disable the meta-freescale weston-init bbappend as it conflicts -# with AGL's. -BBMASK = "meta-freescale/recipes-graphics/wayland/weston-init" - -# Set CMA size large enough to work with AGL -UBOOT_EXTLINUX_KERNEL_ARGS_append = " cma=512M" diff --git a/meta-agl-bsp/conf/include/agl_cyclone5.inc b/meta-agl-bsp/conf/include/agl_cyclone5.inc index 7ebd4090c..3f12a2a92 100644 --- a/meta-agl-bsp/conf/include/agl_cyclone5.inc +++ b/meta-agl-bsp/conf/include/agl_cyclone5.inc @@ -1,7 +1,7 @@ OSTREE_BOOTLOADER ?= "u-boot" # DEFAULTTUNE for cortex-a9 -DISTRO_FEATURES_append = " agl-medium-arm-compiler" +DISTRO_FEATURES:append = " agl-medium-arm-compiler" # Use the AGL default ext4.xz to generate the rpi-sdimg SDIMG_ROOTFS_TYPE = "ext4.xz" diff --git a/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc b/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc deleted file mode 100644 index ccc8feb9a..000000000 --- a/meta-agl-bsp/conf/include/agl_dra7xx-evm.inc +++ /dev/null @@ -1,42 +0,0 @@ - -#------------------------------------------------- -## Graphics section ## -#------------------------------------------------- -PACKAGES_GFX_${MACHINE} = "ti-sgx-ddk-km" - -# Enable Gfx Pkgs -MACHINE_FEATURES_append = " sgx" -MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" - -DEPENDS_remove = "virtual/libgl" - -# Preferred providers -PREFERRED_PROVIDER_virtual/libgles1 = "" -PREFERRED_PROVIDER_virtual/libgles2 = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/egl = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/libgbm = "ti-sgx-ddk-um" -PREFERRED_PROVIDER_virtual/mesa = "mesa-gl" - -#------------------------------------------------- -## Multimedia section ## -#------------------------------------------------- - -PACKAGES_MULTIMEDIA = " \ - ipumm-fw \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio-misc' , '', d)} \ -" - -PREFERRED_PROVIDER_virtual/kernel = "linux-ti-staging" -PREFERRED_VERSION_virtual/kernel = "4.9" - -# Distribution-specific runtime components -IMAGE_INSTALL_append = " \ - ${PACKAGES_GFX} \ - ${PACKAGES_MULTIMEDIA} \ - cmem \ -" - -# Include WIC support based on beaglebone -do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot" -WKS_FILE = "sdimage-bootpart-uuid.wks" -IMAGE_BOOT_FILES = "MLO u-boot.img uEnv.txt" diff --git a/meta-agl-bsp/conf/include/agl_dragonboard-410c.inc b/meta-agl-bsp/conf/include/agl_dragonboard-410c.inc deleted file mode 100644 index f66265369..000000000 --- a/meta-agl-bsp/conf/include/agl_dragonboard-410c.inc +++ /dev/null @@ -1,3 +0,0 @@ -# Install 96boards-tools for resizing partition -# Add systemd unit file for the qcom_q6v5_pil kernel module -IMAGE_INSTALL_append = " 96boards-tools q6v5-pil" diff --git a/meta-agl-bsp/conf/include/agl_dragonboard-820c.inc b/meta-agl-bsp/conf/include/agl_dragonboard-820c.inc deleted file mode 100644 index f74d703fa..000000000 --- a/meta-agl-bsp/conf/include/agl_dragonboard-820c.inc +++ /dev/null @@ -1,2 +0,0 @@ -# Install 96boards-tools for resizing partition -IMAGE_INSTALL_append = " 96boards-tools" diff --git a/meta-agl-bsp/conf/include/agl_ebisu.inc b/meta-agl-bsp/conf/include/agl_ebisu.inc index 2ac93adf0..d684f814d 100644 --- a/meta-agl-bsp/conf/include/agl_ebisu.inc +++ b/meta-agl-bsp/conf/include/agl_ebisu.inc @@ -4,10 +4,10 @@ BOARD_NAME = "ebisu" DTB_SUFFIX = "r8a77990-ebisu" -DISTRO_FEATURES_remove = " use_eva_pkg" +DISTRO_FEATURES:remove = " use_eva_pkg" # Configuration for USB 3.0 -MACHINE_FEATURES_append = " usb3" +MACHINE_FEATURES:append = " usb3" -IMAGE_INSTALL_append = " gstreamer1.0-omx gstreamer1.0-plugin-vspfilter" -IMAGE_INSTALL_append = " kernel-module-mmngr kernel-module-mmngrbuf kernel-module-uvcs-drv kernel-module-vspmif" +IMAGE_INSTALL:append = " gstreamer1.0-omx gstreamer1.0-plugin-vspfilter" +IMAGE_INSTALL:append = " kernel-module-mmngr kernel-module-mmngrbuf kernel-module-uvcs-drv kernel-module-vspm-if" diff --git a/meta-agl-bsp/conf/include/agl_h3-salvator-x-nogfx.inc b/meta-agl-bsp/conf/include/agl_h3-salvator-x-nogfx.inc index c12026351..4ff103df8 100644 --- a/meta-agl-bsp/conf/include/agl_h3-salvator-x-nogfx.inc +++ b/meta-agl-bsp/conf/include/agl_h3-salvator-x-nogfx.inc @@ -1,10 +1,9 @@ -require conf/include/agl_rcar-nogfx.inc +require conf/include/agl_salvator-nogfx.inc SOC_FAMILY = "r8a7795" BOARD_NAME = "h3-salvator-x" -DTB_SUFFIX = "r8a7795-salvator-xs" +DTB_SUFFIX = "r8a77951-salvator-xs" -# Mask graphic Pkgs -BBMASK += "gles-user-module|kernel-module-gles|wayland-kms|libgbm" -# Mask MMP recipes -BBMASK += "kernel-module-uvcs-drv|omx-user-module" +# do use software rendering to display the compositor +# used for images w/o binary-only driver +WESTON_USE_PIXMAN = "1" diff --git a/meta-agl-bsp/conf/include/agl_h3-salvator-x.inc b/meta-agl-bsp/conf/include/agl_h3-salvator-x.inc index d338a5663..134b1dd1f 100644 --- a/meta-agl-bsp/conf/include/agl_h3-salvator-x.inc +++ b/meta-agl-bsp/conf/include/agl_h3-salvator-x.inc @@ -1,9 +1,6 @@ -require conf/include/agl_rcar.inc +require conf/include/agl_salvator.inc SOC_FAMILY = "r8a7795" BOARD_NAME = "h3-salvator-x" -DTB_SUFFIX = "r8a7795-salvator-xs" +DTB_SUFFIX = "r8a77951-salvator-xs" -IMAGE_INSTALL_append_rcar-gen3 = " \ - kernel-module-vspmif \ -" diff --git a/meta-agl-bsp/conf/include/agl_h3ulcb-nogfx.inc b/meta-agl-bsp/conf/include/agl_h3ulcb-nogfx.inc index 25755d247..5f288fca5 100644 --- a/meta-agl-bsp/conf/include/agl_h3ulcb-nogfx.inc +++ b/meta-agl-bsp/conf/include/agl_h3ulcb-nogfx.inc @@ -2,9 +2,24 @@ require conf/include/agl_rcar-nogfx.inc SOC_FAMILY = "r8a7795" BOARD_NAME = "h3ulcb" -DTB_SUFFIX = "r8a7795-h3ulcb" +DTB_SUFFIX = "r8a77951-ulcb" # Mask graphic Pkgs BBMASK += "gles-user-module|kernel-module-gles|wayland-kms|libgbm" # Mask MMP recipes BBMASK += "kernel-module-uvcs-drv|omx-user-module" + +# Work around use of obsolete Weston backend-fbdev in meta-rcar-gen3 +# when building without the proprietary driver stack. Masking out the +# weston_%.bbappend seems the simplest approach for now, as forcing +# USE_GLES = "1" to disable the adding of -Dbackend-default="fbdev" to +# EXTRA_OEMESON triggers adding "libgbm" to DEPENDS, which breaks due +# to that being a component specific to the proprietary stack we are +# explicitly disabling. If the "libgbm" usage in the bbappend was +# instead "virtual/libgbm" as is now used in poky, it might be possible +# to just tweak PREFERRED_PROVIDER_virtual/libgbm = "mesa". +BBMASK += "meta-rcar-gen3/recipes-graphics/wayland/weston_%.bbappend" + +# do use software rendering to display the compositor +# used for images w/o binary-only driver +WESTON_USE_PIXMAN = "1" diff --git a/meta-agl-bsp/conf/include/agl_h3ulcb.inc b/meta-agl-bsp/conf/include/agl_h3ulcb.inc index eb3836abb..b958d767c 100644 --- a/meta-agl-bsp/conf/include/agl_h3ulcb.inc +++ b/meta-agl-bsp/conf/include/agl_h3ulcb.inc @@ -2,4 +2,5 @@ require conf/include/agl_rcar.inc SOC_FAMILY = "r8a7795" BOARD_NAME = "h3ulcb" -DTB_SUFFIX = "r8a7795-h3ulcb" +#ws2.0 +DTB_SUFFIX = "r8a77951-ulcb" diff --git a/meta-agl-bsp/conf/include/agl_hsdk.inc b/meta-agl-bsp/conf/include/agl_hsdk.inc deleted file mode 100644 index 075cea53e..000000000 --- a/meta-agl-bsp/conf/include/agl_hsdk.inc +++ /dev/null @@ -1,4 +0,0 @@ -KERNEL_IMAGETYPE = "uImage" -WKS_FILE = "sdimage-hsdk.wks" -IMAGE_BOOT_FILES = "uImage uboot.env" -IMAGE_INSTALL_append = " kernel-modules" diff --git a/meta-agl-bsp/conf/include/agl_imx-common.inc b/meta-agl-bsp/conf/include/agl_imx-common.inc new file mode 100644 index 000000000..b58a99589 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx-common.inc @@ -0,0 +1,8 @@ +# Disable meta-freescale package architecure mangling, as it causes +# issues with AGL's explicit setting of DEFAULTTUNE. +INHERIT:remove = "fsl-dynamic-packagearch" +MACHINE_SOCARCH = "${TUNE_PKGARCH}" + +# Disable the meta-freescale weston-init bbappend as it conflicts +# with AGL's. +BBMASK += "meta-freescale/recipes-graphics/wayland/weston-init" diff --git a/meta-agl-bsp/conf/include/agl_imx6-common.inc b/meta-agl-bsp/conf/include/agl_imx6-common.inc new file mode 100644 index 000000000..7b22282dd --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx6-common.inc @@ -0,0 +1,14 @@ +require agl_imx-common.inc + +DISTRO_FEATURES:append = " agl-medium-arm-compiler" + +# This disables the Freescale/NXP Vivante GPU driver and enables +# etnaviv support. This is the default for the i.MX6 platforms in +# meta-freescale, but not for all the ones in meta-freescale-3rdparty, +# so set it here to give a consistent default. +IMX_DEFAULT_BSP = "mainline" + +# Set CMA size large enough to work with AGL +UBOOT_EXTLINUX_KERNEL_ARGS:append = " cma=512M" + +AGL_DEFAULT_INITRAMFS_FSTYPES := "" diff --git a/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc b/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc index 0d8c6f239..f058ba1a5 100644 --- a/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc +++ b/meta-agl-bsp/conf/include/agl_imx6qdlsabreauto.inc @@ -1,19 +1,5 @@ -DISTRO_FEATURES_append = " agl-medium-arm-compiler" +require agl_imx6-common.inc -# This disables the Freescale/NXP Vivante GPU driver and enables -# etnaviv support. -MACHINEOVERRIDES .= ":use-mainline-bsp" - -# Disable meta-freescale package architecure mangling, as it causes -# issues with AGL's explicit setting of DEFAULTTUNE. -INHERIT_remove = "fsl-dynamic-packagearch" -MACHINE_SOCARCH = "${TUNE_PKGARCH}" - -# Disable the meta-freescale weston-init bbappend as it conflicts -# with AGL's. -BBMASK = "meta-freescale/recipes-graphics/wayland/weston-init" - -# Set CMA size large enough to work with AGL -UBOOT_EXTLINUX_KERNEL_ARGS_append = " cma=512M" - -AGL_DEFAULT_INITRAMFS_FSTYPES := "" +# Force use of the community supported LTS kernel instead of the +# default linux-fslc +IMX_DEFAULT_KERNEL:imx6qdlsabreauto = "linux-fslc-lts" diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc new file mode 100644 index 000000000..b3faadd0a --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk-common.inc @@ -0,0 +1,8 @@ +require agl_imx-common.inc + +# Add helper to drive setting up HCI UART device +# NOTE: Disabled 2023/05 due to kernel oops, further investigation +# required, see SPEC-4807 in JIRA. +#MACHINE_EXTRA_RRECOMMENDS:append = " hci-uart-helper" + +AGL_DEFAULT_INITRAMFS_FSTYPES := "" diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc new file mode 100644 index 000000000..3988fcd6f --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk-viv.inc @@ -0,0 +1,8 @@ +require agl_imx8mq-evk-common.inc + +IMX_DEFAULT_BSP = "nxp" + +# NOTE: +# There is some potential benefit to using the community supported +# linux-fslc-imx hybrid kernel here, but keeping the configuration +# close to upstream to ease maintenance seems worthwhile. diff --git a/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc b/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc new file mode 100644 index 000000000..620ee0fdd --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_imx8mq-evk.inc @@ -0,0 +1,23 @@ +require agl_imx8mq-evk-common.inc + +# NOTE: +# Currently using the upstream default of IMX_DEFAULT_BSP = "mainline", +# since we want to use the etnaviv driver and upstream Mesa + weston +# stack. More tweaks are required to accomplish that if the BSP is set +# to "nxp". + +# Force use of the community supported hybrid NXP/LTS kernel instead of +# the default linux-fslc. This is required to get the drivers required +# for HDMI output. +IMX_DEFAULT_KERNEL:imx8mq-evk = "linux-fslc-imx" + +# Tweaks to allow using linux-fslc-imx on its own without the whole +# NXP BSP. Just the DISTROOVERRIDES change on its own is not enough, +# as COMPATIBLE_MACHINE is evaluated early enough that the recipe is +# not seen as compatible without an explicit override. +COMPATIBLE_MACHINE:pn-linux-fslc-imx = "(imx8mq-evk)" +DISTROOVERRIDES:pn-linux-fslc-imx:append = "mx8-nxp-bsp" + +# Add our own over-ride for use in a few recipes where there is +# conflicting Vivante vs etnaviv configuration. +MACHINEOVERRIDES .= ":etnaviv" diff --git a/meta-agl-bsp/conf/include/agl_imx8mqevk-common.inc b/meta-agl-bsp/conf/include/agl_imx8mqevk-common.inc deleted file mode 100644 index 50567583c..000000000 --- a/meta-agl-bsp/conf/include/agl_imx8mqevk-common.inc +++ /dev/null @@ -1,19 +0,0 @@ -DISTRO_FEATURES_append = " agl-medium-arm-compiler" - -# Force use of the community supported LTS kernel instead of the -# default linux-imx -IMX_DEFAULT_KERNEL_imx8mqevk = "linux-fslc-imx" - -# For EVKB wifi support -MACHINE_FEATURES_append = " bcm4356" - -# Disable meta-freescale package architecure mangling, as it causes -# issues with AGL's explicit setting of DEFAULTTUNE. -INHERIT_remove = "fsl-dynamic-packagearch" -MACHINE_SOCARCH = "${TUNE_PKGARCH}" - -# Disable the meta-freescale weston-init bbappend as it conflicts -# with AGL's. -BBMASK = "meta-freescale/recipes-graphics/wayland/weston-init" - -AGL_DEFAULT_INITRAMFS_FSTYPES := "" diff --git a/meta-agl-bsp/conf/include/agl_imx8mqevk-viv.inc b/meta-agl-bsp/conf/include/agl_imx8mqevk-viv.inc deleted file mode 100644 index 8227f5c06..000000000 --- a/meta-agl-bsp/conf/include/agl_imx8mqevk-viv.inc +++ /dev/null @@ -1 +0,0 @@ -include agl_imx8mqevk-common.inc diff --git a/meta-agl-bsp/conf/include/agl_imx8mqevk.inc b/meta-agl-bsp/conf/include/agl_imx8mqevk.inc deleted file mode 100644 index 88c06336c..000000000 --- a/meta-agl-bsp/conf/include/agl_imx8mqevk.inc +++ /dev/null @@ -1,23 +0,0 @@ -include agl_imx8mqevk-common.inc - -# NOTE: currently not using IMX_DEFAULT_BSP = "mainline", as it -# requires more changes than this approach of disabling -# Vivante. - -# Add our own over-ride for use in a few recipes where there is -# conflicting Vivante vs etnaviv configuration. -MACHINEOVERRIDES .= ":etnaviv" - -# Knock out Vivante overrides -MACHINEOVERRIDES_EXTENDER_mx8mq_forcevariable = "" -PREFERRED_VERSION_weston_mx8 = "8.0.0" -PREFERRED_VERSION_wayland-protocols_mx8 = "1.20" -PREFERRED_VERSION_libdrm_mx8 = "2.4.100" - -CORE_IMAGE_EXTRA_INSTALL += "libdrm-etnaviv" - -PREFERRED_VERSION_gstreamer1.0_mx8 = "1.16.2" -PREFERRED_VERSION_gstreamer1.0-plugins-base_mx8 = "1.16.2" -PREFERRED_VERSION_gstreamer1.0-plugins-good_mx8 = "1.16.2" -PREFERRED_VERSION_gstreamer1.0-plugins-bad_mx8 = "1.16.2" -PREFERRED_VERSION_gstreamer1.0-plugins-ugly_mx8 = "1.16.2" diff --git a/meta-agl-bsp/conf/include/agl_j721e-evm.inc b/meta-agl-bsp/conf/include/agl_j721e-evm.inc new file mode 100644 index 000000000..963b5697d --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_j721e-evm.inc @@ -0,0 +1,11 @@ +# j721e-evm has a k3r5 BBMULTICONFIG to build its bootloader +# firmware, need to use an override to set DEFAULTTUNE back to +# what that machine configuration needs. +DEFAULTTUNE:k3r5:forcedefaulttune = "armv7athf" + +# Workaround for recipe assumption of poky location +LIC_FILES_CHKSUM:pn-ti-rtos-firmware = "file://${THISDIR}/../../licenses/TI-TFL;md5=a1b59cb7ba626b9dbbcbf00f3fbc438a" + +# meta-ti-bsp layer conf does break expectations wrt common folders +# meta-ti-bsp/conf/layer.conf:TI_COMMON_DEPLOY ?= "${TOPDIR}/deploy-ti" +TI_COMMON_DEPLOY := "${TMPDIR}/deploy"
\ No newline at end of file diff --git a/meta-agl-bsp/conf/include/agl_m3-salvator-x-nogfx.inc b/meta-agl-bsp/conf/include/agl_m3-salvator-x-nogfx.inc index 7f1248065..ebbb3006a 100644 --- a/meta-agl-bsp/conf/include/agl_m3-salvator-x-nogfx.inc +++ b/meta-agl-bsp/conf/include/agl_m3-salvator-x-nogfx.inc @@ -1,10 +1,6 @@ -require conf/include/agl_rcar-nogfx.inc +require conf/include/agl_salvator-nogfx.inc SOC_FAMILY = "r8a7796" BOARD_NAME = "m3-salvator-x" DTB_SUFFIX = "r8a7796-salvator-xs" -# Mask graphic Pkgs -BBMASK += "gles-user-module|kernel-module-gles|wayland-kms|libgbm" -# Mask MMP recipes -BBMASK += "kernel-module-uvcs-drv|omx-user-module" diff --git a/meta-agl-bsp/conf/include/agl_m3-salvator-x.inc b/meta-agl-bsp/conf/include/agl_m3-salvator-x.inc index 5dcb5373d..355040ba9 100644 --- a/meta-agl-bsp/conf/include/agl_m3-salvator-x.inc +++ b/meta-agl-bsp/conf/include/agl_m3-salvator-x.inc @@ -1,9 +1,6 @@ -require conf/include/agl_rcar.inc +require conf/include/agl_salvator.inc SOC_FAMILY = "r8a7796" BOARD_NAME = "m3-salvator-x" DTB_SUFFIX = "r8a7796-salvator-xs" -IMAGE_INSTALL_append_rcar-gen3 = " \ - kernel-module-vspmif \ -" diff --git a/meta-agl-bsp/conf/include/agl_m3ulcb-nogfx.inc b/meta-agl-bsp/conf/include/agl_m3ulcb-nogfx.inc index 5092c4bcb..31d99c342 100644 --- a/meta-agl-bsp/conf/include/agl_m3ulcb-nogfx.inc +++ b/meta-agl-bsp/conf/include/agl_m3ulcb-nogfx.inc @@ -2,13 +2,27 @@ require conf/include/agl_rcar-nogfx.inc SOC_FAMILY = "r8a7796" BOARD_NAME = "m3ulcb" -DTB_SUFFIX = "r8a7796-m3ulcb" +DTB_SUFFIX = "r8a77960-ulcb" # Mask graphic Pkgs BBMASK += "gles-user-module|kernel-module-gles|wayland-kms|libgbm" # Mask MMP recipes BBMASK += "kernel-module-uvcs-drv|omx-user-module" -DISTRO_FEATURES_append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" -IMAGE_INSTALL_append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen-base xen-mkimage', '', d)}" +# Work around use of obsolete Weston backend-fbdev in meta-rcar-gen3 +# when building without the proprietary driver stack. Masking out the +# weston_%.bbappend seems the simplest approach for now, as forcing +# USE_GLES = "1" to disable the adding of -Dbackend-default="fbdev" to +# EXTRA_OEMESON triggers adding "libgbm" to DEPENDS, which breaks due +# to that being a component specific to the proprietary stack we are +# explicitly disabling. If the "libgbm" usage in the bbappend was +# instead "virtual/libgbm" as is now used in poky, it might be possible +# to just tweak PREFERRED_PROVIDER_virtual/libgbm = "mesa". +BBMASK += "meta-rcar-gen3/recipes-graphics/wayland/weston_%.bbappend" +# do use software rendering to display the compositor +# used for images w/o binary-only driver +WESTON_USE_PIXMAN = "1" + +DISTRO_FEATURES:append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" +IMAGE_INSTALL:append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen-base xen-mkimage', '', d)}" diff --git a/meta-agl-bsp/conf/include/agl_m3ulcb.inc b/meta-agl-bsp/conf/include/agl_m3ulcb.inc index b845e8c3c..4f788324c 100644 --- a/meta-agl-bsp/conf/include/agl_m3ulcb.inc +++ b/meta-agl-bsp/conf/include/agl_m3ulcb.inc @@ -2,7 +2,7 @@ require conf/include/agl_rcar.inc SOC_FAMILY = "r8a7796" BOARD_NAME = "m3ulcb" -DTB_SUFFIX = "r8a7796-m3ulcb" +DTB_SUFFIX = "r8a77960-ulcb" -DISTRO_FEATURES_append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" -IMAGE_INSTALL_append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen-base xen-mkimage', '', d)}"
\ No newline at end of file +DISTRO_FEATURES:append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" +IMAGE_INSTALL:append = "${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen-base xen-mkimage', '', d)}" diff --git a/meta-agl-bsp/conf/include/agl_nitrogen6x.inc b/meta-agl-bsp/conf/include/agl_nitrogen6x.inc deleted file mode 100644 index 77eb97342..000000000 --- a/meta-agl-bsp/conf/include/agl_nitrogen6x.inc +++ /dev/null @@ -1,20 +0,0 @@ -DISTRO_FEATURES_append = " agl-medium-arm-compiler" - -# This disables the Freescale/NXP Vivante GPU driver and enables -# etnaviv support. -MACHINEOVERRIDES .= ":use-mainline-bsp" - -# Disable meta-freescale package architecure mangling, as it causes -# issues with AGL's explicit setting of DEFAULTTUNE. -INHERIT_remove = "fsl-dynamic-packagearch" -MACHINE_SOCARCH = "${TUNE_PKGARCH}" - -# Disable the meta-freescale weston-init bbappend as it conflicts -# with AGL's. -BBMASK = "meta-freescale/recipes-graphics/wayland/weston-init" - -# Set CMA size large enough to work with AGL -UBOOT_EXTLINUX_KERNEL_ARGS_append = " cma=512M" - -#WKS_FILE = "imx-uboot.wks" -AGL_DEFAULT_INITRAMFS_FSTYPES := "" diff --git a/meta-agl-bsp/conf/include/agl_qemuarm.inc b/meta-agl-bsp/conf/include/agl_qemuarm.inc index 739eb8dd0..2449e1800 100644 --- a/meta-agl-bsp/conf/include/agl_qemuarm.inc +++ b/meta-agl-bsp/conf/include/agl_qemuarm.inc @@ -1,14 +1,20 @@ -# Configuration for serial console -#QB_KERNEL_CMDLINE_APPEND_append = " console=ttyAMA0,115200n8" -# -# All boot message will be off -QB_KERNEL_CMDLINE_APPEND_append = " quiet" - # Build updatable image. Only takes effect when sota.bbclass is inherited -#DISTRO_FEATURES_append = " sota" +#DISTRO_FEATURES:append = " sota" # Root device ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02" # Use our own wks file WKS_FILE="directdisk.wks.in" + +# Use pixman as software renderer to avoid high cpu consumption by GL-renderer +WESTON_USE_PIXMAN = "1" + +# Over-ride setting in oe-core's qemuboot.bbclass +QB_MEM:qemuarm = "-m 2048" + +# Changes to make runqemu work out-of-the-box +QB_AUDIO_DRV:qemuarm := "alsa" +QB_MACHINE:qemuarm := "-machine virt-2.11 -smp 4" +QB_OPT_APPEND:qemuarm := "-show-cursor -device VGA,vgamem_mb=64,edid=on -device qemu-xhci -device usb-tablet -device usb-kbd -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" +QB_KERNEL_CMDLINE_APPEND:qemuarm := "console=ttyAMA0 verbose vmalloc=256M" diff --git a/meta-agl-bsp/conf/include/agl_qemuarm64.inc b/meta-agl-bsp/conf/include/agl_qemuarm64.inc index ca2cc947e..46d3b4c39 100644 --- a/meta-agl-bsp/conf/include/agl_qemuarm64.inc +++ b/meta-agl-bsp/conf/include/agl_qemuarm64.inc @@ -1,17 +1,20 @@ -# Configuration for serial console -#QB_KERNEL_CMDLINE_APPEND_append = " console=ttyAMA0,115200n8" - -# All boot message will be off -QB_KERNEL_CMDLINE_APPEND_append = " quiet" - # Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" +#DISTRO_FEATURES:append = " sota" # Root device ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02" -# Over-ride setting in oe-core's qemuarm64.conf -QB_MEM_qemuarm64 = "-m 2048" - # Use our own wks file WKS_FILE="directdisk.wks.in" + +# Use pixman as software renderer to avoid high cpu consumption by GL-renderer +WESTON_USE_PIXMAN = "1" + +# Over-ride setting in oe-core's qemuboot.bbclass +QB_MEM:qemuarm64 = "-m 2048" + +# Changes to make runqemu work out-of-the-box +QB_AUDIO_DRV:qemuarm64 := "alsa" +QB_MACHINE:qemuarm64 := "-machine virt -smp 4" +QB_OPT_APPEND:qemuarm64 := " -show-cursor -device VGA,vgamem_mb=64,edid=on -device qemu-xhci -device usb-tablet -device usb-kbd -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0" +QB_KERNEL_CMDLINE_APPEND:qemuarm64 := "console=ttyAMA0,115200n8 verbose"
\ No newline at end of file diff --git a/meta-agl-bsp/conf/include/agl_qemuriscv64.inc b/meta-agl-bsp/conf/include/agl_qemuriscv64.inc new file mode 100644 index 000000000..1ffc3cf0e --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_qemuriscv64.inc @@ -0,0 +1,11 @@ +# Build updatable image. Only takes effect when sota.bbclass is inherited +DISTRO_FEATURES:append = " sota" + +# Root device +ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02" + +# Over-ride setting in oe-core's qemuriscv64.conf +QB_MEM:qemuriscv64 = "-m 2048" + +# Use our own wks file +WKS_FILE="directdisk.wks.in" diff --git a/meta-agl-bsp/conf/include/agl_qemux86-64.inc b/meta-agl-bsp/conf/include/agl_qemux86-64.inc index 3915a5e47..cb40b8b37 100644 --- a/meta-agl-bsp/conf/include/agl_qemux86-64.inc +++ b/meta-agl-bsp/conf/include/agl_qemux86-64.inc @@ -12,17 +12,17 @@ UVESA_MODE = "1280x1024-32" # kernel command line. # # Configuration for serial console -QB_KERNEL_CMDLINE_APPEND_append = " console=ttyS0,115200n8" +QB_KERNEL_CMDLINE_APPEND:append = " console=ttyS0,115200n8" # # All boot message will be off -QB_KERNEL_CMDLINE_APPEND_append = " quiet" +QB_KERNEL_CMDLINE_APPEND:append = " quiet" # Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" +DISTRO_FEATURES:append = " sota" # Add firmware required by Up^2 board and default Intel mPCIe wifi card # sold by upshop.org -MACHINE_EXTRA_RRECOMMENDS_append = " \ +MACHINE_EXTRA_RRECOMMENDS:append = " \ linux-firmware-i915 \ linux-firmware-rtl8168 \ linux-firmware-ibt-hw-37-8 \ @@ -34,14 +34,17 @@ MACHINE_EXTRA_RRECOMMENDS_append = " \ # NOTE: wic.{xz,bmap} are here since qemu targets override # AGL_DEFAULT_IMAGE_FSTYPES to not include them, but for Intel # we actually do want them for use on physical hardware. -AGL_EXTRA_IMAGE_FSTYPES = "wic.xz wic.bmap ${@bb.utils.contains('DISTRO_FEATURES', 'AGLCI', 'wic.vmdk.xz', 'wic.vmdk', d)}" -IMAGE_BOOT_FILES_sota = "u-boot-qemux86-64.rom" +AGL_EXTRA_IMAGE_FSTYPES = "wic.xz wic.bmap ${@bb.utils.contains('AGL_FEATURES', 'AGLCI', 'wic.vmdk.xz', 'wic.vmdk', d)}" +IMAGE_BOOT_FILES:sota = "u-boot-qemux86-64.rom" # Root device ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02" # Force the virtio video device as 'vmware' doesn't always work -QB_OPT_APPEND_append = " -vga virtio" +QB_OPT_APPEND:append = " -vga virtio" + +# DRM device weston/compositor systemd unit should depend upon +WESTON_DRM_DEVICE = "dev-dri-card0.device" # Use our own wks file WKS_FILE="systemd-intel-corei7-64-bootdisk.wks" diff --git a/meta-agl-bsp/conf/include/agl_raspberrypi3.inc b/meta-agl-bsp/conf/include/agl_raspberrypi3.inc deleted file mode 100644 index a4989b79a..000000000 --- a/meta-agl-bsp/conf/include/agl_raspberrypi3.inc +++ /dev/null @@ -1,27 +0,0 @@ -# Maximum memory allowed to be assigned -GPU_MEM = "256" - -# Add CMA to the kernel arguments for SOTA -OSTREE_KERNEL_ARGS_sota_append = " cma=256M" - -#MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" - -# use u-boot always -RPI_USE_U_BOOT = "1" - -#RPI_KERNEL_DEVICETREE_remove_raspberrypi3 = "bcm2708-rpi-0-w.dtb" -#RPI_KERNEL_DEVICETREE_OVERLAYS_remove_raspberrypi3 = "overlays/lirc-rpi.dtbo" -#RPI_KERNEL_DEVICETREE_OVERLAYS_append_raspberrypi3 = " overlays/vc4-fkms-v3d.dtbo" - -MACHINE_FEATURES += "vc4graphics" - -# For libomxil -#LICENSE_FLAGS_WHITELIST = "commercial" - -IMAGE_INSTALL_append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-firmware-rpidistro-bcm43455 create-combined-dtb " - -# Psplash causes crash on first boot on RPi -IMAGE_FEATURES_remove = "splash" - -# Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" diff --git a/meta-agl-bsp/conf/include/agl_raspberrypi4.inc b/meta-agl-bsp/conf/include/agl_raspberrypi4.inc index ae302aae1..4ba7ff0f6 100644 --- a/meta-agl-bsp/conf/include/agl_raspberrypi4.inc +++ b/meta-agl-bsp/conf/include/agl_raspberrypi4.inc @@ -2,27 +2,36 @@ GPU_MEM = "256" # Add CMA to the kernel arguments for SOTA -OSTREE_KERNEL_ARGS_sota_append = " cma=256M" +OSTREE_KERNEL_ARGS:sota:append = " cma=256M" # use u-boot always RPI_USE_U_BOOT = "1" +# Use UART for serial console +ENABLE_UART ?= "1" + # For libomxil -#LICENSE_FLAGS_WHITELIST = "commercial" +#LICENSE_FLAGS_ACCEPTED += "commercial" + +# For linux-firmware-rpidistro +LICENSE_FLAGS_ACCEPTED += "synaptics-killswitch" -IMAGE_INSTALL_append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-firmware-rpidistro-bcm43455 create-combined-dtb " +IMAGE_INSTALL:append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-firmware-rpidistro-bcm43455 create-combined-dtb " # Psplash causes crash on first boot on RPi -IMAGE_FEATURES_remove = "splash" +IMAGE_FEATURES:remove = "splash" # Build updatable image. Only takes effect when sota.bbclass is inherited -DISTRO_FEATURES_append = " sota" +DISTRO_FEATURES:append = " sota" # Add xen build, if the xen feature activated -DISTRO_FEATURES_append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" +DISTRO_FEATURES:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" # add xen-tools to build -IMAGE_INSTALL_append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', 'xen-tools xen-mkimage-rpi4', '', d)}" +IMAGE_INSTALL:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', 'xen-tools xen-mkimage-rpi4', '', d)}" # Add xen-raspberry binary to boot files -IMAGE_BOOT_FILES_append = " ${@bb.utils.contains('AGL_XEN_WANTED','1', 'xen-${MACHINE}', '',d)}" +IMAGE_BOOT_FILES:append = " ${@bb.utils.contains('AGL_XEN_WANTED','1', 'xen-${MACHINE}', '',d)}" + +#DISPLAY CONFIGURATION +WESTON_DISPLAYS:raspberrypi4 = " hdmi-a-1-90 hdmi-a-2-90" diff --git a/meta-agl-bsp/conf/include/agl_raspberrypi5.inc b/meta-agl-bsp/conf/include/agl_raspberrypi5.inc new file mode 100644 index 000000000..a0e675956 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_raspberrypi5.inc @@ -0,0 +1,34 @@ +# Maximum memory allowed to be assigned +GPU_MEM = "256" + +# Add CMA to the kernel arguments for SOTA +OSTREE_KERNEL_ARGS:sota:append = " cma=256M" + +# use u-boot always (RPi5 U-boot is not ready yet) +RPI_USE_U_BOOT = "0" + +# Use UART for serial console +ENABLE_UART ?= "1" + +# For libomxil +#LICENSE_FLAGS_ACCEPTED = "commercial" + +IMAGE_INSTALL:append = " kernel-modules linux-firmware-rpidistro-bcm43430 linux-firmware-rpidistro-bcm43455 create-combined-dtb " + +# Psplash causes crash on first boot on RPi +IMAGE_FEATURES:remove = "splash" + +# Build updatable image. Only takes effect when sota.bbclass is inherited +DISTRO_FEATURES:append = " sota" + +# Add xen build, if the xen feature activated +DISTRO_FEATURES:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', ' xen', '', d)}" + +# add xen-tools to build +IMAGE_INSTALL:append = " ${@bb.utils.contains('AGL_XEN_WANTED', '1', 'xen-tools xen-mkimage-rpi4', '', d)}" + +# Add xen-raspberry binary to boot files +IMAGE_BOOT_FILES:append = " ${@bb.utils.contains('AGL_XEN_WANTED','1', 'xen-${MACHINE}', '',d)}" + +#DISPLAY CONFIGURATION +WESTON_DISPLAYS:raspberrypi5 = " hdmi-a-1-90 hdmi-a-2-90" diff --git a/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc b/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc index a7fabfac8..fb67fd976 100644 --- a/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc +++ b/meta-agl-bsp/conf/include/agl_rcar-nogfx.inc @@ -1,9 +1,60 @@ -DISTRO_FEATURES_append = " sota" +DISTRO_FEATURES:append = " sota" OSTREE_KERNEL = "Image" -IMAGE_BOOT_FILES_sota = "renesas-ota-bootfiles/* ${DTB_SUFFIX}.dtb" +IMAGE_BOOT_FILES:sota = "renesas-ota-bootfiles/* ${DTB_SUFFIX}.dtb" OSTREE_BOOTLOADER ?= "u-boot" -WKS_FILE = "singlepart-noloader.wks" +WKS_FILE:rcar-gen3 = "singlepart-noloader.wks" RENESAS_DATADIR = "/usr" + +IMAGE_INSTALL:append:rcar-gen3 = " \ + kernel-devicetree \ +" + +# +# Workaround to avoid pseudo aborts triggered by the kernel module +# recipes writing to KERNELSRC in do_install, errors are of the form +# (from pseudo.log): +# +# path mismatch [27 links]: ino 19366408 db 'NAMELESS FILE' req 'build/tmp/work-shared/h3ulcb/kernel-source/include'. +# +# See the commit messages in poky commits 4e7c211 and 3b7f2c6 and the +# wiki page at: +# +# https://wiki.yoctoproject.org/wiki/Pseudo_Abort +# +# for details on the pseudo change. These can potentially be moved +# to the recipes in the BSP, or removed if the recipes are changed to +# shift the module headers and symbols to their dev packages. +# +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-avb-mch = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-avb-mse = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-avb-streaming = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-scu-src = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-ssp = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-tddmac = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-tsif = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-mmngr = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-mmngrbuf = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-qos = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-vsp2driver = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-vspmif = ",${KERNELSRC}" +PSEUDO_IGNORE_PATHS:append:pn-kernel-module-vspm = ",${KERNELSRC}" + +# Mask out base-files and systemd bbappends to avoid changing systemd-tmpfiles +# behavior, see SPEC-4256 for a more involved explanation. +BBMASK += "meta-renesas/meta-rcar-gen3/recipes-core/base-files/ meta-renesas/meta-rcar-gen3/recipes-core/systemd/" + +# Mask out cogl bbappend to avoid meta-gnome dependency +BBMASK += "meta-renesas/meta-rcar-gen3/recipes-graphics/cogl/cogl-1.0_1.%.bbappend" + +# Provide default value that avoids errors from a new packaging QA +# check with respect to packagegroups depending on versioned library +# packages needing to be machine-specific. +# +# Note that this needs to be done here in global configuration space as +# opposed to in a bbappend because the value needs to be set before the +# packagegroup bbclass is inherited. This can be removed when upstream +# is fixed to add the required PACKAGE_ARCH = "${MACHINE_ARCH}". +PACKAGE_ARCH:pn-packagegroup-multimedia-libs = "${MACHINE_ARCH}" diff --git a/meta-agl-bsp/conf/include/agl_rcar.inc b/meta-agl-bsp/conf/include/agl_rcar.inc index dd64ae772..01314f8c9 100644 --- a/meta-agl-bsp/conf/include/agl_rcar.inc +++ b/meta-agl-bsp/conf/include/agl_rcar.inc @@ -1,33 +1,36 @@ require conf/include/agl_rcar-nogfx.inc # Enable AGL virtualization features -MACHINE_FEATURES_append = " agl-egvirt" +MACHINE_FEATURES:append:rcar-gen3 = " agl-egvirt" # Enable Gfx Pkgs -MACHINE_FEATURES_append = " gsx" -MULTI_PROVIDER_WHITELIST += "virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" +MACHINE_FEATURES:append:rcar-gen3 = " gsx" +BB_MULTI_PROVIDER_ALLOWED:append:rcar-gen3 = " virtual/libgl virtual/egl virtual/libgles1 virtual/libgles2" # for Wayland/Weston -PREFERRED_PROVIDER_virtual/libgles1 = "" -PREFERRED_PROVIDER_virtual/libgles2 = "virtual-gles-user-module" -PREFERRED_PROVIDER_virtual/egl = "virtual-gles-user-module" -PREFERRED_PROVIDER_virtual/libgl = "" -PREFERRED_PROVIDER_virtual/mesa = "mesa" -PREFERRED_PROVIDER_libgbm = "libgbm" -PREFERRED_RPROVIDER_libgbm-dev = "libgbm" +PREFERRED_PROVIDER_virtual/libgles1:rcar-gen3 = "" +PREFERRED_PROVIDER_virtual/libgles2:rcar-gen3 = "virtual-gles-user-module" +PREFERRED_PROVIDER_virtual/egl:rcar-gen3 = "virtual-gles-user-module" +PREFERRED_PROVIDER_virtual/libgl:rcar-gen3 = "" +PREFERRED_PROVIDER_virtual/mesa:rcar-gen3 = "mesa" -PREFERRED_RPROVIDER_libomxil = "omx-user-module" -PREFERRED_PROVIDER_virtual/libomxil = "omx-user-module" +PREFERRED_PROVIDER_libgbm:rcar-gen3 = "libgbm" +PREFERRED_PROVIDER_virtual/libgbm:rcar-gen3 = "libgbm" +PREFERRED_RPROVIDER_libgbm-dev:rcar-gen3 = "libgbm" + +PREFERRED_RPROVIDER_libomxil:rcar-gen3 = "omx-user-module" +PREFERRED_PROVIDER_virtual/libomxil:rcar-gen3 = "omx-user-module" +VIRTUAL-RUNTIME_libomxil:rcar-gen3 = "omx-user-module" # Add for gstreamer plugins ugly -LICENSE_FLAGS_WHITELIST = "commercial" +LICENSE_FLAGS_ACCEPTED:rcar-gen3 = "commercial" -MACHINE_FEATURES_append = " multimedia" +MACHINE_FEATURES:append:rcar-gen3 = " multimedia" -DISTRO_FEATURES_append = " use_eva_pkg" +DISTRO_FEATURES:append:rcar-gen3 = " use_eva_pkg" -#DISTRO_FEATURES_append = " h265dec_lib mpeg2dec_lib" -DISTRO_FEATURES_append = " h264dec_lib h264enc_lib aaclcdec_lib aaclcdec_mdw" +#DISTRO_FEATURES:append:rcar-gen3 = " h265dec_lib mpeg2dec_lib" +DISTRO_FEATURES:append:rcar-gen3 = " h264dec_lib h264enc_lib aaclcdec_lib aaclcdec_mdw" # Mask out meta-renesas-rcar-gen3's tweaks to weston-init, as they do # not seem necessary for anything in AGL, and the addition of @@ -38,13 +41,21 @@ DISTRO_FEATURES_append = " h264dec_lib h264enc_lib aaclcdec_lib aaclcdec_mdw" # getting weston started. There is no clear rationale expressed in the # meta-renesas-rcar-gen3 commit history for the extra dependencies, and # testing shows no issues on H3ULCB when not having them. -BBMASK += "meta-rcar-gen3/recipes-graphics/wayland/weston-init.bbappend" +BBMASK += "meta-renesas/meta-rcar-gen3/recipes-graphics/wayland/weston-init.bbappend" -IMAGE_INSTALL_append_rcar-gen3 = " \ - kernel-devicetree \ +# Add graphics and decoder drivers to packagegroup-machine-base +# recommendation. +MACHINE_EXTRA_RRECOMMENDS:append:rcar-gen3 = " \ kernel-module-pvrsrvkm \ kernel-module-vsp2 \ kernel-module-vspm \ kernel-module-vspm-if \ omx-user-module \ " + +# Mask out BSP layer gstreamer* 1.22.x bbappends for now, as the BSP +# effectively is building 1.20.x plugins and packaging them as 1.22, +# which breaks building various things. The whole directory is not +# commented out because we still want the vspfilter plugin. +BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-omx" +BBMASK += "meta-renesas/meta-rcar-gen3/recipes-multimedia/gstreamer/gstreamer1.0-plugins-" diff --git a/meta-agl-bsp/conf/include/agl_refhw-h3.inc b/meta-agl-bsp/conf/include/agl_refhw-h3.inc new file mode 100644 index 000000000..6eee8149f --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_refhw-h3.inc @@ -0,0 +1,16 @@ +AGL_FEATURES:append:h3ulcb = " agl-refhw-h3" + +# Reference hardware has USB3 +MACHINE_FEATURES:append:h3ulcb = " usb3" + +KERNEL_DEVICETREE:append:h3ulcb = " renesas/r8a77951-agl-refhw.dtb" + +UBOOT_CONFIG:append:h3ulcb = " agl-refhw" +UBOOT_CONFIG[agl-refhw] = "rcar3_salvator-x_defconfig" + +MACHINE_EXTRA_RRECOMMENDS:append:h3ulcb = " \ + linux-firmware-wl18xx \ + ti-bt-firmware \ + wlconf \ + wireless-regdb-static \ +" diff --git a/meta-agl-bsp/conf/include/agl_s4sk.inc b/meta-agl-bsp/conf/include/agl_s4sk.inc new file mode 100644 index 000000000..8f4a91b44 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_s4sk.inc @@ -0,0 +1,9 @@ +SOC_FAMILY = "r8a779f0" +BOARD_NAME = "s4sk" + +#ws2.0 +DTB_SUFFIX = "r8a779f0-s4sk" +WKS_FILE = "singlepart-noloader.wks" +IMAGE_INSTALL:append = " \ + kernel-devicetree \ +" diff --git a/meta-agl-bsp/conf/include/agl_salvator-nogfx.inc b/meta-agl-bsp/conf/include/agl_salvator-nogfx.inc new file mode 100644 index 000000000..06e635ca0 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_salvator-nogfx.inc @@ -0,0 +1,17 @@ +require conf/include/agl_rcar-nogfx.inc + +# Mask graphic Pkgs +BBMASK += "gles-user-module|kernel-module-gles|wayland-kms|libgbm" +# Mask MMP recipes +BBMASK += "kernel-module-uvcs-drv|omx-user-module" +# Work around use of obsolete Weston backend-fbdev in meta-rcar-gen3 +# when building without the proprietary driver stack. Masking out the +# weston_%.bbappend seems the simplest approach for now, as forcing +# USE_GLES = "1" to disable the adding of -Dbackend-default="fbdev" to +# EXTRA_OEMESON triggers adding "libgbm" to DEPENDS, which breaks due +# to that being a component specific to the proprietary stack we are +# explicitly disabling. If the "libgbm" usage in the bbappend was +# instead "virtual/libgbm" as is now used in poky, it might be possible +# to just tweak PREFERRED_PROVIDER_virtual/libgbm = "mesa". +BBMASK += "meta-rcar-gen3/recipes-graphics/wayland/weston_%.bbappend" + diff --git a/meta-agl-bsp/conf/include/agl_salvator.inc b/meta-agl-bsp/conf/include/agl_salvator.inc new file mode 100644 index 000000000..78457868a --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_salvator.inc @@ -0,0 +1,6 @@ +require conf/include/agl_rcar.inc + +IMAGE_INSTALL:append:rcar-gen3 = " \ + kernel-module-vspm-if \ +" + diff --git a/meta-agl-bsp/conf/include/agl_unmatched.inc b/meta-agl-bsp/conf/include/agl_unmatched.inc new file mode 100644 index 000000000..f7c9f75f2 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_unmatched.inc @@ -0,0 +1,4 @@ +# firmware for graphics +MACHINE_EXTRA_RRECOMMENDS:append = " linux-firmware-radeon linux-firmware-amdgpu " + +# diff --git a/meta-agl-bsp/conf/include/agl_virtio-aarch64.inc b/meta-agl-bsp/conf/include/agl_virtio-aarch64.inc new file mode 100644 index 000000000..5093d0bd5 --- /dev/null +++ b/meta-agl-bsp/conf/include/agl_virtio-aarch64.inc @@ -0,0 +1,14 @@ +# Build updatable image. Only takes effect when sota.bbclass is inherited +DISTRO_FEATURES:append = " sota" + +# Root device +ROOT_VM = "root=PARTUUID=${DISK_SIGNATURE}-02" + +# Use our own wks file +WKS_FILE = "directdisk.wks.in" + +# Simplest possible option +AGL_DEFAULT_IMAGE_FSTYPES = "ext4" + +# Need to run QEMU with virtio-gpu device +PACKAGECONFIG:append:pn-qemu-system-native = " virglrenderer glx gtk+" diff --git a/meta-agl-bsp/conf/layer.conf b/meta-agl-bsp/conf/layer.conf index 2a999ddd5..036cde7a7 100644 --- a/meta-agl-bsp/conf/layer.conf +++ b/meta-agl-bsp/conf/layer.conf @@ -23,4 +23,4 @@ BBFILE_COLLECTIONS += "aglbsp" BBFILE_PATTERN_aglbsp = "^${LAYERDIR}/" BBFILE_PRIORITY_aglbsp = "60" -LAYERSERIES_COMPAT_aglbsp = "dunfell" +LAYERSERIES_COMPAT_aglbsp = "scarthgap" diff --git a/meta-agl-bsp/conf/machine/include/virtio.inc b/meta-agl-bsp/conf/machine/include/virtio.inc new file mode 100644 index 000000000..6f8a638a0 --- /dev/null +++ b/meta-agl-bsp/conf/machine/include/virtio.inc @@ -0,0 +1,23 @@ +PREFERRED_PROVIDER_virtual/egl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa" + +MACHINE_FEATURES = "alsa usbgadget screen vfat" + +MACHINEOVERRIDES =. "virtio-all:" + +IMAGE_FSTYPES += "tar.bz2 ext4" + +# Don't include kernels in standard images +RDEPENDS:${KERNEL_PACKAGE_NAME}-base = "" + +# Use a common kernel recipe for all VirtIO machines +PREFERRED_PROVIDER_virtual/kernel ??= "linux-yocto" + +# Use newer kernel +PREFERRED_VERSION_linux-yocto = "5.15.%" + +EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native" + +IMAGE_CLASSES += "qemuboot" diff --git a/meta-agl-bsp/conf/machine/virtio-aarch64.conf b/meta-agl-bsp/conf/machine/virtio-aarch64.conf new file mode 100644 index 000000000..d92d43943 --- /dev/null +++ b/meta-agl-bsp/conf/machine/virtio-aarch64.conf @@ -0,0 +1,36 @@ +#@TYPE: Machine +#@NAME: VirtIO ARMv8 machine +#@DESCRIPTION: Machine configuration for running an ARMv8 system on VirtIO based platform + +require conf/machine/include/arm/arch-armv8a.inc +require conf/machine/include/virtio.inc + +KERNEL_IMAGETYPE = "Image" + +SERIAL_CONSOLES ?= "115200;ttyAMA0 115200;hvc0" +SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}" + +# For runqemu +QB_SYSTEM_NAME = "qemu-system-aarch64" +QB_MACHINE = "-machine virt" +QB_CPU = "-cpu cortex-a57" +QB_CPU_KVM = "-cpu host -machine gic-version=3" +QB_MEM = "-m 2048" +# Standard Serial console +QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0" +# Ensure virtio-mmio support VirtIO 1.0 required by virtio-gpu +QB_OPT_APPEND = "-global virtio-mmio.force-legacy=false" +# TODO: upstream to OE-core runqemu +QB_OPT_APPEND += "-device virtio-gpu-device -display gtk,gl=on -show-cursor" +# Virtio input +QB_OPT_APPEND += "-device virtio-mouse-device -device virtio-keyboard-device" +# Add the 'virtio-rng-device' device otherwise the guest may run out of entropy +QB_OPT_APPEND += "-object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-device,rng=rng0" +# Virtio Networking support +QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no" +QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@" +# Virtio block device +QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0" +# Virtio serial console +QB_SERIAL_OPT = "-device virtio-serial-device -chardev null,id=virtcon -device virtconsole,chardev=virtcon" +QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon" |