From b0e535b28cc0db9ffa6cfe40adf6f9ea613e6483 Mon Sep 17 00:00:00 2001 From: Hector Bujanda Date: Tue, 26 Jan 2021 11:51:11 +0100 Subject: [PATCH 01/54] change recipes to build from 'master' branches Signed-off-by: Hector Bujanda --- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2017.03.bb | 4 ++-- meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2020.04.bb | 4 ++-- .../recipes-digi/trustfence/trustfence-sign-tools_git.bb | 2 +- .../kernel-module-qualcomm/kernel-module-qualcomm.bb | 2 +- meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc | 4 ++-- meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc | 4 ++-- meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb | 4 ++-- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2017.03.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2017.03.bb index 243ff2143..d4bb1af39 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2017.03.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2017.03.bb @@ -1,8 +1,8 @@ -# Copyright (C) 2018-2020 Digi International +# Copyright (C) 2018-2021 Digi International require digi-u-boot.inc -SRCBRANCH = "v2017.03/maint" +SRCBRANCH = "v2017.03/master" SRCREV = "${AUTOREV}" COMPATIBLE_MACHINE = "(ccimx6$|ccimx6ul|ccimx8x)" diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2020.04.bb b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2020.04.bb index 77298bf4e..2b3f9a8f7 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2020.04.bb +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey_2020.04.bb @@ -1,11 +1,11 @@ -# Copyright (C) 2020 Digi International +# Copyright (C) 2020-2021 Digi International require digi-u-boot.inc LIC_FILES_CHKSUM = "file://Licenses/README;md5=30503fd321432fc713238f582193b78e" DEPENDS += "flex-native bison-native" -SRCBRANCH = "v2020.04/maint" +SRCBRANCH = "v2020.04/master" SRCREV = "${AUTOREV}" COMPATIBLE_MACHINE = "(ccimx8x|ccimx8m|ccimx6ul)" diff --git a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools_git.bb b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools_git.bb index 97cee424b..135f203bc 100644 --- a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools_git.bb +++ b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools_git.bb @@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425 DEPENDS = "trustfence-cst coreutils util-linux" DEPENDS += "${@oe.utils.conditional('TRUSTFENCE_SIGN_MODE', 'AHAB', 'imx-mkimage', '', d)}" -SRCBRANCH = "v2020.04/maint" +SRCBRANCH = "v2020.04/master" SRCREV = "${AUTOREV}" S = "${WORKDIR}" diff --git a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb index 4437359c9..73d8df971 100644 --- a/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb +++ b/meta-digi-arm/recipes-kernel/kernel-module-qualcomm/kernel-module-qualcomm.bb @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca # Reference Qualcomm tag/version PV = "v4.0.11.213X" -SRCBRANCH = "qca65X4/dey-3.0/maint" +SRCBRANCH = "qca65X4/master" SRCREV = "${AUTOREV}" QCOM_GIT_URI = "${@oe.utils.conditional('DIGI_INTERNAL_GIT', '1' , '${DIGI_MTK_GIT}linux/qcacld-2.0.git;protocol=ssh', '${DIGI_GITHUB_GIT}/qcacld-2.0.git;protocol=https', d)}" diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc b/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc index 0774cb146..017651043 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc @@ -1,10 +1,10 @@ -# Copyright (C) 2018-2020 Digi International +# Copyright (C) 2018-2021 Digi International LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" LOCALVERSION = "-dey" -SRCBRANCH = "v5.4/dey-3.0/maint" +SRCBRANCH = "v5.4.47/master" SRCREV = "${AUTOREV}" # Select internal or Github Linux repo diff --git a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc index 4e66757e4..8254dc160 100644 --- a/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc +++ b/meta-digi-dey/recipes-digi/dey-examples/dey-examples-src.inc @@ -1,6 +1,6 @@ -# Copyright (C) 2019,2020, Digi International Inc. +# Copyright (C) 2019-2021 Digi International Inc. -SRCBRANCH = "dey-3.0/maint" +SRCBRANCH = "master" SRCREV = "${AUTOREV}" DEY_EXAMPLES_STASH = "${DIGI_MTK_GIT}dey/dey-examples.git;protocol=ssh" diff --git a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb index 9d977bb28..bf7d8bef8 100644 --- a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb +++ b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix_git.bb @@ -1,4 +1,4 @@ -# Copyright (C) 2017-2020 Digi International Inc. +# Copyright (C) 2017-2021 Digi International Inc. SUMMARY = "Digi APIX library" DESCRIPTION = "C library to access and manage your ConnectCore platform interfaces in an easy manner" @@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/ISC;md5=f3b90e78ea0cffb20bf5cca DEPENDS = "libsoc libsocketcan libgpiod" -SRCBRANCH ?= "dey-3.0/maint" +SRCBRANCH ?= "master" SRCREV = "${AUTOREV}" LIBDIGIAPIX_URI_STASH = "${DIGI_MTK_GIT}dey/libdigiapix.git;protocol=ssh" From d26d1711795d2ef4a8bac14fb126d88861b18cf2 Mon Sep 17 00:00:00 2001 From: Hector Bujanda Date: Tue, 26 Jan 2021 11:55:54 +0100 Subject: [PATCH 02/54] dey.conf: bump DEY version to -r4 Signed-off-by: Hector Bujanda --- meta-digi-dey/conf/distro/dey.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-dey/conf/distro/dey.conf b/meta-digi-dey/conf/distro/dey.conf index 0792479f0..cacf86280 100644 --- a/meta-digi-dey/conf/distro/dey.conf +++ b/meta-digi-dey/conf/distro/dey.conf @@ -1,6 +1,6 @@ DISTRO = "dey" DISTRO_NAME = "Digi Embedded Yocto" -DISTRO_VERSION = "3.0-r3" +DISTRO_VERSION = "3.0-r4" DISTRO_CODENAME = "zeus" SDK_VENDOR = "-deysdk" SDK_VERSION := "${@d.getVar('DISTRO_VERSION')}" From a76f3031fb83f1ef02b88aaffb6925cbec6fdbf3 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 14:38:04 +0100 Subject: [PATCH 03/54] meta-digi-arm: add support for ConnectCore 8M Mini DVK platform https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- meta-digi-arm/conf/machine/ccimx8mm-dvk.conf | 46 +++ meta-digi-arm/conf/machine/ccimx8mn-dvk.conf | 21 +- .../include/{ccimx8mn.inc => ccimx8m.inc} | 8 +- .../conf/machine/include/digi-defaults.inc | 1 + .../conf/machine/include/imx-digi-base.inc | 2 + sdk/build-github.sh | 14 +- sdk/build.sh | 3 +- sdk/config/ccimx8mm-dvk/bblayers.conf.sample | 24 ++ sdk/config/ccimx8mm-dvk/conf-notes.txt | 23 ++ sdk/config/ccimx8mm-dvk/local.conf.sample | 285 ++++++++++++++++++ 10 files changed, 410 insertions(+), 17 deletions(-) create mode 100644 meta-digi-arm/conf/machine/ccimx8mm-dvk.conf rename meta-digi-arm/conf/machine/include/{ccimx8mn.inc => ccimx8m.inc} (89%) create mode 100644 sdk/config/ccimx8mm-dvk/bblayers.conf.sample create mode 100644 sdk/config/ccimx8mm-dvk/conf-notes.txt create mode 100644 sdk/config/ccimx8mm-dvk/local.conf.sample diff --git a/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf b/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf new file mode 100644 index 000000000..ff88e92d7 --- /dev/null +++ b/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf @@ -0,0 +1,46 @@ +#@TYPE: Machine +#@NAME: ConnectCore 8M Mini Development Kit. +#@DESCRIPTION: Machine configuration for Digi's ConnectCore 8M Mini DVK. + +# Include the machine configuration for Digi's ConnectCore 8M module. +include conf/machine/include/ccimx8m.inc + +DIGI_FAMILY = "ccimx8mm" +MACHINEOVERRIDES =. "mx8:mx8m:mx8mm:ccimx8m:${DIGI_FAMILY}:" + +BOOTLOADER_SEEK = "33" + +# U-Boot configurations +# Last one is the default (the one the symlinks point at) +UBOOT_CONFIG ??= "ccimx8mm_dvk" +UBOOT_CONFIG[ccimx8mm_dvk] = "ccimx8mm_dvk_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}" +SPL_BINARY = "spl/u-boot-spl.bin" + +# Set u-boot DTB +UBOOT_DTB_NAME = "ccimx8mm-dvk.dtb" + +KERNEL_DEVICETREE ?= " \ + digi/ccimx8mm-dvk.dtb \ + digi/_ov_board_lvds_ccimx8m-dvk.dtbo \ + digi/_ov_board_user-leds_ccimx8m-dvk.dtbo \ + digi/_ov_som_bt_ccimx8m.dtbo \ + digi/_ov_som_mca-keypad_ccimx8m.dtbo \ + digi/_ov_som_quad_ccimx8m.dtbo \ + digi/_ov_som_wifi_ccimx8m.dtbo \ +" + +SERIAL_CONSOLES ?= "115200;ttymxc0" + +# Bluetooth tty +BT_TTY ?= "ttymxc1" + +# XBees +XBEE_RESET_N_GPIO ?= "mca-gpio@15,gpio1@8" +XBEE_SLEEP_RQ_GPIO ?= "mca-gpio@11,gpio1@7" +XBEE_TTY ?= "ttymxc3" + +# U-Boot script to be copied to the boot image +BOOT_SCRIPTS = "boot.scr:boot.scr" + +# Flash image types +IMAGE_FSTYPES ?= "boot.vfat ext4 sdcard tar.bz2 recovery.vfat" diff --git a/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf b/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf index 28ddaff9f..310671277 100644 --- a/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf +++ b/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf @@ -2,8 +2,13 @@ #@NAME: ConnectCore 8M Nano Development Kit. #@DESCRIPTION: Machine configuration for Digi's ConnectCore 8M Nano DVK. -# Include the machine configuration for Digi's ConnectCore 8M Nano module. -include conf/machine/include/ccimx8mn.inc +# Include the machine configuration for Digi's ConnectCore 8M module. +include conf/machine/include/ccimx8m.inc + +DIGI_FAMILY = "ccimx8mn" +MACHINEOVERRIDES =. "mx8:mx8m:mx8mn:ccimx8m:${DIGI_FAMILY}:" + +BOOTLOADER_SEEK = "32" # U-Boot configurations # Last one is the default (the one the symlinks point at) @@ -16,14 +21,14 @@ UBOOT_DTB_NAME = "ccimx8mn-dvk.dtb" KERNEL_DEVICETREE ?= " \ digi/ccimx8mn-dvk.dtb \ - digi/_ov_board_lvds_ccimx8mn-dvk.dtbo \ - digi/_ov_board_user-leds_ccimx8mn-dvk.dtbo \ + digi/_ov_board_lvds_ccimx8m-dvk.dtbo \ + digi/_ov_board_user-leds_ccimx8m-dvk.dtbo \ digi/_ov_board_v1-v2_ccimx8mn-dvk.dtbo \ - digi/_ov_som_bt_ccimx8mn.dtbo \ - digi/_ov_som_mca-keypad_ccimx8mn.dtbo \ - digi/_ov_som_quad_ccimx8mn.dtbo \ + digi/_ov_som_bt_ccimx8m.dtbo \ + digi/_ov_som_mca-keypad_ccimx8m.dtbo \ + digi/_ov_som_quad_ccimx8m.dtbo \ digi/_ov_som_v1_ccimx8mn.dtbo \ - digi/_ov_som_wifi_ccimx8mn.dtbo \ + digi/_ov_som_wifi_ccimx8m.dtbo \ " SERIAL_CONSOLES ?= "115200;ttymxc0" diff --git a/meta-digi-arm/conf/machine/include/ccimx8mn.inc b/meta-digi-arm/conf/machine/include/ccimx8m.inc similarity index 89% rename from meta-digi-arm/conf/machine/include/ccimx8mn.inc rename to meta-digi-arm/conf/machine/include/ccimx8m.inc index 8a59abfb2..2d8fc8fdb 100644 --- a/meta-digi-arm/conf/machine/include/ccimx8mn.inc +++ b/meta-digi-arm/conf/machine/include/ccimx8m.inc @@ -1,9 +1,6 @@ #@TYPE: Machine -#@NAME: ConnectCore 8M Nano module. -#@DESCRIPTION: Machine configuration for Digi's ConnectCore 8M Nano module. - -DIGI_FAMILY = "ccimx8mn" -MACHINEOVERRIDES =. "mx8:mx8m:mx8mn:ccimx8m:${DIGI_FAMILY}:" +#@NAME: ConnectCore 8M family of SOMs. +#@DESCRIPTION: Machine configuration for Digi's ConnectCore 8M family of SOMs. include conf/machine/include/imx-digi-base.inc include conf/machine/include/arm/arch-arm64.inc @@ -16,7 +13,6 @@ UBOOT_HAS_FASTBOOT = "true" # The bootloader image that gets flashed consists of U-Boot and several fw binaries EXTRA_IMAGEDEPENDS = "imx-boot" BOOTLOADER_IMAGE_RECIPE = "imx-boot" -BOOTLOADER_SEEK = "32" BOOTABLE_FILENAME = "${UBOOT_PREFIX}-${MACHINE}.bin" SDIMG_BOOTLOADER = "${DEPLOY_DIR_IMAGE}/${BOOTABLE_FILENAME}" diff --git a/meta-digi-arm/conf/machine/include/digi-defaults.inc b/meta-digi-arm/conf/machine/include/digi-defaults.inc index dad951872..401586d45 100644 --- a/meta-digi-arm/conf/machine/include/digi-defaults.inc +++ b/meta-digi-arm/conf/machine/include/digi-defaults.inc @@ -19,6 +19,7 @@ LINUXLIBCVERSION ?= "5.4%" # ccimx6ul 5.4 2020.04 # ccimx8x 5.4 2020.04 (packaged in imx-boot) # ccimx8mn 5.4 2020.04 (packaged in imx-boot) +# ccimx8mm 5.4 2020.04 (packaged in imx-boot) # # Help variables used in recipes diff --git a/meta-digi-arm/conf/machine/include/imx-digi-base.inc b/meta-digi-arm/conf/machine/include/imx-digi-base.inc index 54bce7bf4..2a1c018e1 100644 --- a/meta-digi-arm/conf/machine/include/imx-digi-base.inc +++ b/meta-digi-arm/conf/machine/include/imx-digi-base.inc @@ -29,6 +29,7 @@ MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxipu:imxpxp:imxvpu:imxvpucnm:imxg MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp" MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d" MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d" +MACHINEOVERRIDES_EXTENDER_mx8mm = "imxdrm:imxvpu:imxgpu:imxgpu2d:imxgpu3d" # Sub-architecture support MACHINE_SOCARCH_SUFFIX ?= "" @@ -39,6 +40,7 @@ MACHINE_SOCARCH_SUFFIX_mx8qxp = "-mx8qxp" MACHINE_SOCARCH_SUFFIX_mx8dxp = "-mx8dxp" MACHINE_SOCARCH_SUFFIX_mx8dx = "-mx8dx" MACHINE_SOCARCH_SUFFIX_mx8mn = "-mx8mn" +MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm" MACHINE_ARCH_FILTER = "virtual/kernel" MACHINE_SOCARCH_FILTER_append_imxvpu = " \ diff --git a/sdk/build-github.sh b/sdk/build-github.sh index 83d8bbc19..d5885aa09 100755 --- a/sdk/build-github.sh +++ b/sdk/build-github.sh @@ -3,7 +3,7 @@ # # build-github.sh # -# Copyright (C) 2015-2019 by Digi International Inc. +# Copyright (C) 2015-2021 by Digi International Inc. # All rights reserved. # # This program is free software; you can redistribute it and/or modify it @@ -22,7 +22,16 @@ set -e -AVAILABLE_PLATFORMS="ccimx8mn-dvk ccimx8x-sbc-pro ccimx8x-sbc-express ccimx6qpsbc ccimx6sbc ccimx6ulsbc ccimx6ulstarter" +AVAILABLE_PLATFORMS=" \ + ccimx8mm-dvk \ + ccimx8mn-dvk \ + ccimx8x-sbc-pro \ + ccimx8x-sbc-express \ + ccimx6qpsbc \ + ccimx6sbc \ + ccimx6ulsbc \ + ccimx6ulstarter \ +" MANIFEST_URL="https://github.com/digi-embedded/dey-manifest.git" @@ -122,6 +131,7 @@ while read _pl _tgt; do # the fly with underscores. eval "${_pl//-/_}_tgt=\"${_tgt//,/ }\"" done<<-_EOF_ + ccimx8mm-dvk dey-image-qt ccimx8mn-dvk dey-image-qt ccimx8x-sbc-pro dey-image-qt ccimx8x-sbc-express dey-image-qt diff --git a/sdk/build.sh b/sdk/build.sh index 8b7ff28b2..7047f61f7 100755 --- a/sdk/build.sh +++ b/sdk/build.sh @@ -3,7 +3,7 @@ # # build.sh # -# Copyright (C) 2013-2019 by Digi International Inc. +# Copyright (C) 2013-2021 by Digi International Inc. # All rights reserved. # # This program is free software; you can redistribute it and/or modify it @@ -174,6 +174,7 @@ while read _pl _var _tgt; do eval "${_pl//-/_}_var=\"${_var//,/ }\"" eval "${_pl//-/_}_tgt=\"${_tgt//,/ }\"" done<<-_EOF_ + ccimx8mm-dvk DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8mn-dvk DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8x-sbc-pro DONTBUILDVARIANTS dey-image-qt,dey-image-aws ccimx8x-sbc-express DONTBUILDVARIANTS dey-image-qt,dey-image-aws diff --git a/sdk/config/ccimx8mm-dvk/bblayers.conf.sample b/sdk/config/ccimx8mm-dvk/bblayers.conf.sample new file mode 100644 index 000000000..68d2495bf --- /dev/null +++ b/sdk/config/ccimx8mm-dvk/bblayers.conf.sample @@ -0,0 +1,24 @@ +# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf +# changes incompatibly +POKY_BBLAYERS_CONF_VERSION = "2" + +BBPATH = "${TOPDIR}" +BBFILES ?= "" + +BBLAYERS ?= " \ + ##OEROOT##/meta \ + ##OEROOT##/meta-poky \ + ##OEROOT##/meta-yocto-bsp \ + ##DIGIBASE##/meta-openembedded/meta-oe \ + ##DIGIBASE##/meta-openembedded/meta-python \ + ##DIGIBASE##/meta-openembedded/meta-networking \ + ##DIGIBASE##/meta-openembedded/meta-webserver \ + ##DIGIBASE##/meta-qt5 \ + ##DIGIBASE##/meta-swupdate \ + ##DIGIBASE##/meta-freescale \ + ##DIGIBASE##/meta-fsl-demos \ + ##DIGIBASE##/meta-python2 \ + ##DIGIBASE##/meta-webkit \ + ##DIGIBASE##/meta-digi/meta-digi-arm \ + ##DIGIBASE##/meta-digi/meta-digi-dey \ + " diff --git a/sdk/config/ccimx8mm-dvk/conf-notes.txt b/sdk/config/ccimx8mm-dvk/conf-notes.txt new file mode 100644 index 000000000..39ed1c407 --- /dev/null +++ b/sdk/config/ccimx8mm-dvk/conf-notes.txt @@ -0,0 +1,23 @@ +Digi Embedded Yocto provides the following image recipes: + + * dey-image-qt: graphical QT image + + By default the image is XWayland-based so it provides a full Weston + desktop environment. + + To compile the image for the framebuffer (instead of XWayland) add + the following line to the project's conf/local.conf: + + DISTRO_FEATURES_remove = "x11 wayland vulkan" + + * dey-image-webkit: graphical WebKit image + + By default the image is XWayland-based so it provides a full Weston + desktop environment. + + * dey-image-aws: console-only image supporting Amazon Web Services IoT + + This image includes the AWS Greengrass Core and an AWS IoT platform + example application. For more information on AWS support in Digi + Embedded Yocto see the online documentation. + diff --git a/sdk/config/ccimx8mm-dvk/local.conf.sample b/sdk/config/ccimx8mm-dvk/local.conf.sample new file mode 100644 index 000000000..de295e30e --- /dev/null +++ b/sdk/config/ccimx8mm-dvk/local.conf.sample @@ -0,0 +1,285 @@ +# +# This file is your local configuration file and is where all local user settings +# are placed. The comments in this file give some guide to the options a new user +# to the system might want to change but pretty much any configuration option can +# be set in this file. More adventurous users can look at local.conf.extended +# which contains other examples of configuration which can be placed in this file +# but new users likely won't need any of them initially. +# +# Lines starting with the '#' character are commented out and in some cases the +# default values are provided as comments to show people example syntax. Enabling +# the option is a question of removing the # character and making any change to the +# variable as required. + +# +# Machine Selection +# +# You need to select a specific machine to target the build with. There are a selection +# of emulated machines available which can boot and run in the QEMU emulator: +# +#MACHINE ?= "qemuarm" +#MACHINE ?= "qemuarm64" +#MACHINE ?= "qemumips" +#MACHINE ?= "qemumips64" +#MACHINE ?= "qemuppc" +#MACHINE ?= "qemux86" +#MACHINE ?= "qemux86-64" +# +# There are also the following hardware board target machines included for +# demonstration purposes: +# +#MACHINE ?= "beaglebone-yocto" +#MACHINE ?= "genericx86" +#MACHINE ?= "genericx86-64" +#MACHINE ?= "mpc8315e-rdb" +#MACHINE ?= "edgerouter" +# +# This sets the default machine to be qemux86-64 if no other machine is selected: +#MACHINE ??= "qemux86-64" + +MACHINE = "ccimx8mm-dvk" + +# +# Use Digi's internal git repositories +# +#DIGI_INTERNAL_GIT ?= "1" + +# +# Where to place downloads +# +# During a first build the system will download many different source code tarballs +# from various upstream projects. This can take a while, particularly if your network +# connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you +# can preserve this directory to speed up this part of subsequent builds. This directory +# is safe to share between multiple builds on the same machine too. +# +# The default is a downloads directory under TOPDIR which is the build directory. +# +#DL_DIR ?= "${TOPDIR}/downloads" + +# +# Where to place shared-state files +# +# BitBake has the capability to accelerate builds based on previously built output. +# This is done using "shared state" files which can be thought of as cache objects +# and this option determines where those files are placed. +# +# You can wipe out TMPDIR leaving this directory intact and the build would regenerate +# from these files if no changes were made to the configuration. If changes were made +# to the configuration, only shared state files where the state was still valid would +# be used (done using checksums). +# +# The default is a sstate-cache directory under TOPDIR. +# +#SSTATE_DIR ?= "${TOPDIR}/sstate-cache" + +# +# Where to place the build output +# +# This option specifies where the bulk of the building work should be done and +# where BitBake should place its temporary files and output. Keep in mind that +# this includes the extraction and compilation of many applications and the toolchain +# which can use Gigabytes of hard disk space. +# +# The default is a tmp directory under TOPDIR. +# +#TMPDIR = "${TOPDIR}/tmp" + +# +# Default policy config +# +# The distribution setting controls which policy settings are used as defaults. +# The default value is fine for general Yocto project use, at least initially. +# Ultimately when creating custom policy, people will likely end up subclassing +# these defaults. +# +DISTRO ?= "dey" +# As an example of a subclass there is a "bleeding" edge policy configuration +# where many versions are set to the absolute latest code from the upstream +# source control systems. This is just mentioned here as an example, its not +# useful to most new users. +# DISTRO ?= "poky-bleeding" + +# +# Package Management configuration +# +# This variable lists which packaging formats to enable. Multiple package backends +# can be enabled at once and the first item listed in the variable will be used +# to generate the root filesystems. +# Options are: +# - 'package_deb' for debian style deb files +# - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager) +# - 'package_rpm' for rpm style packages +# E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk" +# We default to rpm: +PACKAGE_CLASSES ?= "package_rpm" + +# +# SDK target architecture +# +# This variable specifies the architecture to build SDK items for and means +# you can build the SDK packages for architectures other than the machine you are +# running the build on (i.e. building i686 packages on an x86_64 host). +# Supported values are i686 and x86_64 +#SDKMACHINE ?= "i686" + +# +# Extra image configuration defaults +# +# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated +# images. Some of these options are added to certain image types automatically. The +# variable can contain the following options: +# "dbg-pkgs" - add -dbg packages for all installed packages +# (adds symbol information for debugging/profiling) +# "src-pkgs" - add -src packages for all installed packages +# (adds source code for debugging) +# "dev-pkgs" - add -dev packages for all installed packages +# (useful if you want to develop against libs in the image) +# "ptest-pkgs" - add -ptest packages for all ptest-enabled packages +# (useful if you want to run the package test suites) +# "tools-sdk" - add development tools (gcc, make, pkgconfig etc.) +# "tools-debug" - add debugging tools (gdb, strace) +# "eclipse-debug" - add Eclipse remote debugging support +# "tools-profile" - add profiling tools (oprofile, lttng, valgrind) +# "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.) +# "debug-tweaks" - make an image suitable for development +# e.g. ssh root access has a blank password +# There are other application targets that can be used here too, see +# meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details. +# We default to enabling the debugging tweaks. +EXTRA_IMAGE_FEATURES ?= "debug-tweaks" + +# +# Additional image features +# +# The following is a list of additional classes to use when building images which +# enable extra features. Some available options which can be included in this variable +# are: +# - 'buildstats' collect build statistics +# - 'image-mklibs' to reduce shared library files size for an image +# - 'image-prelink' in order to prelink the filesystem image +# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink +# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended +USER_CLASSES ?= "buildstats image-mklibs image-prelink" + +# +# Runtime testing of images +# +# The build system can test booting virtual machine images under qemu (an emulator) +# after any root filesystems are created and run tests against those images. It can also +# run tests against any SDK that are built. To enable this uncomment these lines. +# See classes/test{image,sdk}.bbclass for further details. +#IMAGE_CLASSES += "testimage testsdk" +#TESTIMAGE_AUTO_qemuall = "1" + +# +# Interactive shell configuration +# +# Under certain circumstances the system may need input from you and to do this it +# can launch an interactive shell. It needs to do this since the build is +# multithreaded and needs to be able to handle the case where more than one parallel +# process may require the user's attention. The default is iterate over the available +# terminal types to find one that works. +# +# Examples of the occasions this may happen are when resolving patches which cannot +# be applied, to use the devshell or the kernel menuconfig +# +# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none +# Note: currently, Konsole support only works for KDE 3.x due to the way +# newer Konsole versions behave +#OE_TERMINAL = "auto" +# By default disable interactive patch resolution (tasks will just fail instead): +PATCHRESOLVE = "noop" + +# +# Disk Space Monitoring during the build +# +# Monitor the disk space during the build. If there is less that 1GB of space or less +# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully +# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort +# of the build. The reason for this is that running completely out of space can corrupt +# files and damages the build in ways which may not be easily recoverable. +# It's necesary to monitor /tmp, if there is no space left the build will fail +# with very exotic errors. +BB_DISKMON_DIRS ??= "\ + STOPTASKS,${TMPDIR},1G,100K \ + STOPTASKS,${DL_DIR},1G,100K \ + STOPTASKS,${SSTATE_DIR},1G,100K \ + STOPTASKS,/tmp,100M,100K \ + ABORT,${TMPDIR},100M,1K \ + ABORT,${DL_DIR},100M,1K \ + ABORT,${SSTATE_DIR},100M,1K \ + ABORT,/tmp,10M,1K" + +# +# Shared-state files from other locations +# +# As mentioned above, shared state files are prebuilt cache data objects which can +# used to accelerate build time. This variable can be used to configure the system +# to search other mirror locations for these objects before it builds the data itself. +# +# This can be a filesystem directory, or a remote url such as http or ftp. These +# would contain the sstate-cache results from previous builds (possibly from other +# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the +# cache locations to check for the shared objects. +# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH +# at the end as shown in the examples below. This will be substituted with the +# correct path within the directory structure. +#SSTATE_MIRRORS ?= "\ +#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ +#file://.* file:///some/local/dir/sstate/PATH" + +# +# Yocto Project SState Mirror +# +# The Yocto Project has prebuilt artefacts available for its releases, you can enable +# use of these by uncommenting the following line. This will mean the build uses +# the network to check for artefacts at the start of builds, which does slow it down +# equally, it will also speed up the builds by not having to build things if they are +# present in the cache. It assumes you can download something faster than you can build it +# which will depend on your network. +# +#SSTATE_MIRRORS ?= "file://.* http://sstate.yoctoproject.org/2.5/PATH;downloadfilename=PATH" + +# +# Qemu configuration +# +# By default native qemu will build with a builtin VNC server where graphical output can be +# seen. The line below enables the SDL UI frontend too. +PACKAGECONFIG_append_pn-qemu-system-native = " sdl" +# By default libsdl2-native will be built, if you want to use your host's libSDL instead of +# the minimal libsdl built by libsdl2-native then uncomment the ASSUME_PROVIDED line below. +#ASSUME_PROVIDED += "libsdl2-native" + +# You can also enable the Gtk UI frontend, which takes somewhat longer to build, but adds +# a handy set of menus for controlling the emulator. +#PACKAGECONFIG_append_pn-qemu-system-native = " gtk+" + +# +# Hash Equivalence +# +# Enable support for automatically running a local hash equivalence server and +# instruct bitbake to use a hash equivalence aware signature generator. Hash +# equivalence improves reuse of sstate by detecting when a given sstate +# artifact can be reused as equivalent, even if the current task hash doesn't +# match the one that generated the artifact. +# +# A shared hash equivalent server can be set with ":" format +# +#BB_HASHSERVE = "auto" +#BB_SIGNATURE_HANDLER = "OEEquivHash" + +# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to +# track the version of this file when it was generated. This can safely be ignored if +# this doesn't mean anything to you. +CONF_VERSION = "1" + +# +# Enable local PR server +# +PRSERV_HOST = "localhost:0" + +# +# Some libraries and packages are covered by NXP EULA +# +#ACCEPT_FSL_EULA = "1" From 8b01fe57a94b576a643e524e18971b2e1a42021b Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 14:51:10 +0100 Subject: [PATCH 04/54] uboot: add support to ConnectCore 8M Mini DVK platform Add initial support cloned from ccimx8mn-dvk https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt | 66 ++++++++ .../ccimx8mm-dvk/install_linux_fw_sd.txt | 146 +++++++++++++++++ .../ccimx8mm-dvk/install_linux_fw_usb.txt | 147 ++++++++++++++++++ .../ccimx8mm-dvk/install_linux_fw_uuu.sh | 119 ++++++++++++++ .../u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt | 6 +- 5 files changed, 481 insertions(+), 3 deletions(-) create mode 100644 meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt create mode 100644 meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_sd.txt create mode 100644 meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_usb.txt create mode 100755 meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_uuu.sh diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt new file mode 100644 index 000000000..3e921656f --- /dev/null +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt @@ -0,0 +1,66 @@ +# +# U-Boot bootscript for EMMC/SD images created by Yocto. +# + +# Back up environment variables +setenv ORIG_overlays ${overlays} +setenv ORIG_extra_bootargs ${extra_bootargs} + +# Set SOC type to "imx8mm" if not already defined by U-Boot +if test ! -n "${soc_type}"; then + setenv soc_type "imx8mm" +fi + +# +# Determine overlays to apply depending on the hardware capabilities +# described by the HWID, SOM version, and carrier board version. +# +if test -n "${module_ram}"; then + setexpr som_hv ${hwid_2} \& 38 + setexpr som_hv ${som_hv} / 8 + + setexpr module_has_wifi ${hwid_2} \& 10000 + setexpr module_has_wifi ${module_has_wifi} / 10000 + setexpr module_has_bt ${hwid_2} \& 20000 + setexpr module_has_bt ${module_has_bt} / 20000 + + if test "${module_has_bt}" = "1" && test -z "${disable_bt}"; then + setenv overlays _ov_som_bt_ccimx8m.dtbo,${overlays} + fi + + if test "${module_has_wifi}" = "1" && test -z "${disable_wifi}"; then + setenv overlays _ov_som_wifi_ccimx8m.dtbo,${overlays} + fi +fi + +# Apply quad overlay if the SOC type is "imx8mm" +if test "${soc_type}" = "imx8mm"; then + setenv overlays _ov_som_quad_ccimx8m.dtbo,${overlays} +fi + +# Get the UUID of the configured boot partition. +part uuid mmc ${mmcbootdev}:${mmcpart} bootpart +# Check the boot source. +if test "${bootpart}" = "${part1_uuid}"; then + # We are booting from the eMMC using 'linux'. + true +elif test "${bootpart}" = "${part2_uuid}"; then + # We are booting from the eMMC using 'recovery'. + setenv boot_initrd true + setenv initrd_file uramdisk-recovery.img +else + # We are booting from the SD card. + setenv mmcroot /dev/mmcblk${mmcbootdev}p2 +fi +setenv extra_bootargs fbcon=logo-pos:center ${extra_bootargs} +dboot linux mmc ${mmcbootdev}:${mmcpart} + + + +# We only get here in case of an error on the dboot command. + +# Undo changes to environment variables +setenv overlays ${ORIG_overlays} +setenv ORIG_overlays +setenv extra_bootargs ${ORIG_extra_bootargs} +setenv ORIG_extra_bootargs diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_sd.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_sd.txt new file mode 100644 index 000000000..7b0e037ca --- /dev/null +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_sd.txt @@ -0,0 +1,146 @@ +# +# U-Boot script for installing Linux images created by Yocto from the SD +# card into the eMMC +# + +echo "############################################################" +echo "# Linux firmware install from micro SD #" +echo "############################################################" +echo "" +echo " This process will erase your eMMC and will install a new" +echo " U-Boot and Linux firmware images on the eMMC." +echo "" +echo " Press CTRL+C now if you wish to abort or wait 10 seconds" +echo " to continue." + +sleep 10 +if test $? -eq 1; then + echo "Aborted by user."; + exit; +fi + +setenv INSTALL_UBOOT_FILENAME imx-boot-ccimx8mm-dvk.bin; +setenv INSTALL_MMCDEV 1 +setenv INSTALL_LINUX_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.boot.vfat +setenv INSTALL_RECOVERY_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.recovery.vfat +setenv INSTALL_ROOTFS_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.ext4 + +# Check for presence of firmware files on the SD card +for install_f in ${INSTALL_UBOOT_FILENAME} ${INSTALL_LINUX_FILENAME} ${INSTALL_RECOVERY_FILENAME} ${INSTALL_ROOTFS_FILENAME}; do + if test ! -e mmc ${INSTALL_MMCDEV} ${install_f}; then + echo "ERROR: Could not find file ${install_f}"; + install_abort=1; + fi; +done +if test -n "${install_abort}"; then + echo "Aborted."; + exit; +fi + +# Skip user confirmation for U-Boot update +setenv forced_update 1 + +# Set bootdelay to zero so that firmware update is run immediately after +# the first reset. +setenv bootdelay 0 + +# Set target MMC device index to eMMC +setenv mmcdev 0 + +# Update U-Boot +echo "" +echo "" +echo ">> Installing U-Boot boot loader (target will reset)" +echo "" +echo "" +update uboot mmc ${INSTALL_MMCDEV} ${INSTALL_UBOOT_FILENAME} +if test $? -eq 1; then + # Use old-style update with source file system argument + update uboot mmc ${INSTALL_MMCDEV} fat ${INSTALL_UBOOT_FILENAME} + if test $? -eq 1; then + echo "[ERROR] Failed to update U-Boot boot loader!"; + echo ""; + echo "Aborted."; + exit; + fi +fi + +# Set 'bootcmd' to the second part of the script that will +# - Reset environment to defaults +# - Save the environment +# - Force on-the-fly updates to avoid possible verification errors +# - Partition the eMMC user data area for Linux +# - Update the 'linux' partition +# - Update the 'recovery' partition +# - Update the 'rootfs' partition +# - Configure recovery to wipe 'update' partition +# - Disable on-the-fly updates +# - Run 'recovery' and let the system boot after +setenv bootcmd " + env default -a; + saveenv; + setenv otf-update yes; + echo \"\"; + echo \"\"; + echo \">> Creating Linux partition table on the eMMC\"; + echo \"\"; + echo \"\"; + run partition_mmc_linux; + if test \$? -eq 1; then + echo \"[ERROR] Failed to create Linux partition table!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Installing Linux kernel and device tree files\"; + echo \"\"; + echo \"\"; + update linux mmc ${INSTALL_MMCDEV} ${INSTALL_LINUX_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update linux partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Installing recovery\"; + echo \"\"; + echo \"\"; + update recovery mmc ${INSTALL_MMCDEV} ${INSTALL_RECOVERY_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update recovery partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Installing Linux root file system\"; + echo \"\"; + echo \"\"; + update rootfs mmc ${INSTALL_MMCDEV} ${INSTALL_ROOTFS_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update rootfs partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + setenv boot_recovery yes; + setenv recovery_command wipe_update; + setenv otf-update; + saveenv; + echo \"\"; + echo \"\"; + echo \">> Firmware installation complete. Rebooting into recovery mode for final deployment.\"; + echo \"\"; + echo \"\"; + sleep 1; + reset; +" + +saveenv +reset diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_usb.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_usb.txt new file mode 100644 index 000000000..425f94f98 --- /dev/null +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_usb.txt @@ -0,0 +1,147 @@ +# +# U-Boot script for installing Linux images created by Yocto from a USB stick +# into the eMMC +# + +echo "#######################################################" +echo "# Linux firmware install from USB #" +echo "#######################################################" +echo "" +echo " This process will erase your eMMC and will install a new" +echo " U-Boot and Linux firmware images on the eMMC." +echo "" +echo " Press CTRL+C now if you wish to abort or wait 10 seconds" +echo " to continue." + +sleep 10 +if test $? -eq 1; then + echo "Aborted by user."; + exit; +fi + +setenv INSTALL_UBOOT_FILENAME imx-boot-ccimx8mm-dvk.bin; +setenv INSTALL_USBDEV 0 +setenv INSTALL_LINUX_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.boot.vfat +setenv INSTALL_RECOVERY_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.recovery.vfat +setenv INSTALL_ROOTFS_FILENAME dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.ext4 + +# Check for presence of firmware files on the USB +for install_f in ${INSTALL_UBOOT_FILENAME} ${INSTALL_LINUX_FILENAME} ${INSTALL_RECOVERY_FILENAME} ${INSTALL_ROOTFS_FILENAME}; do + if test ! -e usb ${INSTALL_USBDEV} ${install_f}; then + echo "ERROR: Could not find file ${install_f}"; + install_abort=1; + fi; +done +if test -n "${install_abort}"; then + echo "Aborted."; + exit; +fi + +# Skip user confirmation for U-Boot update +setenv forced_update 1 + +# Set bootdelay to zero so that firmware update is run immediately after +# the first reset. +setenv bootdelay 0 + +# Set target MMC device index to eMMC +setenv mmcdev 0 + +# Update U-Boot +echo "" +echo "" +echo ">> Installing U-Boot boot loader (target will reset)" +echo "" +echo "" +update uboot usb ${INSTALL_USBDEV} ${INSTALL_UBOOT_FILENAME} +if test $? -eq 1; then + # Use old-style update with source file system argument + update uboot mmc ${INSTALL_USBDEV} fat ${INSTALL_UBOOT_FILENAME} + if test $? -eq 1; then + echo "[ERROR] Failed to update U-Boot boot loader!"; + echo ""; + echo "Aborted."; + exit; + fi +fi + +# Set 'bootcmd' to the second part of the script that will +# - Reset environment to defaults +# - Save the environment +# - Force on-the-fly updates to avoid possible verification errors +# - Partition the eMMC user data area for Linux +# - Update the 'linux' partition +# - Update the 'recovery' partition +# - Update the 'rootfs' partition +# - Configure recovery to wipe 'update' partition +# - Disable on-the-fly updates +# - Run 'recovery' and let the system boot after +setenv bootcmd " + env default -a; + saveenv; + setenv otf-update yes; + echo \"\"; + echo \"\"; + echo \">> Creating Linux partition table on the eMMC\"; + echo \"\"; + echo \"\"; + run partition_mmc_linux; + if test \$? -eq 1; then + echo \"[ERROR] Failed to create Linux partition table!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + usb start; + echo \"\"; + echo \"\"; + echo \">> Installing Linux kernel and device tree files\"; + echo \"\"; + echo \"\"; + update linux usb ${INSTALL_USBDEV} ${INSTALL_LINUX_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update linux partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Installing recovery\"; + echo \"\"; + echo \"\"; + update recovery usb ${INSTALL_USBDEV} ${INSTALL_RECOVERY_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update recovery partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Installing Linux root file system\"; + echo \"\"; + echo \"\"; + update rootfs usb ${INSTALL_USBDEV} ${INSTALL_ROOTFS_FILENAME}; + if test \$? -eq 1; then + echo \"[ERROR] Failed to update rootfs partition!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + setenv boot_recovery yes; + setenv recovery_command wipe_update; + setenv otf-update; + saveenv; + echo \"\"; + echo \"\"; + echo \">> Firmware installation complete. Rebooting into recovery mode for final deployment.\"; + echo \"\"; + echo \"\"; + sleep 1; + reset; +" + +saveenv +reset diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_uuu.sh b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_uuu.sh new file mode 100755 index 000000000..73f676a80 --- /dev/null +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/install_linux_fw_uuu.sh @@ -0,0 +1,119 @@ +#!/bin/bash +#=============================================================================== +# +# Copyright (C) 2021 by Digi International Inc. +# All rights reserved. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License version 2 as published by +# the Free Software Foundation. +# +# +# Description: +# Script to flash Yocto build artifacts over USB to the target. +#=============================================================================== +# set -x + +clear + +# Parse uuu cmd output +function getenv() +{ + uuu -v fb: ucmd printenv "${1}" | sed -ne "s,^${1}=,,g;T;p" +} + +# +# U-Boot script for installing Linux images created by Yocto into the eMMC +# + +echo "############################################################" +echo "# Linux firmware install through USB OTG #" +echo "############################################################" +echo "" +echo " This process will erase your eMMC and will install a new" +echo " U-Boot and Linux firmware images on the eMMC." +echo "" +echo " Press CTRL+C now if you wish to abort or wait 10 seconds" +echo " to continue." + +# Get U-Boot file name from cmdline when passed +if [ -n "$1" ]; then + INSTALL_UBOOT_FILENAME="$1" +fi + +sleep 10 + +if [ -z "${INSTALL_UBOOT_FILENAME}" ]; then + INSTALL_UBOOT_FILENAME="imx-boot-ccimx8mm-dvk.bin" +fi + +# Skip user confirmation for U-Boot update +uuu fb: ucmd setenv forced_update 1 + +# Update U-Boot +uuu fb: flash bootloader ${INSTALL_UBOOT_FILENAME} + +# Set MMC to boot from BOOT1 partition +uuu fb: ucmd mmc partconf 0 1 1 1 + +# Set 'bootcmd' for the second part of the script that will +# - Reset environment to defaults +# - Save the environment +# - Partition the eMMC user data area for Linux +# - Update the 'linux' partition +# - Update the 'recovery' partition +# - Update the 'rootfs' partition +uuu fb: ucmd setenv bootcmd " + env default -a; + saveenv; + echo \"\"; + echo \"\"; + echo \">> Creating Linux partition table on the eMMC\"; + echo \"\"; + echo \"\"; + run partition_mmc_linux; + if test \$? -eq 1; then + echo \"[ERROR] Failed to create Linux partition table!\"; + echo \"\"; + echo \"Aborted.\"; + exit; + fi; + echo \"\"; + echo \"\"; + echo \">> Start installation Linux firmware files\"; + echo \"\"; + echo \"\"; + saveenv; + fastboot 0; +" + +uuu fb: ucmd saveenv + +uuu fb: acmd reset + +INSTALL_LINUX_FILENAME="dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.boot.vfat" +INSTALL_RECOVERY_FILENAME="dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.recovery.vfat" +INSTALL_ROOTFS_FILENAME="dey-image-qt-##GRAPHICAL_BACKEND##-ccimx8mm-dvk.ext4" + +# Wait that target returns from reset +sleep 3 + +# Update Linux +uuu fb: flash -raw2sparse linux ${INSTALL_LINUX_FILENAME} + +# Update Recovery +uuu fb: flash -raw2sparse recovery ${INSTALL_RECOVERY_FILENAME} + +# Update Rootfs +uuu fb: flash -raw2sparse rootfs ${INSTALL_ROOTFS_FILENAME} + +# Configure u-boot to boot into recovery mode +uuu fb: ucmd setenv boot_recovery yes +uuu fb: ucmd setenv recovery_command wipe_update + +uuu fb: ucmd saveenv + +# Reset the target +uuu fb: acmd reset + +exit diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt index 78414f805..79b2feb04 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt @@ -25,11 +25,11 @@ if test -n "${module_ram}"; then setexpr module_has_bt ${module_has_bt} / 20000 if test "${module_has_bt}" = "1" && test -z "${disable_bt}"; then - setenv overlays _ov_som_bt_ccimx8mn.dtbo,${overlays} + setenv overlays _ov_som_bt_ccimx8m.dtbo,${overlays} fi if test "${module_has_wifi}" = "1" && test -z "${disable_wifi}"; then - setenv overlays _ov_som_wifi_ccimx8mn.dtbo,${overlays} + setenv overlays _ov_som_wifi_ccimx8m.dtbo,${overlays} fi if test "${som_hv}" = "1"; then @@ -39,7 +39,7 @@ fi # Apply quad overlay if the SOC type is "imx8mn" if test "${soc_type}" = "imx8mn"; then - setenv overlays _ov_som_quad_ccimx8mn.dtbo,${overlays} + setenv overlays _ov_som_quad_ccimx8m.dtbo,${overlays} fi # Apply DVK v1-v2 overlay if the board version is < 3 From ed7bc7eff5110d1cecb778599ab51b9962291034 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 16:11:54 +0100 Subject: [PATCH 05/54] modemmanager: add support to ConnectCore 8M Mini DVK platform https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../ccimx8mm/80-mm-net-device-blacklist.rules | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8mm/80-mm-net-device-blacklist.rules diff --git a/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8mm/80-mm-net-device-blacklist.rules b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8mm/80-mm-net-device-blacklist.rules new file mode 100644 index 000000000..b5f43b430 --- /dev/null +++ b/meta-digi-dey/recipes-connectivity/modemmanager/modemmanager/ccimx8mm/80-mm-net-device-blacklist.rules @@ -0,0 +1,18 @@ +ACTION!="add|change|move|bind", GOTO="mm_net_device_blacklist_end" + +# ModemManager documentation states that the best practice is to use the DEVPATH +# this way rather than other rules such as KERNEL, so be careful when modifying + +# Remove Ethernet interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/30be0000.ethernet*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove SPI-to-CAN interface from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/30840000.ecspi*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove MMC interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/30b40000.mmc*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +# Remove PCIe interfaces from ModemManager probing +SUBSYSTEM=="net", DEVPATH=="/devices/platform/33800000.pcie*", ENV{ID_MM_CANDIDATE}="0", ENV{ID_MM_DEVICE_IGNORE}="1" + +LABEL="mm_net_device_blacklist_end" From b49c6f9f8bad41a9172fb6b55bbc33d47750e17e Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 16:14:35 +0100 Subject: [PATCH 06/54] cryptoauthlib: add support for ccimx8mm platform https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- meta-digi-arm/recipes-digi/cryptoauthlib/cryptoauthlib_git.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta-digi-arm/recipes-digi/cryptoauthlib/cryptoauthlib_git.bb b/meta-digi-arm/recipes-digi/cryptoauthlib/cryptoauthlib_git.bb index 43a41a7e0..4efee3545 100644 --- a/meta-digi-arm/recipes-digi/cryptoauthlib/cryptoauthlib_git.bb +++ b/meta-digi-arm/recipes-digi/cryptoauthlib/cryptoauthlib_git.bb @@ -1,4 +1,4 @@ -# Copyright (C) 2017-2020 Digi International Inc. +# Copyright (C) 2017-2021 Digi International Inc. SUMMARY = "Microchip CryptoAuthentication Library" SECTION = "libs" @@ -25,7 +25,7 @@ I2C_BUS = "" I2C_BUS_ccimx6qpsbc = "1" I2C_BUS_ccimx6ul = "0" I2C_BUS_ccimx8x = "0" -I2C_BUS_ccimx8mn = "0" +I2C_BUS_ccimx8m = "0" I2C_SPEED ?= "100000" From 1ad9a164324a274a7d147b32581534c0e9dc08d0 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 16:19:57 +0100 Subject: [PATCH 07/54] libdigiapix: add support to ConnectCore 8M Mini DVK platform https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../ccimx8mm-dvk/libdigiapix.conf | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx8mm-dvk/libdigiapix.conf diff --git a/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx8mm-dvk/libdigiapix.conf b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx8mm-dvk/libdigiapix.conf new file mode 100644 index 000000000..2b1044637 --- /dev/null +++ b/meta-digi-dey/recipes-digi/libdigiapix/libdigiapix-git/ccimx8mm-dvk/libdigiapix.conf @@ -0,0 +1,36 @@ +[board] +model = Digi International ConnectCore 8M Mini DVK. + +[GPIO] + +# USER LED1 +USER_LED = mca-gpio,12 +USER_LED1 = mca-gpio,12 + +# USER_LED2 +USER_LED2 = mca-gpio,18 + +# USER_LED3 +USER_LED3 = gpio2,19 + +# USER BUTTON1 +USER_BUTTON = mca-gpio,10 +USER_BUTTON1 = mca-gpio,10 + +# USER BUTTON2 +USER_BUTTON2 = gpio2,20 + +[I2C] + +# I2C-4 on Expansion connector. +DEFAULT_I2C_BUS = 4 + +[PWM] + +# PWM0 channel 1 USER_LED1. +DEFAULT_PWM = 0,1 + +[ADC] + +# MCA_IO1 (channel 1) at XBEE1_UART_TX. Not enabled by default. +DEFAULT_ADC = 0,1 From 33cc4729aeea17db0fad4a7405726558330a9699 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 16:33:59 +0100 Subject: [PATCH 08/54] busybox: add support to ConnectCore 8M Mini DVK platform Use the same common files for both ConnectCore 8M platforms https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../recipes-core/busybox/busybox/{ccimx8mn => ccimx8m}/acpid.map | 0 .../recipes-core/busybox/busybox/{ccimx8mn => ccimx8m}/standby | 0 .../busybox/busybox/{ccimx8mn => ccimx8m}/standby-actions | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename meta-digi-dey/recipes-core/busybox/busybox/{ccimx8mn => ccimx8m}/acpid.map (100%) rename meta-digi-dey/recipes-core/busybox/busybox/{ccimx8mn => ccimx8m}/standby (100%) rename meta-digi-dey/recipes-core/busybox/busybox/{ccimx8mn => ccimx8m}/standby-actions (100%) diff --git a/meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/acpid.map b/meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/acpid.map similarity index 100% rename from meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/acpid.map rename to meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/acpid.map diff --git a/meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/standby b/meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/standby similarity index 100% rename from meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/standby rename to meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/standby diff --git a/meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/standby-actions b/meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/standby-actions similarity index 100% rename from meta-digi-dey/recipes-core/busybox/busybox/ccimx8mn/standby-actions rename to meta-digi-dey/recipes-core/busybox/busybox/ccimx8m/standby-actions From 33f56769c348ec0b8695f61a2a186459220d0824 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 16:50:45 +0100 Subject: [PATCH 09/54] bluez5: add support to ConnectCore 8M Mini DVK platform Use the same common files for both ConnectCore 8M platforms https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../bluez/bluez5-5.50/{ccimx8mn => ccimx8m}/bluetooth-init | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename meta-digi-dey/recipes-connectivity/bluez/bluez5-5.50/{ccimx8mn => ccimx8m}/bluetooth-init (100%) diff --git a/meta-digi-dey/recipes-connectivity/bluez/bluez5-5.50/ccimx8mn/bluetooth-init b/meta-digi-dey/recipes-connectivity/bluez/bluez5-5.50/ccimx8m/bluetooth-init similarity index 100% rename from meta-digi-dey/recipes-connectivity/bluez/bluez5-5.50/ccimx8mn/bluetooth-init rename to meta-digi-dey/recipes-connectivity/bluez/bluez5-5.50/ccimx8m/bluetooth-init From bb43ab1744351f4d8af7b6753b8e3afe0f4889fe Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Wed, 27 Jan 2021 17:05:25 +0100 Subject: [PATCH 10/54] alsa-state: add support to ConnectCore 8M Mini DVK platform Use the same common files for both ConnectCore 8M platforms https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../alsa-state/alsa-state/{ccimx8mn => ccimx8m}/asound.conf | 0 .../alsa-state/alsa-state/{ccimx8mn => ccimx8m}/asound.state | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename meta-digi-arm/recipes-bsp/alsa-state/alsa-state/{ccimx8mn => ccimx8m}/asound.conf (100%) rename meta-digi-arm/recipes-bsp/alsa-state/alsa-state/{ccimx8mn => ccimx8m}/asound.state (100%) diff --git a/meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8mn/asound.conf b/meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8m/asound.conf similarity index 100% rename from meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8mn/asound.conf rename to meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8m/asound.conf diff --git a/meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8mn/asound.state b/meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8m/asound.state similarity index 100% rename from meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8mn/asound.state rename to meta-digi-arm/recipes-bsp/alsa-state/alsa-state/ccimx8m/asound.state From d05cec7b2bf1e2f58450738157fa75f8baefcc87 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 08:52:10 +0100 Subject: [PATCH 11/54] firmware-qualcomm: add support to ConnectCore 8M Mini DVK platform Use the same common files for both ConnectCore 8M platforms https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../{ccimx8mn => ccimx8m}/bdwlan30_US.bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/{ccimx8mn => ccimx8m}/bdwlan30_US.bin (100%) diff --git a/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/ccimx8mn/bdwlan30_US.bin b/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/ccimx8m/bdwlan30_US.bin similarity index 100% rename from meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/ccimx8mn/bdwlan30_US.bin rename to meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/ccimx8m/bdwlan30_US.bin From 5781efc5593ec7ca1c3504a405b319d21eea5c1e Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 17:11:58 +0100 Subject: [PATCH 12/54] firmware-imx: add support to ConnectCore 8M Mini DVK platform Use the same common files for both ConnectCore 8M platforms https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../files/{ccimx8mn-dvk => ccimx8m}/sdma-firmware.service | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename meta-digi-arm/recipes-bsp/firmware-imx/files/{ccimx8mn-dvk => ccimx8m}/sdma-firmware.service (100%) diff --git a/meta-digi-arm/recipes-bsp/firmware-imx/files/ccimx8mn-dvk/sdma-firmware.service b/meta-digi-arm/recipes-bsp/firmware-imx/files/ccimx8m/sdma-firmware.service similarity index 100% rename from meta-digi-arm/recipes-bsp/firmware-imx/files/ccimx8mn-dvk/sdma-firmware.service rename to meta-digi-arm/recipes-bsp/firmware-imx/files/ccimx8m/sdma-firmware.service From be7de5559caec2c6e1f737aeb926185036b5f0f4 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 10:51:42 +0100 Subject: [PATCH 13/54] imx-boot: add support to ConnectCore 8M Mini DVK platform Both ConnectCore 8M platforms share the same U-Boot build process, so apply the same changes for them. https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend | 8 ++++---- meta-digi-arm/recipes-bsp/u-boot/digi-u-boot.inc | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend index 575485ec2..9bdb730c3 100644 --- a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend +++ b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend @@ -32,7 +32,7 @@ do_populate_lic[depends] += " \ IMXBOOT_TARGETS_ccimx8x = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_flexspi', \ 'flash flash_regression_linux_m4', d)}" -IMXBOOT_TARGETS_ccimx8mn = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_evk_flexspi', 'flash_spl_uboot', d)}" +IMXBOOT_TARGETS_ccimx8m = "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_evk_flexspi', 'flash_spl_uboot', d)}" compile_mx8x() { bbnote 8QX boot binary build @@ -133,8 +133,8 @@ do_compile () { fi } -# ConnectCore 8M Nano does not have different binaries -UBOOT_RAM_COMBINATIONS_ccimx8mn = "" +# ConnectCore 8M Nano and 8M Mini do not have different binaries +UBOOT_RAM_COMBINATIONS_ccimx8m = "" do_install () { install -d ${D}/boot @@ -250,4 +250,4 @@ do_deploy_append () { fi } -COMPATIBLE_MACHINE = "(ccimx8x|ccimx8mn)" +COMPATIBLE_MACHINE = "(ccimx8x|ccimx8m)" diff --git a/meta-digi-arm/recipes-bsp/u-boot/digi-u-boot.inc b/meta-digi-arm/recipes-bsp/u-boot/digi-u-boot.inc index 5f459663d..0a880edb3 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/digi-u-boot.inc +++ b/meta-digi-arm/recipes-bsp/u-boot/digi-u-boot.inc @@ -192,8 +192,8 @@ do_deploy_append_ccimx8x() { mv ${DEPLOYDIR}/${UBOOT_SYMLINK}-* ${DEPLOYDIR}/${BOOT_TOOLS}/ } -do_deploy_append_ccimx8mn() { - # Deploy u-boot-nodtb.bin and ccimx8mn-dvk.dtb, to be packaged in boot binary by imx-boot +do_deploy_append_ccimx8m() { + # Deploy u-boot-nodtb.bin and ccimx8m[m|n]-dvk.dtb, to be packaged in boot binary by imx-boot if [ -n "${UBOOT_CONFIG}" ] then for config in ${UBOOT_MACHINE}; do From a306da408a0bf16635b8873cf113f55260b372bc Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 17:15:04 +0100 Subject: [PATCH 14/54] imx-atf: Disable Cortex-M4 debug console The Cortex-M4 uses the UART4 as debug console, and it is shared with the Cortex-A53. This commit disables it for the ConnectCore 8M Mini DVK board to avoid conflicts. Signed-off-by: Arturo Buzarra --- ...0001-imx8mm-Disable-M4-debug-console.patch | 54 +++++++++++++++++++ .../recipes-bsp/imx-atf/imx-atf_2.2.bb | 3 +- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 meta-digi-arm/recipes-bsp/imx-atf/imx-atf/0001-imx8mm-Disable-M4-debug-console.patch diff --git a/meta-digi-arm/recipes-bsp/imx-atf/imx-atf/0001-imx8mm-Disable-M4-debug-console.patch b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf/0001-imx8mm-Disable-M4-debug-console.patch new file mode 100644 index 000000000..3bd59ff96 --- /dev/null +++ b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf/0001-imx8mm-Disable-M4-debug-console.patch @@ -0,0 +1,54 @@ +From 32f0fe2d607f165fbf4ab6b5c21b147b68ab46e2 Mon Sep 17 00:00:00 2001 +From: Gabriel Valcazar +Date: Fri, 29 Jan 2021 11:21:07 +0100 +Subject: [PATCH] imx8mm: Disable M4 debug console + +The Cortex-M4 uses the UART4 as debug console, and it is +shared with the Cortex-A53. + +Signed-off-by: Gabriel Valcazar +--- + plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c b/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c +index 049192880..f7aada323 100644 +--- a/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c ++++ b/plat/imx/imx8m/imx8mm/imx8mm_bl31_setup.c +@@ -58,7 +58,7 @@ static const struct imx_rdc_cfg rdc[] = { + RDC_MDAn(RDC_MDA_M4, DID1), + + /* peripherals domain permission */ +- RDC_PDAPn(RDC_PDAP_UART4, D1R | D1W), ++ /*RDC_PDAPn(RDC_PDAP_UART4, D1R | D1W),*/ + RDC_PDAPn(RDC_PDAP_UART2, D0R | D0W), + + /* memory region */ +@@ -129,7 +129,7 @@ static void bl31_tzc380_setup(void) + void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1, + u_register_t arg2, u_register_t arg3) + { +- static console_uart_t console; ++ /*static console_uart_t console;*/ + int i; + + /* Enable CSU NS access permission */ +@@ -144,11 +144,11 @@ void bl31_early_platform_setup2(u_register_t arg0, u_register_t arg1, + imx_csu_init(csu_cfg); + + imx8m_caam_init(); +- +- console_imx_uart_register(IMX_BOOT_UART_BASE, IMX_BOOT_UART_CLK_IN_HZ, ++ /* Uncomment to use the M4 debug console (shared with A53 UART4) */ ++ /*console_imx_uart_register(IMX_BOOT_UART_BASE, IMX_BOOT_UART_CLK_IN_HZ, + IMX_CONSOLE_BAUDRATE, &console); +- /* This console is only used for boot stage */ +- console_set_scope(&console.console, CONSOLE_FLAG_BOOT); ++ This console is only used for boot stage ++ console_set_scope(&console.console, CONSOLE_FLAG_BOOT);*/ + + /* + * tell BL3-1 where the non-secure software image is located +-- +2.17.1 + diff --git a/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb index 52ae48dcf..9dc04c804 100644 --- a/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb +++ b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb @@ -1,4 +1,4 @@ -# Copyright (C) 2017-2020 NXP +# Copyright (C) 2017-2021 NXP DESCRIPTION = "i.MX ARM Trusted Firmware" SECTION = "BSP" @@ -14,6 +14,7 @@ SRC_URI = "${ATF_SRC};branch=${SRCBRANCH} \ SRCREV = "c949a888e909811db191500c51456391dff61284" SRC_URI_append_ccimx8mn = " file://0001-imx8mn-Disable-M7-debug-console.patch" +SRC_URI_append_ccimx8mm = " file://0001-imx8mm-Disable-M4-debug-console.patch" S = "${WORKDIR}/git" From a82af28530a8d47f9a38b0302f62b10b7378cf92 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 10:01:24 +0100 Subject: [PATCH 15/54] imx-gpu-viv: Simplify GLES3_HEADER_REMOVALS Most 8M families have the same GLES3 support, with 8M Mini being the exception. See NXP commit cbb1793f1 ("imx-gpu-viv: Simplify GLES3_HEADER_REMOVALS"). https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 6e10faa54..2bd71f470 100644 --- a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc @@ -145,9 +145,8 @@ HAS_GBM = "false" HAS_GBM_mx8 = "true" GLES3_HEADER_REMOVALS = "gl31.h gl32.h" -GLES3_HEADER_REMOVALS_mx8mq = "gl32.h" -GLES3_HEADER_REMOVALS_mx8mn = "gl32.h" -GLES3_HEADER_REMOVALS_mx8mp = "gl32.h" +GLES3_HEADER_REMOVALS_mx8m = "gl32.h" +GLES3_HEADER_REMOVALS_mx8mm = "gl31.h gl32.h" GLES3_HEADER_REMOVALS_mx8qxp = "" GLES3_HEADER_REMOVALS_mx8qm = "" From 702382c7e4b4c84bb5a5e4df2f0e96ccd301929d Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 11:11:00 +0100 Subject: [PATCH 16/54] imx-digi-base: Simplify preferred providers for graphics Sync with meta-freescale layer. See commmit f718ae3f ("imx-base.inc: Simplify preferred providers for graphics") https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../conf/machine/include/imx-digi-base.inc | 34 ++++++------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/meta-digi-arm/conf/machine/include/imx-digi-base.inc b/meta-digi-arm/conf/machine/include/imx-digi-base.inc index 2a1c018e1..c736c1623 100644 --- a/meta-digi-arm/conf/machine/include/imx-digi-base.inc +++ b/meta-digi-arm/conf/machine/include/imx-digi-base.inc @@ -109,30 +109,18 @@ SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_mx8 = "1" # 1 - machine has Vivante GPU driver support MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT ?= "${SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT}" -# mx6 GPU libraries -PREFERRED_PROVIDER_virtual/egl_mx6q ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/egl_mx6dl ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/egl_mx6ul ?= "mesa" -PREFERRED_PROVIDER_virtual/egl_mx8 ?= "imx-gpu-viv" +# Graphics libraries +PREFERRED_PROVIDER_virtual/egl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgl ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles1 ?= "mesa" +PREFERRED_PROVIDER_virtual/libgles2 ?= "mesa" -PREFERRED_PROVIDER_virtual/libgles1_mx6q ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgles1_mx6dl ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgles1_mx6ul ?= "mesa" -PREFERRED_PROVIDER_virtual/libgles1_mx8 ?= "imx-gpu-viv" - -PREFERRED_PROVIDER_virtual/libgles2_mx6q ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgles2_mx6dl ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgles2_mx6ul ?= "mesa" -PREFERRED_PROVIDER_virtual/libgles2_mx8 ?= "imx-gpu-viv" - -PREFERRED_PROVIDER_virtual/libgl_mx6q ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgl_mx6dl ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libgl_mx6ul ?= "mesa" -PREFERRED_PROVIDER_virtual/libgl_mx8 ?= "imx-gpu-viv" - -PREFERRED_PROVIDER_virtual/libg2d_mx6 ?= "imx-gpu-viv" -PREFERRED_PROVIDER_virtual/libg2d_mx6ul = "" -PREFERRED_PROVIDER_virtual/libg2d_mx8 = "imx-dpu-g2d" +PREFERRED_PROVIDER_virtual/egl_imxgpu ?= "imx-gpu-viv" +PREFERRED_PROVIDER_virtual/libgl_imxgpu3d ?= "imx-gpu-viv" +PREFERRED_PROVIDER_virtual/libgles1_imxgpu3d ?= "imx-gpu-viv" +PREFERRED_PROVIDER_virtual/libgles2_imxgpu3d ?= "imx-gpu-viv" +PREFERRED_PROVIDER_virtual/libg2d ?= "imx-gpu-g2d" +PREFERRED_PROVIDER_virtual/libg2d_imxdpu ?= "imx-dpu-g2d" EXTRA_IMAGEDEPENDS = "u-boot" From 52db82f2c75c485dca9329300d2971f726e42b97 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 12:41:19 +0100 Subject: [PATCH 17/54] imx-digi-base: sync with meta-imx branch zeus-5.4.70-2.3.0 Update the MACHINE values with the ones in meta-freescale and meta-imx layer. https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../conf/machine/include/imx-digi-base.inc | 33 +++++++++---------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/meta-digi-arm/conf/machine/include/imx-digi-base.inc b/meta-digi-arm/conf/machine/include/imx-digi-base.inc index c736c1623..328aa3eef 100644 --- a/meta-digi-arm/conf/machine/include/imx-digi-base.inc +++ b/meta-digi-arm/conf/machine/include/imx-digi-base.inc @@ -24,8 +24,8 @@ DEFAULTTUNE_mx8 ?= "aarch64" INHERIT += "machine-overrides-extender" -MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxvpucnm:imxgpu:imxgpu2d:imxdpublit:imxgpu3d" -MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxipu:imxpxp:imxvpu:imxvpucnm:imxgpu:imxgpu2d:imxdpublit:imxgpu3d:imxepdc" +MACHINEOVERRIDES_EXTENDER_mx6q = "imxfbdev:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d" +MACHINEOVERRIDES_EXTENDER_mx6dl = "imxfbdev:imxpxp:imxipu:imxvpu:imxgpu:imxgpu2d:imxgpu3d:imxepdc" MACHINEOVERRIDES_EXTENDER_mx6ul = "imxfbdev:imxpxp" MACHINEOVERRIDES_EXTENDER_mx8qxp = "imxdrm:imxdpu:imxgpu:imxgpu2d:imxgpu3d" MACHINEOVERRIDES_EXTENDER_mx8mn = "imxdrm:imxgpu:imxgpu3d" @@ -45,21 +45,23 @@ MACHINE_SOCARCH_SUFFIX_mx8mm = "-mx8mm" MACHINE_ARCH_FILTER = "virtual/kernel" MACHINE_SOCARCH_FILTER_append_imxvpu = " \ imx-codec \ - imx-vpu \ imx-vpuwrap \ libimxvpuapi \ + virtual/imxvpu \ " MACHINE_SOCARCH_FILTER_append_imxgpu = " \ virtual/egl \ virtual/mesa \ - virtual/libg2d \ - libgal-imx \ virtual/libopenvg \ + libdrm \ cairo \ opencv \ + libgal-imx \ pango \ " - +MACHINE_SOCARCH_FILTER_append_imxgpu2d = " \ + virtual/libg2d \ +" MACHINE_SOCARCH_FILTER_append_imxgpu3d = " \ virtual/libgl \ virtual/libgles1 \ @@ -70,21 +72,20 @@ MACHINE_SOCARCH_FILTER_append_mx6q = " \ opencl-headers \ " MACHINE_SOCARCH_FILTER_append_mx8 = " \ - virtual/libopenvx \ virtual/opencl-icd \ opencl-headers \ " -MACHINE_SOCARCH_FILTER_append_imxpxp = " \ - imx-codec \ +MACHINE_SOCARCH_FILTER_append_mx8qm = " \ + virtual/libopenvx \ " INHERIT += "fsl-dynamic-packagearch" SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS_append = " \ - libimxvpuapi->imx-vpu \ - imx-vpuwrap->imx-vpu \ - imx-codec->imx-vpu \ - imx-test->imx-vpu \ + libimxvpuapi->virtual/imxvpu \ + imx-vpuwrap->virtual/imxvpu \ + imx-codec->virtual/imxvpu \ + imx-test->virtual/imxvpu \ " # Extra udev rules @@ -99,10 +100,8 @@ MACHINE_GSTREAMER_1_0_PLUGIN_mx6ul ?= "imx-gst1.0-plugin imx-gst1.0-plugin-gplay MACHINE_GSTREAMER_1_0_PLUGIN_mx8 ?= "imx-gst1.0-plugin imx-gst1.0-plugin-gplay imx-gst1.0-plugin-grecorder" # Determines if the SoC has support for Vivante kernel driver -SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0" -SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_mx6q = "1" -SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_mx6dl = "1" -SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_mx8 = "1" +SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT = "0" +SOC_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT_imxgpu = "1" # Handle Vivante kernel driver setting: # 0 - machine does not have Vivante GPU driver support From 98a4733cd0bc8c6cc156ebec6fa0b46ac19e3e1c Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 12:46:07 +0100 Subject: [PATCH 18/54] meta-digi-arm/conf/layer.conf: EULA.txt Update to license v16 and v17 Required for the release rel_imx_5.4.70_2.3.0 based on zeus https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- meta-digi-arm/conf/layer.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/meta-digi-arm/conf/layer.conf b/meta-digi-arm/conf/layer.conf index 0c2530e12..3f0e0840d 100644 --- a/meta-digi-arm/conf/layer.conf +++ b/meta-digi-arm/conf/layer.conf @@ -17,9 +17,13 @@ LAYERSERIES_COMPAT_digi-arm = "zeus" # See fsl-eula-unpack.bbclass. FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V13 = "1b4db4b25c3a1e422c0c0ed64feb65d2" FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V15 = "983e4c77621568488dd902b27e0c2143" +FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V16 = "e9e880185bda059c90c541d40ceca922" +FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V17 = "cf3f9b8d09bc3926b1004ea71f7a248a" FSL_EULA_FILE_MD5SUMS_append = " \ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V13} \ ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V15} \ + ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V16} \ + ${FSL_EULA_FILE_MD5SUM_LA_OPT_NXP_SOFTWARE_LICENSE_V17} \ " # Digi's General and Open Source license agreements From c939115a2ff03c3ab00914a438cf20cde3018306 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Mon, 1 Feb 2021 13:09:25 +0100 Subject: [PATCH 19/54] recipes-bsp: add recipe imx-vpu-hantro to support ConnectCore 8M Mini ConnectCore 8M Mini has support to VPU but the library used is different than the used by the i.MX6 processors. This recipe manages the required libraries to operate with this kind of VPU. https://jira.digi.com/browse/DEL-7397 Signed-off-by: Arturo Buzarra --- .../imx-vpu-hantro/imx-vpu-hantro.inc | 31 +++++++++++++++++++ .../imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb | 7 +++++ 2 files changed, 38 insertions(+) create mode 100644 meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro.inc create mode 100644 meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb diff --git a/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro.inc b/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro.inc new file mode 100644 index 000000000..d46dd3f7a --- /dev/null +++ b/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro.inc @@ -0,0 +1,31 @@ +# Copyright 2017-2018 NXP + +DESCRIPTION = "i.MX HANTRO VPU library" +LICENSE = "Proprietary" + +inherit fsl-eula-unpack use-imx-headers + +PARALLEL_MAKE="-j 1" + +PROVIDES = "virtual/imxvpu" +RPROVIDES_${PN} = "virtual/imxvpu" + +SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true" + +PLATFORM_mx8mm = "IMX8MM" +PLATFORM_mx8mq = "IMX8MQ" +PLATFORM_mx8mp = "IMX8MP" + +do_compile () { + oe_runmake CROSS_COMPILE="${HOST_PREFIX}" SDKTARGETSYSROOT="${STAGING_DIR_TARGET}" PLATFORM="${PLATFORM}" all +} + +do_install () { + oe_runmake DEST_DIR="${D}" PLATFORM="${PLATFORM}" install +} + +FILES_${PN} += "/unit_tests" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +COMPATIBLE_MACHINE = "(mx8mq|mx8mm|mx8mp)" diff --git a/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb b/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb new file mode 100644 index 000000000..9bfe9d0af --- /dev/null +++ b/meta-digi-arm/recipes-bsp/imx-vpu-hantro/imx-vpu-hantro_1.20.0.bb @@ -0,0 +1,7 @@ +# Copyright 2017-2020 NXP + +require imx-vpu-hantro.inc +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "682b3a73bf5aa22a37d56a433d11fc91" +SRC_URI[sha256sum] = "e6cdd5b4c628604906466fc9620e2b048cf1b2c863f9ee49616dd5212b9261b0" From 2d0c2c09764386cdbbfc8e703a792c7e80a8ccf9 Mon Sep 17 00:00:00 2001 From: Hector Bujanda Date: Mon, 1 Feb 2021 23:51:41 +0100 Subject: [PATCH 20/54] mca-tool: update to v1.23 Includes: - add support for ccimx8mm. https://jira.digi.com/browse/DEL-7398 Signed-off-by: Hector Bujanda --- .../mca/{mca-tool_1.22.bb => mca-tool_1.23.bb} | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) rename meta-digi-arm/recipes-digi/mca/{mca-tool_1.22.bb => mca-tool_1.23.bb} (56%) diff --git a/meta-digi-arm/recipes-digi/mca/mca-tool_1.22.bb b/meta-digi-arm/recipes-digi/mca/mca-tool_1.23.bb similarity index 56% rename from meta-digi-arm/recipes-digi/mca/mca-tool_1.22.bb rename to meta-digi-arm/recipes-digi/mca/mca-tool_1.23.bb index 807c20d13..97dae5aed 100644 --- a/meta-digi-arm/recipes-digi/mca/mca-tool_1.22.bb +++ b/meta-digi-arm/recipes-digi/mca/mca-tool_1.23.bb @@ -1,4 +1,4 @@ -# Copyright (C) 2016-2020 Digi International. +# Copyright (C) 2016-2021 Digi International. SUMMARY = "MCA firmware management tool" SECTION = "console/tools" @@ -8,13 +8,13 @@ PKGNAME = "mca_tool" # ARM tarball SRC_URI_arm = "${DIGI_PKG_SRC}/${PKGNAME}-${PV}-${TUNE_ARCH}.tar.gz;name=arm" -SRC_URI[arm.md5sum] = "2b2ce463139be67bd9929c7ce145ae42" -SRC_URI[arm.sha256sum] = "2a241dbaad099cf2d526eff6bbfdbd7c548e4391cc6751bb9eaa22d16c3cd5e4" +SRC_URI[arm.md5sum] = "eeb242ee2baeda8a9a1a48dea634b6ea" +SRC_URI[arm.sha256sum] = "40794e0c3baad39b04f2d1640c29620a08036fb36b18583d4f7828fe860bcd89" # AARCH64 tarball SRC_URI_aarch64 = "${DIGI_PKG_SRC}/${PKGNAME}-${PV}-${TUNE_ARCH}.tar.gz;name=aarch64" -SRC_URI[aarch64.md5sum] = "c5f235c29fd663fde135095016daed4f" -SRC_URI[aarch64.sha256sum] = "9a0fd1bb053d9be0ede344ba22b0811528547130ef6c78432548a27dcd8f460c" +SRC_URI[aarch64.md5sum] = "bd90f295095fead2e58bfa2f6b995c8f" +SRC_URI[aarch64.sha256sum] = "64dd676dff0ffee143d22268e0512b40fe428ecf8b5e31496f738fb9b1a8a01f" S = "${WORKDIR}/${PKGNAME}-${PV}" From 5b15c23ab9d7cdbcfd58faf1c703108c8e856f65 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Thu, 28 Jan 2021 11:56:07 +0100 Subject: [PATCH 21/54] recipes-bsp: firmware-imx: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../{firmware-imx-8.9.inc => firmware-imx-8.10.inc} | 6 +++--- .../{firmware-imx-8_8.9.bb => firmware-imx-8_8.10.bb} | 0 ...{firmware-imx-8m_8.9.bb => firmware-imx-8m_8.10.bb} | 0 .../{firmware-imx_8.9.bb => firmware-imx_8.10.bb} | 10 +++++----- 4 files changed, 8 insertions(+), 8 deletions(-) rename meta-digi-arm/recipes-bsp/firmware-imx/{firmware-imx-8.9.inc => firmware-imx-8.10.inc} (58%) rename meta-digi-arm/recipes-bsp/firmware-imx/{firmware-imx-8_8.9.bb => firmware-imx-8_8.10.bb} (100%) rename meta-digi-arm/recipes-bsp/firmware-imx/{firmware-imx-8m_8.9.bb => firmware-imx-8m_8.10.bb} (100%) rename meta-digi-arm/recipes-bsp/firmware-imx/{firmware-imx_8.9.bb => firmware-imx_8.10.bb} (90%) diff --git a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.9.inc b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.10.inc similarity index 58% rename from meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.9.inc rename to meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.10.inc index 8a132f373..d792bbbc6 100644 --- a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.9.inc +++ b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8.10.inc @@ -3,14 +3,14 @@ # Copyright (C) 2018 O.S. Systems Software LTDA. SECTION = "base" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" SRC_URI = " \ ${FSL_MIRROR}/firmware-imx-${PV}.bin;fsl-eula=true \ " -SRC_URI[md5sum] = "7b36242be60a882f9b5f74bb6e2c6aa1" -SRC_URI[sha256sum] = "a72f70fd2ecaa58800bb88ed672fddc322ab9843ee7777eb89b82016b0aa3614" +SRC_URI[md5sum] = "3f8c4661ca0f64ca30fd239f66b6a471" +SRC_URI[sha256sum] = "2b70f169d4065b2a7ac7a676afe24636128bd2dacc9f5230346758c3b146b2be" S = "${WORKDIR}/firmware-imx-${PV}" diff --git a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8_8.9.bb b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8_8.10.bb similarity index 100% rename from meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8_8.9.bb rename to meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8_8.10.bb diff --git a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8m_8.9.bb b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8m_8.10.bb similarity index 100% rename from meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8m_8.9.bb rename to meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx-8m_8.10.bb diff --git a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.9.bb b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.10.bb similarity index 90% rename from meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.9.bb rename to meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.10.bb index 7c163241f..3559d26c7 100644 --- a/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.9.bb +++ b/meta-digi-arm/recipes-bsp/firmware-imx/firmware-imx_8.10.bb @@ -58,9 +58,9 @@ do_install() { cd - # Install SDMA Firmware: sdma-imx6q.bin & sdma-imx7d.bin into lib/firmware/imx/sdma - install -d ${D}${base_libdir}/firmware/imx/sdma - mv ${D}${base_libdir}/firmware/sdma/sdma-imx6q.bin ${D}${base_libdir}/firmware/imx/sdma - mv ${D}${base_libdir}/firmware/sdma/sdma-imx7d.bin ${D}${base_libdir}/firmware/imx/sdma + install -d ${D}${nonarch_base_libdir}/firmware/imx/sdma + mv ${D}${base_libdir}/firmware/sdma/sdma-imx6q.bin ${D}${nonarch_base_libdir}/firmware/imx/sdma + mv ${D}${base_libdir}/firmware/sdma/sdma-imx7d.bin ${D}${nonarch_base_libdir}/firmware/imx/sdma mv ${D}${base_libdir}/firmware/epdc/ ${D}${base_libdir}/firmware/imx/epdc/ mv ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw.nonrestricted ${D}${base_libdir}/firmware/imx/epdc/epdc_ED060XH2C1.fw @@ -109,10 +109,10 @@ PACKAGES =+ "${PN}-epdc ${PN}-sdma ${PN}-easrc ${PN}-regulatory ${PN}-hdmi ${PN} FILES_${PN}-epdc = "${base_libdir}/firmware/imx/epdc/ ${sysconfdir}/epdc ${systemd_system_unitdir}/epdc-firmware.service" FILES_${PN}-scfw = "${base_libdir}/firmware/scfw/" -FILES_${PN}-sdma = "${base_libdir}/firmware/imx/sdma ${sysconfdir}/sdma ${systemd_system_unitdir}/sdma-firmware.service" +FILES_${PN}-sdma = "${nonarch_base_libdir}/firmware/imx/sdma ${sysconfdir}/sdma ${systemd_system_unitdir}/sdma-firmware.service" FILES_${PN}-easrc = "${base_libdir}/firmware/imx/easrc/" FILES_${PN}-regulatory = "${sysconfdir}/regulatory ${systemd_system_unitdir}/regulatory-firmware.service" -FILES_${PN}-hdmi = "${base_libdir}/firmware/imx/hdmi/ ${sysconfdir}/hdmi ${systemd_system_unitdir}/hdmi-firmware.service" +FILES_${PN}-hdmi = "${base_libdir}/firmware/imx/hdmi/ ${systemd_system_unitdir}/hdmi-firmware.service" FILES_${PN}-xcvr = "${base_libdir}/firmware/imx/xcvr/" FILES_${PN}-xuvi = "${base_libdir}/firmware/imx/xuvi/" From ab0722caffd0ccf6bd1a1cf20d38b2bff9a64319 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Thu, 28 Jan 2021 12:09:34 +0100 Subject: [PATCH 22/54] recipes-bsp: imx-aft: Update recipes to new BSP release imx-5.4.70-2.3.0. Signed-off-by: Mike Engel --- meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb index 9dc04c804..5d31f2e31 100644 --- a/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb +++ b/meta-digi-arm/recipes-bsp/imx-atf/imx-atf_2.2.bb @@ -7,11 +7,11 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/BSD-3-Clause;m PV .= "+git${SRCPV}" -SRCBRANCH = "imx_5.4.47_2.2.0" +SRCBRANCH = "imx_5.4.70_2.3.0" ATF_SRC ?= "git://source.codeaurora.org/external/imx/imx-atf.git;protocol=https" SRC_URI = "${ATF_SRC};branch=${SRCBRANCH} \ " -SRCREV = "c949a888e909811db191500c51456391dff61284" +SRCREV = "f1d7187f261ebf4b8a2a70d638d4bfc0a9b26c29" SRC_URI_append_ccimx8mn = " file://0001-imx8mn-Disable-M7-debug-console.patch" SRC_URI_append_ccimx8mm = " file://0001-imx8mm-Disable-M4-debug-console.patch" @@ -28,6 +28,7 @@ PLATFORM_mx8dx = "imx8dx" PLATFORM_mx8dxlevk-phantom = "imx8qx" PLATFORM_mx8mm = "imx8mm" PLATFORM_mx8mn = "imx8mn" +PLATFORM_mx8mnlite = "imx8mn" PLATFORM_mx8mp = "imx8mp" PLATFORM_mx8mq = "imx8mq" PLATFORM_mx8qm = "imx8qm" From 968cf3a9eda1111bb8ac822d2298d77c60910b5e Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Thu, 28 Jan 2021 13:40:17 +0100 Subject: [PATCH 23/54] recipes-bsp: imx-mkimage: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bb | 8 +++++++- meta-digi-arm/recipes-bsp/imx-mkimage/imx-mkimage_git.inc | 6 +++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bb b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bb index ebf2e6a53..b1e8ee7d7 100644 --- a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bb +++ b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bb @@ -55,6 +55,7 @@ ATF_MACHINE_NAME_mx8x = "bl31-imx8qx.bin" ATF_MACHINE_NAME_mx8mq = "bl31-imx8mq.bin" ATF_MACHINE_NAME_mx8mm = "bl31-imx8mm.bin" ATF_MACHINE_NAME_mx8mn = "bl31-imx8mn.bin" +ATF_MACHINE_NAME_mx8mnlite = "bl31-imx8mn.bin" ATF_MACHINE_NAME_mx8mp = "bl31-imx8mp.bin" ATF_MACHINE_NAME_mx8phantomdxl = "bl31-imx8qx.bin" ATF_MACHINE_NAME_mx8dxl = "bl31-imx8dxl.bin" @@ -72,6 +73,7 @@ SOC_TARGET_mx8x = "iMX8QX" SOC_TARGET_mx8mq = "iMX8M" SOC_TARGET_mx8mm = "iMX8MM" SOC_TARGET_mx8mn = "iMX8MN" +SOC_TARGET_mx8mnlite = "iMX8MN" SOC_TARGET_mx8mp = "iMX8MP" SOC_TARGET_mx8dxl = "iMX8DXL" SOC_TARGET_mx8phantomdxl = "iMX8QX" @@ -107,7 +109,11 @@ compile_mx8m() { cp ${DEPLOY_DIR_IMAGE}/signed_hdmi_imx8m.bin ${BOOT_STAGING} cp ${DEPLOY_DIR_IMAGE}/u-boot-spl.bin-${MACHINE}-${UBOOT_CONFIG} \ ${BOOT_STAGING}/u-boot-spl.bin - cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${UBOOT_DTB_NAME} ${BOOT_STAGING} + if [ "${MACHINE}" = "imx8mmevk-qcawifi" ]; then + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${UBOOT_DTB_NAME} ${BOOT_STAGING}/imx8mm-evk.dtb + else + cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${UBOOT_DTB_NAME} ${BOOT_STAGING} + fi cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/u-boot-nodtb.bin-${MACHINE}-${UBOOT_CONFIG} \ ${BOOT_STAGING}/u-boot-nodtb.bin bbnote "\ diff --git a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-mkimage_git.inc b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-mkimage_git.inc index 2e78eff48..24d67b1e6 100644 --- a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-mkimage_git.inc +++ b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-mkimage_git.inc @@ -1,11 +1,11 @@ -# Copyright 2017-2019 NXP +# Copyright 2017-2020 NXP DEPENDS = "zlib openssl" -SRCBRANCH = "imx_5.4.47_2.2.0" +SRCBRANCH = "imx_5.4.70_2.3.0" IMX_MKIMAGE_SRC ?= "git://source.codeaurora.org/external/imx/imx-mkimage.git;protocol=https" SRC_URI = "${IMX_MKIMAGE_SRC};branch=${SRCBRANCH}" -SRCREV = "8da5cd231881df44b5fa21a36820536d86e413db" +SRCREV = "8947fea369ab3932259630232cfb9f87b8f9dda1" S = "${WORKDIR}/git" BOOT_TOOLS = "imx-boot-tools" From bd11b26598001e5401f0f5313407e40946d274eb Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Thu, 28 Jan 2021 15:27:02 +0100 Subject: [PATCH 24/54] recipes-bsp: imx-seco: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../0001-Makefile-Fix-LIBDIR-for-multilib.patch | 0 meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb | 4 ++-- meta-digi-arm/recipes-bsp/imx-seco/imx-seco.inc | 2 +- .../imx-seco/{imx-seco_3.7.1.bb => imx-seco_3.7.4.bb} | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) rename meta-digi-arm/recipes-bsp/imx-seco/{ => imx-seco-libs}/0001-Makefile-Fix-LIBDIR-for-multilib.patch (100%) rename meta-digi-arm/recipes-bsp/imx-seco/{imx-seco_3.7.1.bb => imx-seco_3.7.4.bb} (70%) diff --git a/meta-digi-arm/recipes-bsp/imx-seco/0001-Makefile-Fix-LIBDIR-for-multilib.patch b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch similarity index 100% rename from meta-digi-arm/recipes-bsp/imx-seco/0001-Makefile-Fix-LIBDIR-for-multilib.patch rename to meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb index eb98afa6a..60bd483c8 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb @@ -8,12 +8,12 @@ LIC_FILES_CHKSUM = "file://EULA.txt;md5=228c72f2a91452b8a03c4cab30f30ef9" DEPENDS = "zlib" -SRCBRANCH = "imx_5.4.47_2.2.0" +SRCBRANCH = "imx_5.4.70_2.3.0" SECO_LIB_SRC ?= "git://github.com/NXP/imx-seco-libs.git;protocol=https" SRC_URI = "${SECO_LIB_SRC};branch=${SRCBRANCH} \ file://0001-Makefile-Fix-LIBDIR-for-multilib.patch \ " -SRCREV = "5932c1e5240eb36c3cddc7bcbdc7abd9bd8b562c" +SRCREV = "b730ba5975644094f224faee20942f63d0d24ccd" S = "${WORKDIR}/git" diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco.inc b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco.inc index e40d91ea5..0a1b821b1 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco.inc +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco.inc @@ -3,7 +3,7 @@ SECO_FIRMWARE_NAME_mx8qm = "mx8qmb0-ahab-container.img" SECO_FIRMWARE_NAME_mx8qxp = "mx8qxb0-ahab-container.img" SECO_FIRMWARE_NAME_mx8qxpc0 = "mx8qxc0-ahab-container.img" SECO_FIRMWARE_NAME_mx8phantomdxl = "mx8qxc0-ahab-container.img" -SECO_FIRMWARE_NAME_mx8dxl = "mx8dxla0-ahab-container.img" +SECO_FIRMWARE_NAME_mx8dxl = "mx8dxla1-ahab-container.img" # For the ccimx8x, we generate images for both the B0 and the C0 revisions of # the i.MX8X silicon, so deploy both versions of the firmware. diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.1.bb b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb similarity index 70% rename from meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.1.bb rename to meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb index 78bbfc7f1..2b7441d6e 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.1.bb +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb @@ -4,15 +4,15 @@ SUMMARY = "NXP i.MX SECO firmware" DESCRIPTION = "NXP IMX SECO firmware" SECTION = "base" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" require imx-seco.inc inherit fsl-eula-unpack deploy SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true" -SRC_URI[md5sum] = "29d563790bf46629a083ba031a7de46d" -SRC_URI[sha256sum] = "b09f63139df6c4dfef3533570cd60b22eb4c48eed05f314268178e80b8de40fc" +SRC_URI[md5sum] = "f0e20216f27f2f44ac809634c5291be5" +SRC_URI[sha256sum] = "2ed8177e48c8e33f742b3a642805be56a5ef56df78b1b29e10518552154da2bc" do_compile[noexec] = "1" From 3ffabf658d483aa766dfedb156a16bc3d976b412 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 11:07:17 +0100 Subject: [PATCH 25/54] recipes-graphics: imx-dpu-g2d: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.12.bb | 8 ++++++++ .../recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.9.bb | 8 -------- 2 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.12.bb delete mode 100644 meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.9.bb diff --git a/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.12.bb b/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.12.bb new file mode 100644 index 000000000..4feada08f --- /dev/null +++ b/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.12.bb @@ -0,0 +1,8 @@ +require recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.7.0.bb + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "18a4119f1f7b83a09f60381e5403bbab" +SRC_URI[sha256sum] = "ba7e219b3cee32e0ac305685de21c67f30e0e5a1a89b5ec441ae6b8484b3f964" + +RDEPENDS_${PN} += "libopencl-imx" diff --git a/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.9.bb b/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.9.bb deleted file mode 100644 index b4d4b24bd..000000000 --- a/meta-digi-dey/recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.8.9.bb +++ /dev/null @@ -1,8 +0,0 @@ -require recipes-graphics/imx-dpu-g2d/imx-dpu-g2d_1.7.0.bb - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -SRC_URI[md5sum] = "e532d99c1116ac8b685cd03aab3f4c75" -SRC_URI[sha256sum] = "c48e2d408be9c4bf2731546bece39216c79856e554fd22f6c3040603a2348c72" - -RDEPENDS_${PN} += "libopencl-imx" From def5967e269cbdadc4cf72704a4ad4afeaf69326 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 11:36:18 +0100 Subject: [PATCH 26/54] recipes-graphics: imx-gpu-g2d: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../imx-gpu-g2d/imx-gpu-g2d_6.4.3.p0.0.bb | 10 ---------- .../imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.0.bb | 10 ++++++++++ 2 files changed, 10 insertions(+), 10 deletions(-) delete mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p0.0.bb create mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.0.bb diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p0.0.bb b/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p0.0.bb deleted file mode 100644 index e1e7ce278..000000000 --- a/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p0.0.bb +++ /dev/null @@ -1,10 +0,0 @@ -require recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.2.4.p4.0.bb - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -FSLBIN_NAME_arm = "${PN}-${PV}-${TARGET_ARCH}" - -SRC_URI[aarch64.md5sum] = "38d161708c42bb01362b7ba7f91bb6b4" -SRC_URI[aarch64.sha256sum] = "97ee90c81fa0db88e3249cb7df77f17f816ceb9a40355e03f72df99e600d7331" -SRC_URI[arm.md5sum] = "0011979d36205b1a3f03b404d6af4085" -SRC_URI[arm.sha256sum] = "725ad2edd41661713540d5e32509c754cda452acc608955689b8a64977b26ced" diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.0.bb b/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.0.bb new file mode 100644 index 000000000..6a8518fc5 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.4.3.p1.0.bb @@ -0,0 +1,10 @@ +require recipes-graphics/imx-gpu-g2d/imx-gpu-g2d_6.2.4.p4.0.bb + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +FSLBIN_NAME_arm = "${PN}-${PV}-${TARGET_ARCH}" + +SRC_URI[aarch64.md5sum] = "2c17220ff2c28701b5feca45b341961f" +SRC_URI[aarch64.sha256sum] = "47a39b171d83bced378b1b4f408be6304850fe2f25bf4577dd1ea78e22473f3d" +SRC_URI[arm.md5sum] = "968a7d324016376930579a0f904d6e69" +SRC_URI[arm.sha256sum] = "8d3b024151d4bdcc4f68cdbba9c4e5d126d55c9258de5821c43b393ae3f840b4" From 2dcc48d224e0ab9d0f80f5482e696df3097a843b Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 12:02:54 +0100 Subject: [PATCH 27/54] recipes-graphics: imx-gpu-viv: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../imx-gpu-viv/imx-gpu-viv-6.inc | 27 +++++++++---------- .../imx-gpu-viv_6.4.3.p0.0-aarch32.bb | 8 ------ .../imx-gpu-viv_6.4.3.p0.0-aarch64.bb | 8 ------ .../imx-gpu-viv_6.4.3.p1.0-aarch32.bb | 8 ++++++ .../imx-gpu-viv_6.4.3.p1.0-aarch64.bb | 8 ++++++ 5 files changed, 28 insertions(+), 31 deletions(-) delete mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch32.bb delete mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch64.bb create mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch32.bb create mode 100644 meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch64.bb diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc index 2bd71f470..c10bd2184 100644 --- a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc +++ b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc @@ -34,9 +34,6 @@ EXTRA_PROVIDES_append_imxgpu3d = " \ EXTRA_PROVIDES_append_mx8 = " \ virtual/libgbm \ " -EXTRA_PROVIDES_append_mx8qm = " \ - virtual/libopenvx \ -" PROVIDES_OPENVX = "" PROVIDES_OPENVX_mx8 = "virtual/libopenvx" PROVIDES_OPENVX_mx8mm = "" @@ -96,9 +93,11 @@ python __anonymous () { USE_X11 = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "yes", "no", d)}" USE_WL = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}" -# Inhibit warnings about files being stripped. -INHIBIT_PACKAGE_STRIP = "1" +# The packaged binaries have been stripped of debug info, so disable +# operations accordingly. INHIBIT_PACKAGE_DEBUG_SPLIT = "1" +INHIBIT_PACKAGE_STRIP = "1" +INHIBIT_SYSROOT_STRIP = "1" # FIXME: The provided binary doesn't provide soname. If in future BSP # release the libraries are fixed, we can drop this hack. @@ -264,11 +263,7 @@ do_install () { ALLOW_EMPTY_${PN} = "1" -# FIXME: Remove the following lines after adding libopenvx package -INSANE_SKIP_imx-gpu-viv-dev += "dev-elf" -INSANE_SKIP_libclc-imx += "dev-deps" - -FILES_libclc-imx = "${libdir}/libCLC${SOLIBS}" +FILES_libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h" FILES_libclc-imx-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}" # libEGL.so is used by some demo apps from Freescale @@ -278,21 +273,23 @@ FILES_libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/ FILES_libgal-imx = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}" FILES_libgal-imx-dev = "${libdir}/libGAL${SOLIBSDEV} ${includedir}/HAL" +RDEPENDS_libgal-imx += "kernel-module-imx-gpu-viv" RDEPENDS_libgal-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'valgrind', '', d)}" RPROVIDES_libgal-imx += "libgal-imx" INSANE_SKIP_libgal-imx += "build-deps" FILES_libvsc-imx = "${libdir}/libVSC${SOLIBS}" -FILES_libgbm-imx_mx8 = "${libdir}/libgbm*${SOLIBS}" -FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h ${libdir}/libgbm${SOLIBSDEV}" +FILES_libgbm-imx_mx8 = "${libdir}/libgbm${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}" +FILES_libgbm-imx-dev_mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h" RDEPENDS_libgbm-imx_append_mx8 = " libdrm" +INSANE_SKIP_libgbm-imx += "dev-so" FILES_libvulkan-imx = "${libdir}/libvulkan_VSI${SOLIBS} ${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}" FILES_libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}" INSANE_SKIP_libvulkan-imx += "dev-so" -FILES_libopenvx-imx = "${libdir}/libOpenVX${SOLIBS} ${libdir}/libOpenVX${REALSOLIBS} ${libdir}/libOvx*${SOLIBS} ${libdir}/libOpenVXC${SOLIBS} ${libdir}/libOpenVXU${SOLIBS}" +FILES_libopenvx-imx = "${libdir}/libOpenVX${SOLIBS} ${libdir}/libOpenVX${REALSOLIBS} ${libdir}/libOvx*${SOLIBS} ${libdir}/libOpenVXC${SOLIBS} ${libdir}/libOpenVXU${SOLIBS} ${libdir}/libArchModelSw${SOLIBS}" FILES_libopenvx-imx-dev = "${includedir}/VX ${libdir}/libOpenVX${SOLIBSDEV}" RDEPENDS_libopenvx-imx = "libnn-imx" INSANE_SKIP_libopenvx-imx += "dev-so dev-deps" @@ -334,11 +331,11 @@ INSANE_SKIP_libopencl-imx += "dev-so dev-deps" FILES_libnn-imx = "${libdir}/libNN*${SOLIBS}" INSANE_SKIP_libopenvg-imx += "dev-so" -FILES_libopenvg-imx = "${libdir}/libOpenVG*${REALSOLIBS}" +FILES_libopenvg-imx = "${libdir}/libOpenVG*${REALSOLIBS} ${libdir}/libOpenVG*${SOLIBS}" FILES_libopenvg-imx-dev = "${includedir}/VG ${libdir}/libOpenVG*${SOLIBSDEV} ${libdir}/pkgconfig/vg.pc" RDEPENDS_libopenvg-imx += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-gpuconfig', '', d)}" -FILES_libvdk-imx = "${libdir}/libVDK*${REALSOLIBS}" +FILES_libvdk-imx = "${libdir}/libVDK*${REALSOLIBS} ${libdir}/libVDK*${SOLIBS}" FILES_libvdk-imx-dev = "${includedir}/*vdk*.h ${libdir}/libVDK${SOLIBSDEV}" INSANE_SKIP_libvdk-imx += "dev-so" diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch32.bb b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch32.bb deleted file mode 100644 index f66a19dc5..000000000 --- a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch32.bb +++ /dev/null @@ -1,8 +0,0 @@ -require imx-gpu-viv-6.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -SRC_URI[md5sum] = "163167d49e1667bab3a8a37ea33b7624" -SRC_URI[sha256sum] = "cdec43e45e840fe30e188e3b6f07c44b4a1ceafc315e605c8d278564db5fcbe9" - -COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx7ulp)" diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch64.bb b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch64.bb deleted file mode 100644 index 8aa0047bc..000000000 --- a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p0.0-aarch64.bb +++ /dev/null @@ -1,8 +0,0 @@ -require imx-gpu-viv-6.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -SRC_URI[md5sum] = "db4c88a19d0c1f7ec2788531822f9144" -SRC_URI[sha256sum] = "b3bd03288106daf3a62d2301d09569292ef6a5c74c761cfa4e41dad85e4bf547" - -COMPATIBLE_MACHINE = "(mx8)" diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch32.bb b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch32.bb new file mode 100644 index 000000000..9980e0438 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch32.bb @@ -0,0 +1,8 @@ +require imx-gpu-viv-6.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "3ab06c5aa485c79c14e6c856ccfd8d82" +SRC_URI[sha256sum] = "9960fadbc1ea919f8b1b5c1e2e38a52b7293b70c906518d7fff2ada4140c59ea" + +COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx7ulp)" diff --git a/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch64.bb b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch64.bb new file mode 100644 index 000000000..c58951f90 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.3.p1.0-aarch64.bb @@ -0,0 +1,8 @@ +require imx-gpu-viv-6.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "72a212a1bd8102718f8b03d935f1dcbc" +SRC_URI[sha256sum] = "0505620c3851a980d2e08fee4b4fcd06eff92efac02d1646924bea86e4384ad4" + +COMPATIBLE_MACHINE = "(mx8)" From 0e08ffa60ae4de962104c6e8f77d5ca1027caf49 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 12:07:02 +0100 Subject: [PATCH 28/54] recipes-graphics: mesa: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- meta-digi-dey/recipes-graphics/mesa/mesa_%.bbappend | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta-digi-dey/recipes-graphics/mesa/mesa_%.bbappend b/meta-digi-dey/recipes-graphics/mesa/mesa_%.bbappend index 31bdad4a2..c913cf77f 100644 --- a/meta-digi-dey/recipes-graphics/mesa/mesa_%.bbappend +++ b/meta-digi-dey/recipes-graphics/mesa/mesa_%.bbappend @@ -3,6 +3,8 @@ PACKAGECONFIG_remove_mx8dxl = "osmesa" DRIDRIVERS_remove_mx8dxl = "swrast" PACKAGECONFIG_remove_mx8phantomdxl = "osmesa" DRIDRIVERS_remove_mx8phantomdxl = "swrast" +PACKAGECONFIG_remove_mx8mnlite = "osmesa" +DRIDRIVERS_remove_mx8mnlite = "swrast" do_install_append_imxgpu3d () { rm -f ${D}${includedir}/GL/glcorearb.h From b27527bf53d4f72384c48e90be981b7272640db0 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 13:42:39 +0100 Subject: [PATCH 29/54] recipes-graphics: vulkan: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../recipes-graphics/vulkan/vulkan-loader_1.1.121.bbappend | 4 ++++ meta-digi-dey/recipes-graphics/vulkan/vulkan-tools_%.bbappend | 2 -- .../vulkan/vulkan-validationlayers_%.bbappend | 3 --- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/meta-digi-dey/recipes-graphics/vulkan/vulkan-loader_1.1.121.bbappend b/meta-digi-dey/recipes-graphics/vulkan/vulkan-loader_1.1.121.bbappend index 4bcbda8c8..a49e8a46c 100644 --- a/meta-digi-dey/recipes-graphics/vulkan/vulkan-loader_1.1.121.bbappend +++ b/meta-digi-dey/recipes-graphics/vulkan/vulkan-loader_1.1.121.bbappend @@ -4,5 +4,9 @@ PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', ' SRC_URI_append = " file://0001-STDIO-844-No-need-to-change-the-App-s-apiVersion-to-.patch" +# The i.MX implementation is dynamically loaded, so it requires an +# explicit runtime dependency. +RRECOMMENDS_${PN}_append_imxgpu = " libvulkan-imx" + COMPATIBLE_MACHINE = "(mx8)" COMPATIBLE_MACHINE_mx8mm = "(^$)" diff --git a/meta-digi-dey/recipes-graphics/vulkan/vulkan-tools_%.bbappend b/meta-digi-dey/recipes-graphics/vulkan/vulkan-tools_%.bbappend index 9d121953e..c088df979 100644 --- a/meta-digi-dey/recipes-graphics/vulkan/vulkan-tools_%.bbappend +++ b/meta-digi-dey/recipes-graphics/vulkan/vulkan-tools_%.bbappend @@ -4,7 +4,5 @@ PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', ' EXTRA_OECMAKE = "-DBUILD_CUBE=OFF" -RDEPENDS_${PN} += "libvulkan-imx" - COMPATIBLE_MACHINE = "(mx8)" COMPATIBLE_MACHINE_mx8mm = "(^$)" diff --git a/meta-digi-dey/recipes-graphics/vulkan/vulkan-validationlayers_%.bbappend b/meta-digi-dey/recipes-graphics/vulkan/vulkan-validationlayers_%.bbappend index fb6d88f86..88002489e 100644 --- a/meta-digi-dey/recipes-graphics/vulkan/vulkan-validationlayers_%.bbappend +++ b/meta-digi-dey/recipes-graphics/vulkan/vulkan-validationlayers_%.bbappend @@ -24,9 +24,6 @@ do_install_append () { FILES_SOLIBSDEV = "" FILES_${PN} += "${libdir}/libVkLayer_*.so" -# The package libvulkan-imx is required to configure the imx-gpu-viv vulkan drivers for the validation layers -RDEPENDS_${PN} += "libvulkan-imx" - INSANE_SKIP_${PN} = "dev-so" COMPATIBLE_MACHINE = "(mx8)" From 288b6f012fa23281d56117b6011511f78c08a14b Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 15:47:03 +0100 Subject: [PATCH 30/54] recipes-graphics: xserver: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- ...t-xtest-Initialize-array-with-braces.patch | 36 +++++++++++++ ...-Intel-ddx-only-for-pre-gen4-hardwar.patch | 53 +++++++++++++++++++ .../xorg-xserver/files/pkgconfig.patch | 34 ++++++++++++ .../files/sdksyms-no-build-path.patch | 50 +++++++++++++++++ .../xorg-xserver/xserver-xorg.inc | 2 +- .../xorg-xserver/xserver-xorg_1.20.8.bb | 2 - 6 files changed, 174 insertions(+), 3 deletions(-) create mode 100644 meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-test-xtest-Initialize-array-with-braces.patch create mode 100644 meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch create mode 100644 meta-digi-dey/recipes-graphics/xorg-xserver/files/pkgconfig.patch create mode 100644 meta-digi-dey/recipes-graphics/xorg-xserver/files/sdksyms-no-build-path.patch diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-test-xtest-Initialize-array-with-braces.patch b/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-test-xtest-Initialize-array-with-braces.patch new file mode 100644 index 000000000..c0c242814 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-test-xtest-Initialize-array-with-braces.patch @@ -0,0 +1,36 @@ +From 8a382c015cd3c69fcfc146ef03dcbf30c77ff207 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 1 Mar 2019 09:47:57 -0800 +Subject: [PATCH] test/xtest: Initialize array with braces + +Fixes an error when extra warnings are enabled, this is caught with clang + +test/xtest.c:64:23: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces] + WindowRec root = {0}; + ^ + {} +1 error generated. + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + test/xtest.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/xtest.c b/test/xtest.c +index fc5e433..d7e6620 100644 +--- a/test/xtest.c ++++ b/test/xtest.c +@@ -61,7 +61,7 @@ xtest_init_devices(void) + { + ScreenRec screen = {0}; + ClientRec server_client = {0}; +- WindowRec root = {0}; ++ WindowRec root = {{0}}; + WindowOptRec optional = {0}; + + /* random stuff that needs initialization */ +-- +2.21.0 + diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch b/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch new file mode 100644 index 000000000..d05eec5bb --- /dev/null +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/files/0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch @@ -0,0 +1,53 @@ +From d77cdc5e1eee26821ab98c947abea53fb7b18fe5 Mon Sep 17 00:00:00 2001 +From: California Sullivan +Date: Fri, 16 Mar 2018 17:23:11 -0700 +Subject: [PATCH] xf86pciBus.c: use Intel ddx only for pre-gen4 hardware + +Use intel ddx only on pre-gen4 hw, newer ones will fall back to modesetting +Author: Timo Aaltonen + +Instead of defaulting to the Intel driver for all Intel hardware, only +default it for older hardware for which it has shown to be better for. + +Others fall through to the -modesetting default. + +Upstream-Status: Pending [Debian/Fedora patch +https://src.fedoraproject.org/rpms/xorg-x11-server/c/ee515e44b07e37689abf48cf2fffb41578f3bc1d] + +Signed-off-by: California Sullivan +--- + hw/xfree86/common/xf86pciBus.c | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c +index e61ae0cd4..d70c99197 100644 +--- a/hw/xfree86/common/xf86pciBus.c ++++ b/hw/xfree86/common/xf86pciBus.c +@@ -1173,7 +1173,23 @@ xf86VideoPtrToDriverList(struct pci_device *dev, + case 0x0bef: + /* Use fbdev/vesa driver on Oaktrail, Medfield, CDV */ + break; +- default: ++ /* Default to intel only on pre-gen4 chips */ ++ case 0x3577: ++ case 0x2562: ++ case 0x3582: ++ case 0x358e: ++ case 0x2572: ++ case 0x2582: ++ case 0x258a: ++ case 0x2592: ++ case 0x2772: ++ case 0x27a2: ++ case 0x27ae: ++ case 0x29b2: ++ case 0x29c2: ++ case 0x29d2: ++ case 0xa001: ++ case 0xa011: + driverList[0] = "intel"; + break; + } +-- +2.14.3 + diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/files/pkgconfig.patch b/meta-digi-dey/recipes-graphics/xorg-xserver/files/pkgconfig.patch new file mode 100644 index 000000000..2ef9fa9fe --- /dev/null +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/files/pkgconfig.patch @@ -0,0 +1,34 @@ +Upstream-Status: Submitted [https://gitlab.freedesktop.org/xorg/xserver/merge_requests/22] +Signed-off-by: Ross Burton + +From 5f65a6246fe752764045dd1e38912f1dccec71e4 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Thu, 20 Sep 2018 20:12:24 +0100 +Subject: [PATCH] xorg-server.m4: just all cflags instead of just sdkdir + +Instead of fetching just the sdkdir variable of xorg-server using pkg-config, +simply get all of the CFLAGS. Aside from completeness, this helps builds in +sysroots as pkg-config knows what to do with --cflags but doesn't remap +arbitrary variables. + +Signed-off-by: Ross Burton +--- + xorg-server.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/xorg-server.m4 b/xorg-server.m4 +index 18255b91a..195bda5d8 100644 +--- a/xorg-server.m4 ++++ b/xorg-server.m4 +@@ -31,7 +31,7 @@ dnl + AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ + AC_REQUIRE([PKG_PROG_PKG_CONFIG]) + SAVE_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" ++ CFLAGS="$CFLAGS `$PKG_CONFIG --cflags xorg-server`" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ + #include "xorg-server.h" + #if !defined $1 +-- +2.11.0 + diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/files/sdksyms-no-build-path.patch b/meta-digi-dey/recipes-graphics/xorg-xserver/files/sdksyms-no-build-path.patch new file mode 100644 index 000000000..be198ece4 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/files/sdksyms-no-build-path.patch @@ -0,0 +1,50 @@ +Upstream-Status: Backport [https://gitlab.freedesktop.org/xorg/xserver/merge_requests/253] +Signed-off-by: Ross Burton + +From ca832598d38ba55a001088b57d73c6d7261dc9a7 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Thu, 1 Aug 2019 15:24:51 +0100 +Subject: [PATCH] sdksyms.sh: don't embed the build path + +This script generates a header that has a comment containing the build path for +no real reason. As this source can end up deployed on targets in debug packages +this means there is both potentially sensitive information leakage about the +build environment, and a source of change for reproducible builds. +--- + hw/xfree86/sdksyms.sh | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh +index 39e33711d..bdf47a71a 100755 +--- a/hw/xfree86/sdksyms.sh ++++ b/hw/xfree86/sdksyms.sh +@@ -302,13 +302,16 @@ LC_ALL=C + export LC_ALL + ${CPP:-cpp} "$@" sdksyms.c > /dev/null || exit $? + ${CPP:-cpp} "$@" sdksyms.c | ${AWK:-awk} -v topdir=$topdir ' ++function basename(file) { ++ sub(".*/", "", file) ++ return file ++} + BEGIN { + sdk = 0; + print("/*"); + print(" * These symbols are referenced to ensure they"); + print(" * will be available in the X Server binary."); + print(" */"); +- printf("/* topdir=%s */\n", topdir); + print("_X_HIDDEN void *xorg_symbols[] = {"); + + printf("sdksyms.c:") > "sdksyms.dep"; +@@ -337,7 +340,7 @@ BEGIN { + # remove quotes + gsub(/"/, "", $3); + line = $2; +- header = $3; ++ header = basename($3); + if (! headers[$3]) { + printf(" \\\n %s", $3) >> "sdksyms.dep"; + headers[$3] = 1; +-- +2.20.1 + diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg.inc b/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg.inc index b3e03744c..e69fa88e2 100644 --- a/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -23,7 +23,7 @@ S = "${WORKDIR}/${XORG_PN}-${PV}" inherit autotools pkgconfig -inherit features_check +inherit distro_features_check REQUIRED_DISTRO_FEATURES = "x11" LIB_DEPS = "pixman libxfont2 xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess" diff --git a/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb b/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb index 40f894b0b..26815feb3 100644 --- a/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb +++ b/meta-digi-dey/recipes-graphics/xorg-xserver/xserver-xorg_1.20.8.bb @@ -1,7 +1,5 @@ require xserver-xorg.inc -FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-graphics/xorg-xserver/xserver-xorg:" - SRC_URI += "file://0001-xf86pciBus.c-use-Intel-ddx-only-for-pre-gen4-hardwar.patch \ file://pkgconfig.patch \ file://0001-test-xtest-Initialize-array-with-braces.patch \ From 9911dcc4dfe026346b5a0893282be4590a37c026 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 15:55:23 +0100 Subject: [PATCH 31/54] recipes-multimedia: alsa: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- meta-digi-dey/recipes-multimedia/alsa/imx-alsa-plugins_git.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-dey/recipes-multimedia/alsa/imx-alsa-plugins_git.bb b/meta-digi-dey/recipes-multimedia/alsa/imx-alsa-plugins_git.bb index b0aab8d45..a5507c57d 100644 --- a/meta-digi-dey/recipes-multimedia/alsa/imx-alsa-plugins_git.bb +++ b/meta-digi-dey/recipes-multimedia/alsa/imx-alsa-plugins_git.bb @@ -18,7 +18,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f" inherit autotools pkgconfig use-imx-headers IMXALSA_SRC ?= "git://source.codeaurora.org/external/imx/imx-alsa-plugins.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRC_URI = "${IMXALSA_SRC};branch=${SRCBRANCH}" SRCREV = "cde60d68ab2acee913dbfacb8aabb53d87dd3e38" From 3ba570670b6e14d6d9138097bf21a3a2738797ae Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 18:15:04 +0100 Subject: [PATCH 32/54] recipes-multimedia: imx-codec: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../recipes-multimedia/imx-codec/imx-codec.inc | 2 -- .../recipes-multimedia/imx-codec/imx-codec_4.5.6.bb | 12 ------------ .../recipes-multimedia/imx-codec/imx-codec_4.5.7.bb | 12 ++++++++++++ 3 files changed, 12 insertions(+), 14 deletions(-) delete mode 100644 meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.6.bb create mode 100644 meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb diff --git a/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec.inc b/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec.inc index a0ac9a3ad..1af8651c7 100644 --- a/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec.inc +++ b/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec.inc @@ -111,5 +111,3 @@ FILES_${PN}-oggvorbis += "${libdir}/imx-mm/audio-codec/wrap/lib_vorbisd_wrap_arm FILES_${PN}-nb += "${libdir}/imx-mm/audio-codec/wrap/lib_nbamrd_wrap_arm*_elinux.so.*" FILES_${PN}-wb += "${libdir}/imx-mm/audio-codec/wrap/lib_wbamrd_wrap_arm*_elinux.so.*" FILES_lib-src-ppp-arm11-elinux1 += "${libdir}/lib_src_ppp_arm11_elinux.so.1" - -PACKAGE_ARCH = "${MACHINE_ARCH}" diff --git a/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.6.bb b/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.6.bb deleted file mode 100644 index b44c8d769..000000000 --- a/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.6.bb +++ /dev/null @@ -1,12 +0,0 @@ -# Copyright (C) 2013-2016 Freescale Semiconductor -# Copyright 2017-2018 NXP -# Released under the MIT license (see COPYING.MIT for the terms) - -require imx-codec.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -SRC_URI[md5sum] = "acf07e6202c773b5cf8fa39d3992f08d" -SRC_URI[sha256sum] = "be9e341c1bda167ceb2164aa8c27fbc70480ba28252b5c10a8b1cdfb5fe26826" - -COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" diff --git a/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb b/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb new file mode 100644 index 000000000..ae119b860 --- /dev/null +++ b/meta-digi-dey/recipes-multimedia/imx-codec/imx-codec_4.5.7.bb @@ -0,0 +1,12 @@ +# Copyright (C) 2013-2016 Freescale Semiconductor +# Copyright 2017-2018 NXP +# Released under the MIT license (see COPYING.MIT for the terms) + +require imx-codec.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "4d6ab45675c4010502a9bf2c16ee4705" +SRC_URI[sha256sum] = "637d6109e6d6105f36f0fbb4f1d2267d487e1326591f7a26cd078c35b8373e55" + +COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" From 790216f61902e797e6568717a7540cbaada94590 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 18:20:25 +0100 Subject: [PATCH 33/54] recipes-multimedia: imx-parser: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../imx-parser/imx-parser_4.5.6.bb | 12 ------------ .../imx-parser/imx-parser_4.5.7.bb | 12 ++++++++++++ 2 files changed, 12 insertions(+), 12 deletions(-) delete mode 100644 meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.6.bb create mode 100644 meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.7.bb diff --git a/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.6.bb b/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.6.bb deleted file mode 100644 index 4df7eba8c..000000000 --- a/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.6.bb +++ /dev/null @@ -1,12 +0,0 @@ -# Copyright (C) 2013-2016 Freescale Semiconductor -# Copyright 2017-2018 NXP -# Released under the MIT license (see COPYING.MIT for the terms) - -include imx-parser.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" - -SRC_URI[md5sum] = "6431109c02762e63ad961ac311f14a3f" -SRC_URI[sha256sum] = "6a13f333aa82c3748f937ed7ee6eec4b6f363c74db342dccef1de8d2cdd23bb1" - -COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" diff --git a/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.7.bb b/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.7.bb new file mode 100644 index 000000000..df388295b --- /dev/null +++ b/meta-digi-dey/recipes-multimedia/imx-parser/imx-parser_4.5.7.bb @@ -0,0 +1,12 @@ +# Copyright (C) 2013-2016 Freescale Semiconductor +# Copyright 2017-2018 NXP +# Released under the MIT license (see COPYING.MIT for the terms) + +include imx-parser.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=cf3f9b8d09bc3926b1004ea71f7a248a" + +SRC_URI[md5sum] = "dd34e4e2d1384af27d370964ebbd05fd" +SRC_URI[sha256sum] = "033bdfdd4b611a4e9993519637c9b0f195daca9e12f614daff5d4dec90478fcf" + +COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" From 7d19618a05c85881c9406eedebb40a717e6b0bb6 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 29 Jan 2021 18:28:07 +0100 Subject: [PATCH 34/54] recipes-multimedia: imx-vpuwrap: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../{imx-vpuwrap_4.5.6.bb => imx-vpuwrap_4.5.7.bb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename meta-digi-dey/recipes-multimedia/imx-vpuwrap/{imx-vpuwrap_4.5.6.bb => imx-vpuwrap_4.5.7.bb} (89%) diff --git a/meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.6.bb b/meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb similarity index 89% rename from meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.6.bb rename to meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb index d85c4446c..57a2a017c 100644 --- a/meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.6.bb +++ b/meta-digi-dey/recipes-multimedia/imx-vpuwrap/imx-vpuwrap_4.5.7.bb @@ -9,9 +9,9 @@ SECTION = "multimedia" LIC_FILES_CHKSUM = "file://COPYING;md5=228c72f2a91452b8a03c4cab30f30ef9" IMX_VPUWRAP_SRC ?= "git://github.com/NXP/imx-vpuwrap.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRC_URI = "${IMX_VPUWRAP_SRC};branch=${SRCBRANCH}" -SRCREV = "7d16e588b805163ef1c67dc92615ffa29bbb3dfb" +SRCREV = "ccaf10a0dae7c0d7d204bd64282598bc0e3bd661" S = "${WORKDIR}/git" inherit autotools pkgconfig From 27896e296f55f6606740b52761570ea887730ed8 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Sat, 30 Jan 2021 13:09:35 +0100 Subject: [PATCH 35/54] recipes-support: opencv: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- ...dparty-ippicv-Use-pre-downloaded-ipp.patch | 6 +- .../opencv/opencv/0001-Dont-use-isystem.patch | 4 +- .../opencv/0001-Make-ts-module-external.patch | 42 ++++ ...-around-deprecated-ffmpeg-RAW-functi.patch | 6 +- .../0001-Use-Os-to-compile-tinyxml2.cpp.patch | 31 +++ .../0003-To-fix-errors-as-following.patch | 12 +- .../opencv/opencv/OpenCV_DNN_examples.patch | 113 +++++---- .../opencv/opencv/download.patch | 16 +- .../recipes-support/opencv/opencv_4.4.0.bb | 217 ++++++++++++++++++ ...pencv_4.2.0.imx.bb => opencv_4.4.0.imx.bb} | 19 +- 10 files changed, 377 insertions(+), 89 deletions(-) create mode 100644 meta-digi-dey/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch create mode 100644 meta-digi-dey/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch create mode 100644 meta-digi-dey/recipes-support/opencv/opencv_4.4.0.bb rename meta-digi-dey/recipes-support/opencv/{opencv_4.2.0.imx.bb => opencv_4.4.0.imx.bb} (80%) diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch b/meta-digi-dey/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch index 5f909c1a8..9e6a61371 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch @@ -1,4 +1,4 @@ -From 85b882b4ceb57fe6538f47af58d0a970923fde0e Mon Sep 17 00:00:00 2001 +From 9b4959b97d2e95d4b49cf6ca2a3fce3cdb484f2d Mon Sep 17 00:00:00 2001 From: Ricardo Ribalda Delgado Date: Thu, 31 Mar 2016 00:20:15 +0200 Subject: [PATCH] 3rdparty/ippicv: Use pre-downloaded ipp @@ -11,10 +11,10 @@ Signed-off-by: Ismo Puustinen 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/3rdparty/ippicv/ippicv.cmake b/3rdparty/ippicv/ippicv.cmake -index ae8748c..305abdb 100644 +index 257af6fcc6..f88460450f 100644 --- a/3rdparty/ippicv/ippicv.cmake +++ b/3rdparty/ippicv/ippicv.cmake -@@ -39,18 +39,5 @@ function(download_ippicv root_var) +@@ -34,18 +34,5 @@ function(download_ippicv root_var) endif() set(THE_ROOT "${OpenCV_BINARY_DIR}/3rdparty/ippicv") diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch b/meta-digi-dey/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch index 40d3f53e1..948a80faf 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/0001-Dont-use-isystem.patch @@ -1,4 +1,4 @@ -From 9659f5a1e75fc29c9879c301767bba72ecf9042a Mon Sep 17 00:00:00 2001 +From 66e50ee69fa9ee2469d349100e70d8b296c4b4dc Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Tue, 11 Sep 2018 00:21:18 -0700 Subject: [PATCH] Dont use isystem @@ -14,7 +14,7 @@ Signed-off-by: Khem Raj 1 file changed, 2 insertions(+) diff --git a/cmake/OpenCVPCHSupport.cmake b/cmake/OpenCVPCHSupport.cmake -index 59bc826..055dfce 100644 +index 08cd06def4..46c9c02da3 100644 --- a/cmake/OpenCVPCHSupport.cmake +++ b/cmake/OpenCVPCHSupport.cmake @@ -18,6 +18,8 @@ IF(CV_GCC) diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch b/meta-digi-dey/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch new file mode 100644 index 000000000..d56b8ae67 --- /dev/null +++ b/meta-digi-dey/recipes-support/opencv/opencv/0001-Make-ts-module-external.patch @@ -0,0 +1,42 @@ +From 11bbf909e08594628bd757d989ae34cf1bfe200b Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Thu, 18 Jun 2020 05:51:38 +0000 +Subject: [PATCH] Make ts module external + +Make ts module external + +Reference: https://github.com/qbonnard/opencv/commit/6b229c5834cb9a0930425e762a6c7b03244d7abb + +Upstream-Status: Submitted [https://github.com/opencv/opencv/issues/8408] + +Signed-off-by: Mingli Yu +--- + modules/ts/CMakeLists.txt | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/modules/ts/CMakeLists.txt b/modules/ts/CMakeLists.txt +index f95bed0793..66f315bcca 100644 +--- a/modules/ts/CMakeLists.txt ++++ b/modules/ts/CMakeLists.txt +@@ -4,9 +4,6 @@ if(NOT BUILD_opencv_ts AND NOT BUILD_TESTS AND NOT BUILD_PERF_TESTS) + ocv_module_disable(ts) + endif() + +-set(OPENCV_MODULE_TYPE STATIC) +-set(OPENCV_MODULE_IS_PART_OF_WORLD FALSE) +- + if(WINRT) + # WINRT doesn't have access to environment variables + # so adding corresponding macros during CMake run +@@ -16,7 +13,7 @@ endif() + + ocv_warnings_disable(CMAKE_CXX_FLAGS -Wundef) + +-ocv_add_module(ts INTERNAL opencv_core opencv_imgproc opencv_imgcodecs opencv_videoio opencv_highgui) ++ocv_add_module(ts opencv_core opencv_imgproc opencv_imgcodecs opencv_videoio opencv_highgui) + + ocv_glob_module_sources() + ocv_module_include_directories() +-- +2.24.1 + diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch b/meta-digi-dey/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch index f8ccd1d55..1e47f8b16 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch @@ -1,4 +1,4 @@ -From fe27d0e2341683606704115949d16250e4cacbfa Mon Sep 17 00:00:00 2001 +From e4ec6cea72da9e9ae5ba57140fa2f5c63f1f8295 Mon Sep 17 00:00:00 2001 From: Jason Wessel Date: Wed, 9 May 2018 13:33:59 -0700 Subject: [PATCH] Temporarliy work around deprecated ffmpeg RAW function @@ -11,10 +11,10 @@ Signed-off-by: Jason Wessel 1 file changed, 8 insertions(+) diff --git a/modules/videoio/src/cap_ffmpeg_impl.hpp b/modules/videoio/src/cap_ffmpeg_impl.hpp -index 0d360ad..566df66 100644 +index 6dca724a89..ae55dd4555 100644 --- a/modules/videoio/src/cap_ffmpeg_impl.hpp +++ b/modules/videoio/src/cap_ffmpeg_impl.hpp -@@ -736,6 +736,14 @@ struct ImplMutex::Impl +@@ -774,6 +774,14 @@ struct ImplMutex::Impl #endif diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch b/meta-digi-dey/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch new file mode 100644 index 000000000..c5a64387f --- /dev/null +++ b/meta-digi-dey/recipes-support/opencv/opencv/0001-Use-Os-to-compile-tinyxml2.cpp.patch @@ -0,0 +1,31 @@ +From 59fafe6e39759e193b5764b36b4c5a93da352123 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 18 Aug 2020 00:36:49 -0700 +Subject: [PATCH] Use -Os to compile tinyxml2.cpp + +This workarounds issue [1] seen on riscv with gcc + +[1] https://github.com/riscv/riscv-gnu-toolchain/issues/624 + +Upstream-Status: Inappropriate [ OE-Specific ] +Signed-off-by: Khem Raj +--- + modules/datasets/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/datasets/CMakeLists.txt b/modules/datasets/CMakeLists.txt +index 56ca9e310..99b7a33f6 100644 +--- a/modules/datasets/CMakeLists.txt ++++ b/modules/datasets/CMakeLists.txt +@@ -2,7 +2,7 @@ set(the_description "datasets framework") + + set(filter_srcs "${CMAKE_CURRENT_LIST_DIR}/src/tinyxml2/tinyxml2.cpp") + if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") +- ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override") # GCC ++ ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-suggest-override -Os") # GCC + elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + ocv_append_source_files_cxx_compiler_options(filter_srcs "-Wno-inconsistent-missing-override") # Clang + endif() +-- +2.28.0 + diff --git a/meta-digi-dey/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch b/meta-digi-dey/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch index 336c2e08e..bb47ef2ba 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/0003-To-fix-errors-as-following.patch @@ -1,4 +1,4 @@ -From 867caccc358266f7021f076fc8c8e41bf048782c Mon Sep 17 00:00:00 2001 +From f42c9b8c7bafcadc7e95fb25a391707f970eb426 Mon Sep 17 00:00:00 2001 From: Huang Qiyu Date: Fri, 19 May 2017 04:27:50 +0900 Subject: [PATCH] To fix errors as following: @@ -21,10 +21,10 @@ Signed-off-by: Ismo Puustinen 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/ts/include/opencv2/ts.hpp b/modules/ts/include/opencv2/ts.hpp -index b9d6b74..f1ee7ee 100644 +index ed7491a89a..80919d13ee 100644 --- a/modules/ts/include/opencv2/ts.hpp +++ b/modules/ts/include/opencv2/ts.hpp -@@ -622,7 +622,7 @@ protected: +@@ -728,7 +728,7 @@ protected: } }; @@ -33,7 +33,7 @@ index b9d6b74..f1ee7ee 100644 struct DefaultRngAuto { -@@ -685,7 +685,7 @@ private: +@@ -791,7 +791,7 @@ private: #endif #endif @@ -43,7 +43,7 @@ index b9d6b74..f1ee7ee 100644 #define CV_TEST_INIT0_NOOP (void)0 diff --git a/modules/ts/include/opencv2/ts/ocl_test.hpp b/modules/ts/include/opencv2/ts/ocl_test.hpp -index 11572e9..438112e 100644 +index 11572e9f48..438112e2aa 100644 --- a/modules/ts/include/opencv2/ts/ocl_test.hpp +++ b/modules/ts/include/opencv2/ts/ocl_test.hpp @@ -82,7 +82,7 @@ inline UMat ToUMat(InputArray src) @@ -56,7 +56,7 @@ index 11572e9..438112e 100644 #define MAX_VALUE 357 diff --git a/modules/ts/include/opencv2/ts/ts_ext.hpp b/modules/ts/include/opencv2/ts/ts_ext.hpp -index b5cea3e..e5b0b4b 100644 +index b2a4cac241..b94c681c0c 100644 --- a/modules/ts/include/opencv2/ts/ts_ext.hpp +++ b/modules/ts/include/opencv2/ts/ts_ext.hpp @@ -9,7 +9,7 @@ diff --git a/meta-digi-dey/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch b/meta-digi-dey/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch index 37f3e9ca9..712806adb 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/OpenCV_DNN_examples.patch @@ -1,24 +1,24 @@ -From 3c4daafb54f961e376104a461ca7ec114ff0331a Mon Sep 17 00:00:00 2001 -From: Ludek Slosarcik -Date: Fri, 14 Feb 2020 15:46:50 +0100 -Subject: [PATCH] opencv_dnn: added video device for 2 examples, and change text labels - -Signed-off-by: Ludek Slosarcik - -Upstream-Status: Pending ---- - samples/cpp/logistic_regression.cpp | 2 +- - samples/dnn/classification.cpp | 7 ++++--- - samples/dnn/object_detection.cpp | 10 +++++----- - samples/dnn/segmentation.cpp | 2 +- - samples/dnn/text_detection.cpp | 5 +++-- - 5 files changed, 14 insertions(+), 12 deletions(-) - -diff --git a/samples/cpp/logistic_regression.cpp b/samples/cpp/logistic_regression.cpp -index 365b32e523..5dca6b3835 100644 ---- a/samples/cpp/logistic_regression.cpp -+++ b/samples/cpp/logistic_regression.cpp -@@ -83,7 +83,7 @@ static float calculateAccuracyPercent(const Mat &original, const Mat &predicted) +From 3c4daafb54f961e376104a461ca7ec114ff0331a Mon Sep 17 00:00:00 2001 +From: Ludek Slosarcik +Date: Fri, 14 Feb 2020 15:46:50 +0100 +Subject: [PATCH] opencv_dnn: added video device for 2 examples, and change text labels + +Signed-off-by: Ludek Slosarcik + +Upstream-Status: Pending +--- + samples/cpp/logistic_regression.cpp | 2 +- + samples/dnn/classification.cpp | 7 ++++--- + samples/dnn/object_detection.cpp | 10 +++++----- + samples/dnn/segmentation.cpp | 2 +- + samples/dnn/text_detection.cpp | 5 +++-- + 5 files changed, 14 insertions(+), 12 deletions(-) + +Index: git/samples/cpp/logistic_regression.cpp +=================================================================== +--- git.orig/samples/cpp/logistic_regression.cpp ++++ git/samples/cpp/logistic_regression.cpp +@@ -83,7 +83,7 @@ static float calculateAccuracyPercent(co int main() { @@ -27,10 +27,10 @@ index 365b32e523..5dca6b3835 100644 cout << "**********************************************************************" << endl; cout << filename << " contains digits 0 and 1 of 20 samples each, collected on an Android device" << endl; -diff --git a/samples/dnn/classification.cpp b/samples/dnn/classification.cpp -index 0ae9e6ed94..0a290a8f33 100644 ---- a/samples/dnn/classification.cpp -+++ b/samples/dnn/classification.cpp +Index: git/samples/dnn/classification.cpp +=================================================================== +--- git.orig/samples/dnn/classification.cpp ++++ git/samples/dnn/classification.cpp @@ -11,6 +11,7 @@ std::string keys = "{ help h | | Print help message. }" "{ @alias | | An alias name of model to extract preprocessing parameters from models.yml file. }" @@ -64,11 +64,11 @@ index 0ae9e6ed94..0a290a8f33 100644 imshow(kWinName, frame); } -diff --git a/samples/dnn/object_detection.cpp b/samples/dnn/object_detection.cpp -index 83ed10db5d..6fa8e08ad8 100644 ---- a/samples/dnn/object_detection.cpp -+++ b/samples/dnn/object_detection.cpp -@@ -250,13 +250,13 @@ int main(int argc, char** argv) +Index: git/samples/dnn/object_detection.cpp +=================================================================== +--- git.orig/samples/dnn/object_detection.cpp ++++ git/samples/dnn/object_detection.cpp +@@ -251,13 +251,13 @@ int main(int argc, char** argv) if (predictionsQueue.counter > 1) { std::string label = format("Camera: %.2f FPS", framesQueue.getFPS()); @@ -85,7 +85,7 @@ index 83ed10db5d..6fa8e08ad8 100644 } imshow(kWinName, frame); } -@@ -292,7 +292,7 @@ int main(int argc, char** argv) +@@ -293,7 +293,7 @@ int main(int argc, char** argv) double freq = getTickFrequency() / 1000; double t = net.getPerfProfile(layersTimes) / freq; std::string label = format("Inference time: %.2f ms", t); @@ -94,7 +94,7 @@ index 83ed10db5d..6fa8e08ad8 100644 imshow(kWinName, frame); } -@@ -424,7 +424,7 @@ void drawPred(int classId, float conf, int left, int top, int right, int bottom, +@@ -462,7 +462,7 @@ void drawPred(int classId, float conf, i top = max(top, labelSize.height); rectangle(frame, Point(left, top - labelSize.height), Point(left + labelSize.width, top + baseLine), Scalar::all(255), FILLED); @@ -103,10 +103,10 @@ index 83ed10db5d..6fa8e08ad8 100644 } void callback(int pos, void*) -diff --git a/samples/dnn/segmentation.cpp b/samples/dnn/segmentation.cpp -index d9fbad8974..2e0c6908d5 100644 ---- a/samples/dnn/segmentation.cpp -+++ b/samples/dnn/segmentation.cpp +Index: git/samples/dnn/segmentation.cpp +=================================================================== +--- git.orig/samples/dnn/segmentation.cpp ++++ git/samples/dnn/segmentation.cpp @@ -157,7 +157,7 @@ int main(int argc, char** argv) double freq = getTickFrequency() / 1000; double t = net.getPerfProfile(layersTimes) / freq; @@ -116,36 +116,33 @@ index d9fbad8974..2e0c6908d5 100644 imshow(kWinName, frame); if (!classes.empty()) -diff --git a/samples/dnn/text_detection.cpp b/samples/dnn/text_detection.cpp -index e7b0f237d3..00cd22e144 100644 ---- a/samples/dnn/text_detection.cpp -+++ b/samples/dnn/text_detection.cpp -@@ -8,6 +8,7 @@ using namespace cv::dnn; +Index: git/samples/dnn/text_detection.cpp +=================================================================== +--- git.orig/samples/dnn/text_detection.cpp ++++ git/samples/dnn/text_detection.cpp +@@ -25,6 +25,7 @@ using namespace cv::dnn; const char* keys = "{ help h | | Print help message. }" "{ input i | | Path to input image or video file. Skip this argument to capture frames from a camera.}" + "{ device | 0 | camera device number. }" - "{ model m | | Path to a binary .pb file contains trained network.}" + "{ model m | | Path to a binary .pb file contains trained detector network.}" + "{ ocr | | Path to a binary .pb or .onnx file contains trained recognition network.}" "{ width | 320 | Preprocess input image by resizing to a specific width. It should be multiple by 32. }" - "{ height | 320 | Preprocess input image by resizing to a specific height. It should be multiple by 32. }" -@@ -51,7 +52,7 @@ int main(int argc, char** argv) - if (parser.has("input")) - cap.open(parser.get("input")); - else -- cap.open(0); -+ cap.open(parser.get("device")); +@@ -75,7 +76,7 @@ int main(int argc, char** argv) + + // Open a video file or an image file or a camera stream. + VideoCapture cap; +- bool openSuccess = parser.has("input") ? cap.open(parser.get("input")) : cap.open(0); ++ bool openSuccess = parser.has("input") ? cap.open(parser.get("input")) : cap.open(parser.get("device")); + CV_Assert(openSuccess); static const std::string kWinName = "EAST: An Efficient and Accurate Scene Text Detector"; - namedWindow(kWinName, WINDOW_NORMAL); -@@ -109,7 +110,7 @@ int main(int argc, char** argv) - double freq = getTickFrequency() / 1000; - double t = net.getPerfProfile(layersTimes) / freq; - std::string label = format("Inference time: %.2f ms", t); +@@ -156,7 +157,7 @@ int main(int argc, char** argv) + + // Put efficiency information. + std::string label = format("Inference time: %.2f ms", tickMeter.getTimeMilli()); - putText(frame, label, Point(0, 15), FONT_HERSHEY_SIMPLEX, 0.5, Scalar(0, 255, 0)); + putText(frame, label, Point(0, 20), FONT_HERSHEY_SIMPLEX, 0.8, Scalar(0, 0, 255), 2, 8, false); imshow(kWinName, frame); - } --- -2.17.1 - + diff --git a/meta-digi-dey/recipes-support/opencv/opencv/download.patch b/meta-digi-dey/recipes-support/opencv/opencv/download.patch index 938d5ee1b..33ac48312 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv/download.patch +++ b/meta-digi-dey/recipes-support/opencv/opencv/download.patch @@ -1,12 +1,16 @@ -From: Arturo Buzarra -Date: Thu, 16 Apr 2020 09:15:06 +0200 -Subject: [PATCH] This CMake module will download files during do_configure. - This is bad as it means we can't do offline builds. +From b18a280fab06a680d9f831bf8b462647f3cb6214 Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Thu, 9 Jan 2020 16:24:24 +0000 +Subject: [PATCH] opencv: abort configure if we need to download + +This CMake module will download files during do_configure. This is bad as it +means we can't do offline builds. Add an option to disallow downloads by emitting a fatal error. Upstream-Status: Pending Signed-off-by: Ross Burton + --- cmake/OpenCVDownload.cmake | 6 ++++++ 1 file changed, 6 insertions(+) @@ -18,13 +22,13 @@ index 63cf6d3238..4acf477f70 100644 @@ -14,6 +14,7 @@ # RELATIVE_URL - if set, then URL is treated as a base, and FILENAME will be appended to it # Note: uses OPENCV_DOWNLOAD_PATH folder as cache, default is /.cache - + +set(OPENCV_ALLOW_DOWNLOADS ON CACHE BOOL "Allow downloads") set(HELP_OPENCV_DOWNLOAD_PATH "Cache directory for downloaded files") if(DEFINED ENV{OPENCV_DOWNLOAD_PATH}) set(OPENCV_DOWNLOAD_PATH "$ENV{OPENCV_DOWNLOAD_PATH}" CACHE PATH "${HELP_OPENCV_DOWNLOAD_PATH}") @@ -156,6 +157,11 @@ function(ocv_download) - + # Download if(NOT EXISTS "${CACHE_CANDIDATE}") + if(NOT OPENCV_ALLOW_DOWNLOADS) diff --git a/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.bb b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.bb new file mode 100644 index 000000000..c83186de0 --- /dev/null +++ b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.bb @@ -0,0 +1,217 @@ +SUMMARY = "Opencv : The Open Computer Vision Library" +HOMEPAGE = "http://opencv.org/" +SECTION = "libs" + +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=19598330421859a6dd353a4318091ac7" + +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" + +DEPENDS = "libtool swig-native bzip2 zlib glib-2.0 libwebp" + +SRCREV_opencv = "c3bb57afeaf030f10939204d48d7c2a3842f4293" +SRCREV_contrib = "5fae4082cc493efa5cb7a7486f9e009618a5198b" +SRCREV_ipp = "a56b6ac6f030c312b2dce17430eef13aed9af274" +SRCREV_boostdesc = "34e4206aef44d50e6bbcd0ab06354b52e7466d26" +SRCREV_vgg = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d" +SRCREV_face = "8afa57abc8229d611c4937165d20e2a2d9fc5a12" + +def ipp_filename(d): + import re + arch = d.getVar('TARGET_ARCH') + if re.match("i.86$", arch): + return "ippicv_2020_lnx_ia32_20191018_general.tgz" + else: + return "ippicv_2020_lnx_intel64_20191018_general.tgz" + +def ipp_md5sum(d): + import re + arch = d.getVar('TARGET_ARCH') + if re.match("i.86$", arch): + return "ad189a940fb60eb71f291321322fe3e8" + else: + return "7421de0095c7a39162ae13a6098782f9" + +IPP_FILENAME = "${@ipp_filename(d)}" +IPP_MD5 = "${@ipp_md5sum(d)}" + +SRCREV_FORMAT = "opencv_contrib_ipp_boostdesc_vgg" +SRC_URI = "git://github.com/opencv/opencv.git;name=opencv \ + git://github.com/opencv/opencv_contrib.git;destsuffix=contrib;name=contrib \ + git://github.com/opencv/opencv_3rdparty.git;branch=ippicv/master_20191018;destsuffix=ipp;name=ipp \ + git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_boostdesc_20161012;destsuffix=boostdesc;name=boostdesc \ + git://github.com/opencv/opencv_3rdparty.git;branch=contrib_xfeatures2d_vgg_20160317;destsuffix=vgg;name=vgg \ + git://github.com/opencv/opencv_3rdparty.git;branch=contrib_face_alignment_20170818;destsuffix=face;name=face \ + file://0001-3rdparty-ippicv-Use-pre-downloaded-ipp.patch \ + file://0003-To-fix-errors-as-following.patch \ + file://0001-Temporarliy-work-around-deprecated-ffmpeg-RAW-functi.patch \ + file://0001-Dont-use-isystem.patch \ + file://download.patch \ + file://0001-Make-ts-module-external.patch \ + " +SRC_URI_append_riscv64 = " file://0001-Use-Os-to-compile-tinyxml2.cpp.patch;patchdir=../contrib" + +S = "${WORKDIR}/git" + +# OpenCV wants to download more files during configure. We download these in +# do_fetch and construct a source cache in the format it expects +OPENCV_DLDIR = "${WORKDIR}/downloads" + +do_unpack_extra() { + tar xzf ${WORKDIR}/ipp/ippicv/${IPP_FILENAME} -C ${WORKDIR} + + md5() { + # Return the MD5 of $1 + echo $(md5sum $1 | cut -d' ' -f1) + } + cache() { + TAG=$1 + shift + mkdir --parents ${OPENCV_DLDIR}/$TAG + for F in $*; do + DEST=${OPENCV_DLDIR}/$TAG/$(md5 $F)-$(basename $F) + test -e $DEST || ln -s $F $DEST + done + } + cache xfeatures2d/boostdesc ${WORKDIR}/boostdesc/*.i + cache xfeatures2d/vgg ${WORKDIR}/vgg/*.i + cache data ${WORKDIR}/face/*.dat +} +addtask unpack_extra after do_unpack before do_patch + +CMAKE_VERBOSE = "VERBOSE=1" + +EXTRA_OECMAKE = "-DOPENCV_EXTRA_MODULES_PATH=${WORKDIR}/contrib/modules \ + -DWITH_1394=OFF \ + -DENABLE_PRECOMPILED_HEADERS=OFF \ + -DCMAKE_SKIP_RPATH=ON \ + -DOPENCV_ICV_HASH=${IPP_MD5} \ + -DIPPROOT=${WORKDIR}/ippicv_lnx \ + -DOPENCV_GENERATE_PKGCONFIG=ON \ + -DOPENCV_DOWNLOAD_PATH=${OPENCV_DLDIR} \ + -DOPENCV_ALLOW_DOWNLOADS=OFF \ + ${@bb.utils.contains("TARGET_CC_ARCH", "-msse3", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1", "", d)} \ + ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.1", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1", "", d)} \ + ${@bb.utils.contains("TARGET_CC_ARCH", "-msse4.2", "-DENABLE_SSE=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE41=1 -DENABLE_SSE42=1", "", d)} \ +" +EXTRA_OECMAKE_append_x86 = " -DX86=ON" + +PACKAGECONFIG ??= "gapi python3 eigen jpeg png tiff v4l libv4l gstreamer samples tbb gphoto2 \ + ${@bb.utils.contains("DISTRO_FEATURES", "x11", "gtk", "", d)} \ + ${@bb.utils.contains("LICENSE_FLAGS_WHITELIST", "commercial", "libav", "", d)}" + +PACKAGECONFIG[gapi] = "-DWITH_ADE=ON -Dade_DIR=${STAGING_LIBDIR},-DWITH_ADE=OFF,ade" +PACKAGECONFIG[amdblas] = "-DWITH_OPENCLAMDBLAS=ON,-DWITH_OPENCLAMDBLAS=OFF,libclamdblas," +PACKAGECONFIG[amdfft] = "-DWITH_OPENCLAMDFFT=ON,-DWITH_OPENCLAMDFFT=OFF,libclamdfft," +PACKAGECONFIG[dnn] = "-DBUILD_opencv_dnn=ON -DPROTOBUF_UPDATE_FILES=ON -DBUILD_PROTOBUF=OFF,-DBUILD_opencv_dnn=OFF,protobuf protobuf-native," +PACKAGECONFIG[eigen] = "-DWITH_EIGEN=ON,-DWITH_EIGEN=OFF,libeigen gflags glog," +PACKAGECONFIG[freetype] = "-DBUILD_opencv_freetype=ON,-DBUILD_opencv_freetype=OFF,freetype," +PACKAGECONFIG[gphoto2] = "-DWITH_GPHOTO2=ON,-DWITH_GPHOTO2=OFF,libgphoto2," +PACKAGECONFIG[gstreamer] = "-DWITH_GSTREAMER=ON,-DWITH_GSTREAMER=OFF,gstreamer1.0 gstreamer1.0-plugins-base," +PACKAGECONFIG[gtk] = "-DWITH_GTK=ON,-DWITH_GTK=OFF,gtk+3," +PACKAGECONFIG[jasper] = "-DWITH_JASPER=ON,-DWITH_JASPER=OFF,jasper," +PACKAGECONFIG[java] = "-DJAVA_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native fastjar-native openjdk-8-native," +PACKAGECONFIG[jpeg] = "-DWITH_JPEG=ON,-DWITH_JPEG=OFF,jpeg," +PACKAGECONFIG[libav] = "-DWITH_FFMPEG=ON,-DWITH_FFMPEG=OFF,libav," +PACKAGECONFIG[libv4l] = "-DWITH_LIBV4L=ON,-DWITH_LIBV4L=OFF,v4l-utils," +PACKAGECONFIG[opencl] = "-DWITH_OPENCL=ON,-DWITH_OPENCL=OFF,opencl-headers virtual/opencl-icd," +PACKAGECONFIG[oracle-java] = "-DJAVA_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_INCLUDE_PATH2=${ORACLE_JAVA_HOME}/include/linux -DJAVA_AWT_INCLUDE_PATH=${ORACLE_JAVA_HOME}/include -DJAVA_AWT_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/libjawt.so -DJAVA_JVM_LIBRARY=${ORACLE_JAVA_HOME}/lib/amd64/server/libjvm.so,,ant-native oracle-jse-jdk oracle-jse-jdk-native," +PACKAGECONFIG[png] = "-DWITH_PNG=ON,-DWITH_PNG=OFF,libpng," +PACKAGECONFIG[python2] = "-DPYTHON2_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include,,python-numpy," +PACKAGECONFIG[python3] = "-DPYTHON3_NUMPY_INCLUDE_DIRS:PATH=${STAGING_LIBDIR}/${PYTHON_DIR}/site-packages/numpy/core/include,,python3-numpy," +PACKAGECONFIG[samples] = "-DBUILD_EXAMPLES=ON -DINSTALL_PYTHON_EXAMPLES=ON,-DBUILD_EXAMPLES=OFF,," +PACKAGECONFIG[tbb] = "-DWITH_TBB=ON,-DWITH_TBB=OFF,tbb," +PACKAGECONFIG[text] = "-DBUILD_opencv_text=ON,-DBUILD_opencv_text=OFF,tesseract," +PACKAGECONFIG[tiff] = "-DWITH_TIFF=ON,-DWITH_TIFF=OFF,tiff," +PACKAGECONFIG[v4l] = "-DWITH_V4L=ON,-DWITH_V4L=OFF,v4l-utils," + +inherit pkgconfig cmake + +inherit ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'distutils3-base', '', d)} +inherit ${@bb.utils.contains('PACKAGECONFIG', 'python2', 'distutils-base', '', d)} + +export PYTHON_CSPEC="-I${STAGING_INCDIR}/${PYTHON_DIR}" +export PYTHON="${STAGING_BINDIR_NATIVE}/${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3', 'python', d)}" +export ORACLE_JAVA_HOME="${STAGING_DIR_NATIVE}/usr/bin/java" +export JAVA_HOME="${STAGING_DIR_NATIVE}/usr/lib/jvm/openjdk-8-native" +export ANT_DIR="${STAGING_DIR_NATIVE}/usr/share/ant/" + +TARGET_CC_ARCH += "-I${S}/include " + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'samples', '${PN}-samples', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'oracle-java', '${PN}-java', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'java', '${PN}-java', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python-${BPN}', '', d)} \ + ${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-${BPN}', '', d)} \ + ${PN}-apps" + +python populate_packages_prepend () { + cv_libdir = d.expand('${libdir}') + do_split_packages(d, cv_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev', allow_links=True) + do_split_packages(d, cv_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev') + do_split_packages(d, cv_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'OpenCV %s development package', extra_depends='${PN}-dev') + do_split_packages(d, cv_libdir, '^lib(.*)\.so\.*', 'lib%s', 'OpenCV %s library', extra_depends='', allow_links=True) + + pn = d.getVar('PN') + metapkg = pn + '-dev' + d.setVar('ALLOW_EMPTY_' + metapkg, "1") + blacklist = [ metapkg ] + metapkg_rdepends = [ ] + packages = d.getVar('PACKAGES').split() + for pkg in packages[1:]: + if not pkg in blacklist and not pkg in metapkg_rdepends and pkg.endswith('-dev'): + metapkg_rdepends.append(pkg) + d.setVar('RRECOMMENDS_' + metapkg, ' '.join(metapkg_rdepends)) + + metapkg = pn + d.setVar('ALLOW_EMPTY_' + metapkg, "1") + blacklist = [ metapkg, "libopencv-ts" ] + metapkg_rdepends = [ ] + for pkg in packages[1:]: + if not pkg in blacklist and not pkg in metapkg_rdepends and not pkg.endswith('-dev') and not pkg.endswith('-dbg') and not pkg.endswith('-doc') and not pkg.endswith('-locale') and not pkg.endswith('-staticdev'): + metapkg_rdepends.append(pkg) + d.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends)) +} + +PACKAGES_DYNAMIC += "^libopencv-.*" + +FILES_${PN} = "" +FILES_${PN}-dbg += "${datadir}/OpenCV/java/.debug/* ${datadir}/OpenCV/samples/bin/.debug/*" +FILES_${PN}-dev = "${includedir} ${libdir}/pkgconfig ${libdir}/cmake/opencv4/*.cmake" +FILES_${PN}-staticdev += "${libdir}/opencv4/3rdparty/*.a" +FILES_${PN}-apps = "${bindir}/* ${datadir}/opencv4 ${datadir}/licenses" +FILES_${PN}-java = "${datadir}/OpenCV/java" +FILES_${PN}-samples = "${datadir}/opencv4/samples/" + +INSANE_SKIP_${PN}-java = "libdir" +INSANE_SKIP_${PN}-dbg = "libdir" + +ALLOW_EMPTY_${PN} = "1" + +SUMMARY_python-opencv = "Python bindings to opencv" +FILES_python-opencv = "${PYTHON_SITEPACKAGES_DIR}/*" +RDEPENDS_python-opencv = "python-core python-numpy" + +SUMMARY_python3-opencv = "Python bindings to opencv" +FILES_python3-opencv = "${PYTHON_SITEPACKAGES_DIR}/*" +RDEPENDS_python3-opencv = "python3-core python3-numpy" + +RDEPENDS_${PN}-apps = "bash" + +do_compile_prepend() { + # remove the build host info to improve reproducibility + if [ -f ${WORKDIR}/build/modules/core/version_string.inc ]; then + sed -i "s#${WORKDIR}#/workdir#g" ${WORKDIR}/build/modules/core/version_string.inc + fi +} + +do_install_append() { + # Move Python files into correct library folder (for multilib build) + if [ "$libdir" != "/usr/lib" -a -d ${D}/usr/lib ]; then + mv ${D}/usr/lib/* ${D}/${libdir}/ + rm -rf ${D}/usr/lib + fi +} + +TOOLCHAIN = "gcc" diff --git a/meta-digi-dey/recipes-support/opencv/opencv_4.2.0.imx.bb b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb similarity index 80% rename from meta-digi-dey/recipes-support/opencv/opencv_4.2.0.imx.bb rename to meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb index c1acf3c61..9a35573fd 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv_4.2.0.imx.bb +++ b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb @@ -1,10 +1,10 @@ -require recipes-support/opencv/opencv_4.1.0.bb +require opencv_4.4.0.bb -LIC_FILES_CHKSUM = "file://LICENSE;md5=014935351b2df6f3094bf25de8d50ed8" +LIC_FILES_CHKSUM = "file://LICENSE;md5=19598330421859a6dd353a4318091ac7" -SRCREV_opencv = "7187501b6bc89e111f4dd5694b58151ca98b7d9a" -SRCREV_contrib = "65abc7090dedc84bbedec4dfd143f0340e52114f" -SRCREV_extra = "322b475403899abc2411c4fbf68318afa77d3191" +SRCREV_opencv = "3dbe28a38b6f7d1e24572e2533044adfe4287a40" +SRCREV_contrib = "5fae4082cc493efa5cb7a7486f9e009618a5198b" +SRCREV_extra = "65796edadce27ed013e3deeedb3c081ff527e4ec" SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59" SRC_URI[tinydnn.sha256sum] = "e2c61ce8c5debaa644121179e9dbdcf83f497f39de853f8dd5175846505aa18b" SRCREV_FORMAT_append = "_extra" @@ -14,16 +14,15 @@ SRC_URI_remove = " \ file://0002-Make-opencv-ts-create-share-library-intead-of-static.patch \ " OPENCV_SRC ?= "git://source.codeaurora.org/external/imx/opencv-imx.git;protocol=https" -SRCBRANCH = "4.2.0_imx" +SRCBRANCH = "4.4.0_imx" SRC_URI =+ "${OPENCV_SRC};branch=${SRCBRANCH};name=opencv" SRC_URI += " \ git://github.com/opencv/opencv_extra.git;destsuffix=extra;name=extra \ https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz;destsuffix=git/3rdparty/tinydnn/tiny-dnn-1.0.0a3;name=tinydnn;unpack=false \ - file://uselocalxfeatures.patch;patchdir=../contrib/ \ file://OpenCV_DNN_examples.patch \ file://0001-Add-smaller-version-of-download_models.py.patch;patchdir=../extra \ " -PV = "4.2.0.imx" +PV = "4.4.0.imx" PACKAGECONFIG_remove = "eigen" PACKAGECONFIG_append_mx8 = " dnn text" @@ -32,6 +31,7 @@ PACKAGECONFIG_OPENCL_mx8 = "opencl" PACKAGECONFIG_OPENCL_mx8dxl = "" PACKAGECONFIG_OPENCL_mx8phantomdxl = "" PACKAGECONFIG_OPENCL_mx8mm = "" +PACKAGECONFIG_OPENCL_mx8mnlite = "" PACKAGECONFIG_append = " ${PACKAGECONFIG_OPENCL}" PACKAGECONFIG[openvx] = "-DWITH_OPENVX=ON -DOPENVX_ROOT=${STAGING_LIBDIR} -DOPENVX_LIB_CANDIDATES='OpenVX;OpenVXU',-DWITH_OPENVX=OFF,virtual/libopenvx," @@ -41,9 +41,6 @@ PACKAGECONFIG[test] = "-DBUILD_TESTS=ON -DINSTALL_TESTS=ON -DOPENCV_TEST_DATA_PA do_unpack_extra_append() { mkdir -p ${S}/3rdparty/tinydnn/ tar xzf ${WORKDIR}/v1.0.0a3.tar.gz -C ${S}/3rdparty/tinydnn/ - # Workaround to fix build issue - cp ${WORKDIR}/vgg/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src - cp ${WORKDIR}/boostdesc/*.i ${WORKDIR}/contrib/modules/xfeatures2d/src } do_install_append() { From e9c4a09bf0c26a4b2f12606e3bbdda81e0bde1b4 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Mon, 1 Feb 2021 09:46:50 +0100 Subject: [PATCH 36/54] recipes-security: optee-imx: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../optee-imx/optee-client.imx.inc | 38 +++++- .../optee-imx/optee-client_3.10.0.imx.bb | 2 +- .../optee-imx/optee-os.imx.inc | 112 +++++++++++++----- .../optee-imx/optee-os_3.10.0.imx.bb | 4 +- .../optee-imx/optee-test.imx.inc | 48 ++++++-- .../optee-imx/optee-test_3.10.0.imx.bb | 4 +- 6 files changed, 156 insertions(+), 52 deletions(-) diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-client.imx.inc b/meta-digi-arm/recipes-security/optee-imx/optee-client.imx.inc index eeb903c80..7d9f8d2d3 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-client.imx.inc +++ b/meta-digi-arm/recipes-security/optee-imx/optee-client.imx.inc @@ -1,14 +1,34 @@ -# Copyright (C) 2019-2020 NXP +# Copyright (C) 2017-2020 NXP -require recipes-security/optee-imx/optee-client_3.2.0.imx.bb +SUMMARY = "OPTEE Client libs" +HOMEPAGE = "http://www.optee.org/" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=69663ab153298557a59c67a60a743e5b" -SRC_URI_remove = "file://0001-libteec-refactor-_dprintf.patch" +inherit pythonnative systemd +OPTEE_CLIENT_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-client.git;protocol=https" +SRC_URI = "${OPTEE_CLIENT_SRC};branch=${SRCBRANCH}" + +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +SRC_URI_append = " file://tee-supplicant.service" + +S = "${WORKDIR}/git" B = "${WORKDIR}/build" -EXTRA_OEMAKE_remove = "CFG_SECURE_DATA_PATH=y" +SYSTEMD_SERVICE_${PN} = "tee-supplicant.service" + EXTRA_OEMAKE += "O=${B}" +do_compile () { + if [ ${DEFAULTTUNE} = "aarch64" ]; then + oe_runmake -C ${S} ARCH=arm64 + else + oe_runmake -C ${S} ARCH=arm + fi +} + do_install() { oe_runmake -C ${S} install @@ -26,3 +46,13 @@ do_install() { install -D -p -m0644 ${WORKDIR}/tee-supplicant.service ${D}${systemd_system_unitdir}/tee-supplicant.service } + +PACKAGES += "tee-supplicant" +FILES_${PN} += "${libdir}/* ${includedir}/*" +FILES_tee-supplicant += "${bindir}/tee-supplicant" + +INSANE_SKIP_${PN} = "ldflags dev-elf" +INSANE_SKIP_${PN}-dev = "ldflags dev-elf" +INSANE_SKIP_tee-supplicant = "ldflags" + +COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-client_3.10.0.imx.bb b/meta-digi-arm/recipes-security/optee-imx/optee-client_3.10.0.imx.bb index 64145d5cf..fabd66b7d 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-client_3.10.0.imx.bb +++ b/meta-digi-arm/recipes-security/optee-imx/optee-client_3.10.0.imx.bb @@ -1,6 +1,6 @@ # Copyright (C) 2020 NXP require optee-client.imx.inc -SRCBRANCH = "imx_5.4.47_2.2.0" +SRCBRANCH = "imx_5.4.70_2.3.0" SRCREV = "2a77cf88d956c34cb4a1c191bea6113e327f5fe0" diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-os.imx.inc b/meta-digi-arm/recipes-security/optee-imx/optee-os.imx.inc index 3014ec07f..8bb44fb62 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-os.imx.inc +++ b/meta-digi-arm/recipes-security/optee-imx/optee-os.imx.inc @@ -1,43 +1,57 @@ -# Copyright (C) 2019-2020 NXP - -require recipes-security/optee-imx/optee-os_3.2.0.imx.bb +# Copyright (C) 2017-2020 NXP +SUMMARY = "OPTEE OS" +DESCRIPTION = "OPTEE OS" +HOMEPAGE = "http://www.optee.org/" +LICENSE = "BSD" LIC_FILES_CHKSUM = "file://LICENSE;md5=c1f21c4f72f372ef38a5a4aee55ec173" -inherit python3native -DEPENDS_remove = "python-pycrypto-native" -DEPENDS_append = " python3-pycrypto-native python3-pyelftools-native" +inherit deploy python3native autotools +DEPENDS = "python3-pycrypto-native python3-pyelftools-native u-boot-mkimage-native" -# The recipe uses Machine overrides variable -# to select the suitable OP-TEE Platform Flavor. -# The reason is that from an OP-TEE point of view there -# are no differences between for example a imx8mnddr4evk -# and a imx8mnevk MACHINE. In this example, the PLATFORM_FLAVOR -# defined is imx8mnevk, the other MACHINE derivatives -# are just using the original one. -PLATFORM_FLAVOR_mx8mn = "mx8mnevk" -PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek" -PLATFORM_FLAVOR_mx8mp = "mx8mpevk" -PLATFORM_FLAVOR_mx8dx = "mx8dxmek" -PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk" -PLATFORM_FLAVOR_mx8phantomdxl = "mx8qxpmek" +OPTEE_OS_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-os.git;protocol=https" +SRC_URI = "${OPTEE_OS_SRC};branch=${SRCBRANCH}" + +S = "${WORKDIR}/git" +B = "${WORKDIR}/build.${PLATFORM_FLAVOR}" + +# The platform flavor corresponds to the Yocto machine without the leading 'i'. +PLATFORM_FLAVOR = "${@d.getVar('MACHINE')[1:]}" +PLATFORM_FLAVOR_imx6qpdlsolox = "mx6qsabresd" +PLATFORM_FLAVOR_imx6ul7d = "mx6ulevk" +PLATFORM_FLAVOR_imx6ull14x14evk = "mx6ullevk" +PLATFORM_FLAVOR_imx6ull9x9evk = "mx6ullevk" +PLATFORM_FLAVOR_imx6ulz14x14evk = "mx6ulzevk" +PLATFORM_FLAVOR_mx8mm = "mx8mmevk" +PLATFORM_FLAVOR_mx8mn = "mx8mnevk" +PLATFORM_FLAVOR_mx8mnlite = "mx8mnevk" +PLATFORM_FLAVOR_mx8qxp = "mx8qxpmek" +PLATFORM_FLAVOR_mx8mp = "mx8mpevk" +PLATFORM_FLAVOR_mx8dx = "mx8dxmek" +PLATFORM_FLAVOR_mx8dxl = "mx8dxlevk" +PLATFORM_FLAVOR_mx8phantomdxl = "mx8qxpmek" OPTEE_CORE_LOG_LEVEL ?= "1" OPTEE_TA_LOG_LEVEL ?= "0" -EXTRA_OEMAKE_remove = "NOWERROR=1 \ - CFG_SECURE_DATA_PATH=y \ - CFG_TEE_SDP_MEM_BASE=0xCC000000 \ - CFG_TEE_SDP_MEM_SIZE=0x02000000 \ - CFG_TEE_SDP_NONCACHE=y \ - " +OPTEE_ARCH ?= "arm32" +OPTEE_ARCH_armv7a = "arm32" +OPTEE_ARCH_aarch64 = "arm64" -EXTRA_OEMAKE += "CFG_WERROR=y \ - CFG_TEE_CORE_LOG_LEVEL=${OPTEE_CORE_LOG_LEVEL} \ - CFG_TEE_TA_LOG_LEVEL=${OPTEE_TA_LOG_LEVEL} \ - CFG_NXPCRYPT=y \ - CFG_GEN_DEK_BLOB=y \ - " +# Optee-os can be built for 32 bits and 64 bits at the same time +# as long as the compilers are correctly defined. +# For 64bits, CROSS_COMPILE64 must be set +# When defining CROSS_COMPILE and CROSS_COMPILE64, we assure that +# any 32 or 64 bits builds will pass +EXTRA_OEMAKE = "PLATFORM=imx PLATFORM_FLAVOR=${PLATFORM_FLAVOR} \ + CROSS_COMPILE=${HOST_PREFIX} \ + CROSS_COMPILE64=${HOST_PREFIX} \ + LDFLAGS= \ + O=${B} \ + CFG_WERROR=y \ + CFG_TEE_CORE_LOG_LEVEL=${OPTEE_CORE_LOG_LEVEL} \ + CFG_TEE_TA_LOG_LEVEL=${OPTEE_TA_LOG_LEVEL} \ +" do_compile () { unset LDFLAGS @@ -45,3 +59,39 @@ do_compile () { oe_runmake -C ${S} all } +do_deploy () { + install -d ${DEPLOYDIR} + ${TARGET_PREFIX}objcopy -O binary ${B}/core/tee.elf ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin + + if [ "${OPTEE_ARCH}" != "arm64" ]; then + IMX_LOAD_ADDR=`cat ${B}/core/tee-init_load_addr.txt` && \ + uboot-mkimage -A arm -O linux -C none -a ${IMX_LOAD_ADDR} -e ${IMX_LOAD_ADDR} \ + -d ${DEPLOYDIR}/tee.${PLATFORM_FLAVOR}.bin ${DEPLOYDIR}/uTee-${OPTEE_BIN_EXT} + fi + + cd ${DEPLOYDIR} + ln -sf tee.${PLATFORM_FLAVOR}.bin tee.bin + cd - +} + +do_install () { + install -d ${D}${nonarch_base_libdir}/firmware/ + install -m 644 ${B}/core/*.bin ${D}${nonarch_base_libdir}/firmware/ + + # Install the TA devkit + install -d ${D}/usr/include/optee/export-user_ta_${OPTEE_ARCH}/ + + for f in ${B}/export-ta_${OPTEE_ARCH}/*; do + cp -aR $f ${D}/usr/include/optee/export-user_ta_${OPTEE_ARCH}/ + done +} + +addtask deploy after do_compile before do_install + + +FILES_${PN} = "${nonarch_base_libdir}/firmware/" +FILES_${PN}-staticdev = "/usr/include/optee/" +RDEPENDS_${PN}-dev += "${PN}-staticdev" + +PACKAGE_ARCH = "${MACHINE_ARCH}" +COMPATIBLE_MACHINE = "(imx)" diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-os_3.10.0.imx.bb b/meta-digi-arm/recipes-security/optee-imx/optee-os_3.10.0.imx.bb index 03e83340c..21979620b 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-os_3.10.0.imx.bb +++ b/meta-digi-arm/recipes-security/optee-imx/optee-os_3.10.0.imx.bb @@ -3,8 +3,8 @@ require optee-os.imx.inc DEPENDS_append = " python3-pycryptodomex-native" -SRCBRANCH = "imx_5.4.47_2.2.0" -SRCREV = "b3914e547eaf90684b5630921d609126634ce64b" +SRCBRANCH = "imx_5.4.70_2.3.0" +SRCREV = "a991c90475bb1c715651e5fe27f7f32cbe61aef9" # tee-init_load_addr.txt has been remove in lates optee-os version. # to keep backward compatibility with existing optee-os recipe. diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-test.imx.inc b/meta-digi-arm/recipes-security/optee-imx/optee-test.imx.inc index 37c0e3446..10cd63809 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-test.imx.inc +++ b/meta-digi-arm/recipes-security/optee-imx/optee-test.imx.inc @@ -1,18 +1,23 @@ -# Copyright (C) 2019-2020 NXP +# Copyright (C) 2017-2020 NXP -require recipes-security/optee-imx/optee-test_3.2.0.imx.bb +SUMMARY = "OPTEE test" +HOMEPAGE = "http://www.optee.org/" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE.md;md5=daa2bcccc666345ab8940aab1315a4fa" inherit python3native -DEPENDS_remove = "python-pycrypto-native" -DEPENDS_append = " python3-pycrypto-native" -SRC_URI_remove = "file://0001-regression-4011-correct-potential-overflow.patch \ - file://0001-xtest-prevent-unexpected-build-warning-with-strncpy.patch \ - file://0003-sock_server-fix-compilation-against-musl-sys-errno.h.patch \ - file://0004-build-ignore-declaration-after-statement-warnings.patch \ - file://0005-benchmark_1000-fix-compilation-against-musl-uint.patch \ - file://0006-regression_8100-use-null-terminated-strings-with-fil.patch \ - " +DEPENDS = "optee-os optee-client python3-pycrypto-native openssl" + +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +OPTEE_TEST_SRC ?= "git://source.codeaurora.org/external/imx/imx-optee-test.git;protocol=https" + +SRC_URI = "${OPTEE_TEST_SRC};branch=${SRCBRANCH} \ +" + +S = "${WORKDIR}/git" B = "${WORKDIR}/build" TA_DEV_KIT_DIR_aarch64 = "${STAGING_INCDIR}/optee/export-user_ta_arm64/" @@ -30,8 +35,23 @@ EXTRA_OEMAKE = " \ OPTEE_OPENSSL_EXPORT=${STAGING_INCDIR}/ \ -C ${S} O=${B} \ " -do_compile_prepend () { + +do_compile () { export CXXFLAGS="${CXXFLAGS} --sysroot=${STAGING_DIR_HOST}" + + if [ ${DEFAULTTUNE} = "aarch64" ];then + export TA_DEV_KIT_DIR=${STAGING_INCDIR}/optee/export-user_ta_arm64/ + export ARCH=arm64 + else + export TA_DEV_KIT_DIR=${STAGING_INCDIR}/optee/export-user_ta_arm32/ + export ARCH=arm + fi + export OPTEE_CLIENT_EXPORT=${STAGING_DIR_HOST}/usr + export CROSS_COMPILE_HOST=${HOST_PREFIX} + export CROSS_COMPILE_TA=${HOST_PREFIX} + export CROSS_COMPILE=${HOST_PREFIX} + export OPTEE_OPENSSL_EXPORT=${STAGING_INCDIR}/ + oe_runmake V=1 } do_install () { @@ -43,3 +63,7 @@ do_install () { install -m 444 $name ${D}/lib/optee_armtz/ done } + +FILES_${PN} = "/usr/bin/ /lib*/optee_armtz/" + +COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" diff --git a/meta-digi-arm/recipes-security/optee-imx/optee-test_3.10.0.imx.bb b/meta-digi-arm/recipes-security/optee-imx/optee-test_3.10.0.imx.bb index e6abb2431..66867f26e 100644 --- a/meta-digi-arm/recipes-security/optee-imx/optee-test_3.10.0.imx.bb +++ b/meta-digi-arm/recipes-security/optee-imx/optee-test_3.10.0.imx.bb @@ -3,8 +3,8 @@ require optee-test.imx.inc DEPENDS_append = " python3-pycryptodomex-native" -SRCBRANCH = "imx_5.4.47_2.2.0" -SRCREV = "30efcbeaf8864d0f2a5c4be593a5411001fab31b" +SRCBRANCH = "imx_5.4.70_2.3.0" +SRCREV = "0c998f42a3fb87b9f2929955cf4b0116cc515091" do_compile_prepend () { export CFLAGS="${CFLAGS} --sysroot=${STAGING_DIR_HOST}" From bad803d09e06f8116fa0a5463dea5f58122de177 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Mon, 1 Feb 2021 10:10:24 +0100 Subject: [PATCH 37/54] recipes-graphics: drm: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- ...low-explicit-enabling-of-cunit-tests.patch | 54 ------- ...ibdrm-vivante-to-the-meson-meta-data.patch | 140 ++++++++++++++++++ .../drm/libdrm/fix_O_CLOEXEC_undeclared.patch | 32 ---- .../drm/libdrm/installtests.patch | 23 --- .../drm/libdrm/musl-ioctl.patch | 35 +++++ .../drm/libdrm_2.4.102.imx.bb | 9 ++ .../recipes-graphics/drm/libdrm_2.4.99.imx.bb | 75 +++++++++- 7 files changed, 255 insertions(+), 113 deletions(-) delete mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch create mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch delete mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch delete mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm/installtests.patch create mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm/musl-ioctl.patch create mode 100644 meta-digi-dey/recipes-graphics/drm/libdrm_2.4.102.imx.bb diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch b/meta-digi-dey/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch deleted file mode 100644 index fa7b218e0..000000000 --- a/meta-digi-dey/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 9be904a70e6b7e6b3cc4e1b270bca02d14a4179b Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Mon, 5 Sep 2016 14:41:37 +0300 -Subject: [PATCH] configure.ac: Allow explicit enabling of cunit tests - -Add --with-cunit to make it easier to do reproducible builds. Default -is still to probe cunit and build opportunistically. - -Signed-off-by: Jussi Kukkonen -Upstream-Status: Submitted [mailing list] - ---- - configure.ac | 14 ++++++++++++-- - 1 file changed, 12 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 1341f51..bef46e0 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -168,6 +168,12 @@ AC_ARG_ENABLE(install-test-programs, - [Install test programs (default: no)]), - [INSTALL_TESTS=$enableval], [INSTALL_TESTS=no]) - -+AC_ARG_WITH([cunit], -+ [AS_HELP_STRING([--with-cunit], -+ [Build tests that use cunit (default: auto)])], -+ [], -+ [with_cunit=auto]) -+ - dnl =========================================================================== - dnl check compiler flags - AC_DEFUN([LIBDRM_CC_TRY_FLAG], [ -@@ -416,7 +422,7 @@ else - AC_DEFINE(HAVE_RADEON, 0) - fi - --if test "x$AMDGPU" != xno; then -+if test "x$with_cunit" != xno -a "x$AMDGPU" != xno; then - # Detect cunit library - PKG_CHECK_MODULES([CUNIT], [cunit >= 2.1], [have_cunit=yes], [have_cunit=no]) - # If pkg-config does not find cunit, check it using AC_CHECK_LIB. We -@@ -441,7 +447,11 @@ if test "x$AMDGPU" = xyes; then - AC_DEFINE(HAVE_AMDGPU, 1, [Have amdgpu support]) - - if test "x$have_cunit" = "xno"; then -- AC_MSG_WARN([Could not find cunit library. Disabling amdgpu tests]) -+ if test "x$with_cunit" = "xyes"; then -+ AC_MSG_ERROR([Could not find cunit library but --with-cunit was given]) -+ elif test "x$with_cunit" = "xauto"; then -+ AC_MSG_WARN([Could not find cunit library. Disabling amdgpu tests]) -+ fi - fi - else - AC_DEFINE(HAVE_AMDGPU, 0) diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch b/meta-digi-dey/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch new file mode 100644 index 000000000..ae6b0ab7d --- /dev/null +++ b/meta-digi-dey/recipes-graphics/drm/libdrm/0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch @@ -0,0 +1,140 @@ +From 45f48f8a5de59c04b0510c23853772bc970f411e Mon Sep 17 00:00:00 2001 +From: Max Krummenacher +Date: Thu, 9 Jan 2020 01:01:35 +0000 +Subject: [PATCH] meson: add libdrm-vivante to the meson meta data + +Upstream libdrm added the option to use meason as the buildsystem. +Integrate Vivante into the relevant meson build information. + +Upstream-Status: Pending + +Signed-off-by: Max Krummenacher +--- + meson.build | 14 +++++++++++++ + meson_options.txt | 7 +++++++ + vivante/meson.build | 50 +++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 71 insertions(+) + create mode 100644 vivante/meson.build + +diff --git a/meson.build b/meson.build +index e292554a..f4740634 100644 +--- a/meson.build ++++ b/meson.build +@@ -157,6 +157,15 @@ if _vc4 != 'false' + with_vc4 = _vc4 == 'true' or ['arm', 'aarch64'].contains(host_machine.cpu_family()) + endif + ++with_vivante = false ++_vivante = get_option('vivante') ++if _vivante == 'true' ++ if not with_atomics ++ error('libdrm_vivante requires atomics.') ++ endif ++ with_vivante = true ++endif ++ + # XXX: Apparently only freebsd and dragonfly bsd actually need this (and + # gnu/kfreebsd), not openbsd and netbsd + with_libkms = false +@@ -312,6 +321,7 @@ install_headers( + 'include/drm/savage_drm.h', 'include/drm/sis_drm.h', + 'include/drm/tegra_drm.h', 'include/drm/vc4_drm.h', + 'include/drm/via_drm.h', 'include/drm/virtgpu_drm.h', ++ 'include/drm/vivante_drm.h', + subdir : 'libdrm', + ) + if with_vmwgfx +@@ -362,6 +372,9 @@ endif + if with_etnaviv + subdir('etnaviv') + endif ++if with_vivante ++ subdir('vivante') ++endif + if with_man_pages + subdir('man') + endif +@@ -382,5 +395,6 @@ message(' EXYNOS API @0@'.format(with_exynos)) + message(' Freedreno API @0@ (kgsl: @1@)'.format(with_freedreno, with_freedreno_kgsl)) + message(' Tegra API @0@'.format(with_tegra)) + message(' VC4 API @0@'.format(with_vc4)) ++message(' Vivante API @0@'.format(with_etnaviv)) + message(' Etnaviv API @0@'.format(with_etnaviv)) + message('') +diff --git a/meson_options.txt b/meson_options.txt +index 8af33f1c..dc69563d 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -95,6 +95,13 @@ option( + choices : ['true', 'false', 'auto'], + description : '''Enable support for vc4's KMS API.''', + ) ++option( ++ 'vivante', ++ type : 'combo', ++ value : 'false', ++ choices : ['true', 'false', 'auto'], ++ description : '''Enable support for vivante's propriatary experimental KMS API.''', ++) + option( + 'etnaviv', + type : 'combo', +diff --git a/vivante/meson.build b/vivante/meson.build +new file mode 100644 +index 00000000..f6adb598 +--- /dev/null ++++ b/vivante/meson.build +@@ -0,0 +1,50 @@ ++# Copyright © 2017-2018 Intel Corporation ++ ++# Permission is hereby granted, free of charge, to any person obtaining a copy ++# of this software and associated documentation files (the "Software"), to deal ++# in the Software without restriction, including without limitation the rights ++# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++# copies of the Software, and to permit persons to whom the Software is ++# furnished to do so, subject to the following conditions: ++ ++# The above copyright notice and this permission notice shall be included in ++# all copies or substantial portions of the Software. ++ ++# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++# SOFTWARE. ++ ++ ++libdrm_vivante = shared_library( ++ 'drm_vivante', ++ [ ++ files( ++ 'vivante_bo.c', ++ ), ++ config_file ++ ], ++ include_directories : [inc_root, inc_drm], ++ link_with : libdrm, ++ c_args : libdrm_c_args, ++ dependencies : [dep_pthread_stubs, dep_rt, dep_atomic_ops], ++ version : '1.0.0', ++ install : true, ++) ++ ++pkg.generate( ++ name : 'libdrm_vivante', ++ libraries : libdrm_vivante, ++ subdirs : ['.', 'libdrm'], ++ version : meson.project_version(), ++ requires_private : 'libdrm', ++ description : 'Userspace interface to Vivante kernel DRM services', ++) ++ ++ext_libdrm_vivante = declare_dependency( ++ link_with : [libdrm, libdrm_vivante], ++ include_directories : [inc_drm, include_directories('.')], ++) +-- +2.20.1 + diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch b/meta-digi-dey/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch deleted file mode 100644 index ab9729b74..000000000 --- a/meta-digi-dey/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 860a227277ab425b0377875adc7ff5bdf3fa206e Mon Sep 17 00:00:00 2001 -From: "Maxin B. John" -Date: Fri, 13 Oct 2017 10:52:35 -0500 -Subject: [PATCH] drmdevice.c: define _GNU_SOURCE - -Include config.h to fix this build error with uclibc: - -libdrm-2.4.66/tests/drmdevice.c: In function 'main': -libdrm-2.4.66/tests/drmdevice.c:96:60: error: -'O_CLOEXEC' undeclared (first use in this function) -fd = open(devices[i]->nodes[j],O_RDONLY | O_CLOEXEC, 0); - -Upstream-Status: Pending - -Signed-off-by: Maxin B. John - ---- - tests/drmdevice.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tests/drmdevice.c b/tests/drmdevice.c -index 9dd5098..78fcc39 100644 ---- a/tests/drmdevice.c -+++ b/tests/drmdevice.c -@@ -21,6 +21,7 @@ - * - */ - -+#include - #include - #include - #include diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm/installtests.patch b/meta-digi-dey/recipes-graphics/drm/libdrm/installtests.patch deleted file mode 100644 index b5456dec2..000000000 --- a/meta-digi-dey/recipes-graphics/drm/libdrm/installtests.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 14e42311309712228588fc9adf612b2ab3f0097f Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Tue, 21 Feb 2017 14:37:52 +0200 -Subject: [PATCH] tests: also install test apps - -Upstream-Status: Inappropriate [configuration] - -Signed-off-by: Yu Ke -Signed-off-by: Jussi Kukkonen - ---- - tests/Makefile.am | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 0355a92..b4882cd 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -45,3 +45,4 @@ TESTS = \ - check_PROGRAMS = \ - $(TESTS) \ - drmdevice -+bin_PROGRAMS = $(check_PROGRAMS) diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm/musl-ioctl.patch b/meta-digi-dey/recipes-graphics/drm/libdrm/musl-ioctl.patch new file mode 100644 index 000000000..e3d6c5b85 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/drm/libdrm/musl-ioctl.patch @@ -0,0 +1,35 @@ +Upstream-Status: Submitted +Signed-off-by: Ross Burton + +From 46c0fd6c827a8cb4d04e067bf04fab579ac4712e Mon Sep 17 00:00:00 2001 +From: Ross Burton +Date: Mon, 18 Jun 2018 15:07:03 +0100 +Subject: [PATCH] tests/nouveau/threaded: adapt ioctl signature + +POSIX says ioctl() has the signature (int, int, ...) but glibc has decided to +use (int, unsigned long int, ...) instead. + +Use a #ifdef to adapt the replacement function as appropriate. +--- + tests/nouveau/threaded.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/tests/nouveau/threaded.c b/tests/nouveau/threaded.c +index 3669bcd3..e1c27c01 100644 +--- a/tests/nouveau/threaded.c ++++ b/tests/nouveau/threaded.c +@@ -36,7 +36,11 @@ static int failed; + + static int import_fd; + ++#ifdef __GLIBC__ + int ioctl(int fd, unsigned long request, ...) ++#else ++int ioctl(int fd, int request, ...) ++#endif + { + va_list va; + int ret; +-- +2.11.0 + diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.102.imx.bb b/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.102.imx.bb new file mode 100644 index 000000000..e3dd75b42 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.102.imx.bb @@ -0,0 +1,9 @@ +require libdrm_2.4.99.imx.bb + +FILESEXTRAPATHS_prepend := "${THISDIR}/${BPN}:" + +LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" +IMX_LIBDRM_BRANCH = "libdrm-imx-2.4.102" +SRCREV = "f525ae649cd6e81e5d4e459799b0f7a120c4e174" + +SRC_URI_remove = "file://musl-ioctl.patch" diff --git a/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.99.imx.bb b/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.99.imx.bb index da2ea2944..dc2aa8a90 100644 --- a/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.99.imx.bb +++ b/meta-digi-dey/recipes-graphics/drm/libdrm_2.4.99.imx.bb @@ -1,6 +1,73 @@ -require recipes-graphics/drm/libdrm_2.4.91.imx.bb - +SUMMARY = "Userspace interface to the kernel DRM services" +DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ +stands for \"Direct Rendering Manager\", which is the kernel portion of the \ +\"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ +accelerated OpenGL drivers." +HOMEPAGE = "http://dri.freedesktop.org" +SECTION = "x11/base" +LICENSE = "MIT" LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" -IMX_LIBDRM_BRANCH = "libdrm-imx-2.4.99" -SRC_URI_remove = "file://installtests.patch" +PROVIDES = "drm" +DEPENDS = "libpthread-stubs" + +IMX_LIBDRM_SRC ?= "git://source.codeaurora.org/external/imx/libdrm-imx.git;protocol=https;nobranch=1" +IMX_LIBDRM_BRANCH ?= "libdrm-imx-2.4.99" +SRC_URI = "${IMX_LIBDRM_SRC};branch=${IMX_LIBDRM_BRANCH} \ + file://musl-ioctl.patch \ + file://0001-meson-add-libdrm-vivante-to-the-meson-meta-data.patch " SRCREV = "f421c9c8c4b8fe48d9e6ef43910e98569c94a4b2" +S = "${WORKDIR}/git" + +DEFAULT_PREFERENCE = "-1" + +inherit meson pkgconfig manpages + +PACKAGECONFIG ??= "libkms intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs" +PACKAGECONFIG[libkms] = "-Dlibkms=true,-Dlibkms=false" +PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess" +PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false" +PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false" +PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false" +PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false" +PACKAGECONFIG[omap] = "-Domap=true,-Domap=false" +PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false" +PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false" +PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false" +PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false" +PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false" +PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false" +PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind" +PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false" +PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false" +PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev" +PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native" + +ALLOW_EMPTY_${PN}-drivers = "1" +PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ + ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ + ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +FILES_${PN}-tests = "${bindir}/*" +FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" +FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" +FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" +FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" +FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" +FILES_${PN}-kms = "${libdir}/libkms*.so.*" +FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" +FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.* ${datadir}/${PN}/amdgpu.ids" +FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" + +BBCLASSEXTEND = "native nativesdk" + +PACKAGES_prepend_imxgpu = "${PN}-vivante " +RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante" +FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*" +PACKAGECONFIG_append_imxgpu = " vivante" +PACKAGECONFIG[vivante] = "-Dvivante=true,-Dvivante=false" + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" From 98d760370c53890d1e911439cf8033e6fea712ed Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Mon, 1 Feb 2021 15:04:41 +0100 Subject: [PATCH 38/54] recipes-qt: qt5: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../qt5/gstreamer1.0-plugins-good-qt_1.16.imx.bb | 6 ++---- meta-digi-dey/recipes-qt/qt5/qtbase_%.bbappend | 10 +++++----- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/meta-digi-dey/recipes-qt/qt5/gstreamer1.0-plugins-good-qt_1.16.imx.bb b/meta-digi-dey/recipes-qt/qt5/gstreamer1.0-plugins-good-qt_1.16.imx.bb index 5e0460d9a..e7fd15370 100644 --- a/meta-digi-dey/recipes-qt/qt5/gstreamer1.0-plugins-good-qt_1.16.imx.bb +++ b/meta-digi-dey/recipes-qt/qt5/gstreamer1.0-plugins-good-qt_1.16.imx.bb @@ -7,15 +7,13 @@ DEPENDS += "gstreamer1.0-plugins-base virtual/kernel libcap zlib bzip2 \ " GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-good.git;protocol=https" -SRCBRANCH = "MM_04.05.05_2005_L5.4.24" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRC_URI = " \ ${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} \ file://0001-configure.ac-Add-prefix-to-correct-the-QT_PATH.patch \ " -SRCREV = "fc6d8ccf3bd775517fafb1ce1d9224312d2812d8" - -PV = "1.16.1.imx" +SRCREV = "6005e8199ea19878f269b058ffbbbcaa314472d8" S = "${WORKDIR}/git" diff --git a/meta-digi-dey/recipes-qt/qt5/qtbase_%.bbappend b/meta-digi-dey/recipes-qt/qt5/qtbase_%.bbappend index c1ed65746..9cf35bfa1 100644 --- a/meta-digi-dey/recipes-qt/qt5/qtbase_%.bbappend +++ b/meta-digi-dey/recipes-qt/qt5/qtbase_%.bbappend @@ -16,13 +16,13 @@ SRC_URI_append_imxgpu3d = " \ 'file://0016-Configure-eglfs-with-egl-pkg-config.patch', d)} \ " -PACKAGECONFIG_GL_imxpxp = "gles2" -PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gl', '', d)}" -PACKAGECONFIG_GL_imxgpu3d = "gles2" PACKAGECONFIG_append = " accessibility examples" -PACKAGECONFIG_MX8_GPU = "" -PACKAGECONFIG_MX8_GPU_mx8 = " gbm kms" +PACKAGECONFIG_PLATFORM_IMX_GPU = "" +PACKAGECONFIG_PLATFORM_IMX_GPU_mx8 = "eglfs" +PACKAGECONFIG_PLATFORM_imxgpu2d += "${PACKAGECONFIG_PLATFORM_IMX_GPU}" +PACKAGECONFIG_PLATFORM_imxgpu3d += "${PACKAGECONFIG_PLATFORM_IMX_GPU}" + PACKAGECONFIG_append_imxgpu = " ${PACKAGECONFIG_MX8_GPU}" PACKAGECONFIG_append_ccimx6 = " icu" From dfe8355143c09a664c8774a68eb98cf58ac0a36c Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Mon, 1 Feb 2021 15:58:05 +0100 Subject: [PATCH 39/54] recipes-multimedia: gstreamer: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel https://jira.digi.com/browse/DEL-7406 --- .../gstreamer/gstreamer1.0-plugins-bad_1.16.2.imx.bb | 4 ++-- .../gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb | 2 +- .../gstreamer/gstreamer1.0-plugins-good_1.16.2.imx.bb | 4 ++-- .../recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb | 2 +- ...{imx-gst1.0-plugin_4.5.6.bb => imx-gst1.0-plugin_4.5.7.bb} | 4 ++-- 5 files changed, 8 insertions(+), 8 deletions(-) rename meta-digi-dey/recipes-multimedia/gstreamer/{imx-gst1.0-plugin_4.5.6.bb => imx-gst1.0-plugin_4.5.7.bb} (97%) diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.2.imx.bb b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.2.imx.bb index 6dc268c0d..b2a371159 100644 --- a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.2.imx.bb +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.16.2.imx.bb @@ -7,8 +7,8 @@ FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/${PN}: FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/files:" GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" -SRCREV = "3f6c1ccbabe46a709680b32ce7d5bc521854e08e" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" +SRCREV = "cf7f2d0125424ce0d63ddc7f1eadc9ef71d10db1" SRC_URI = " \ ${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} \ file://configure-allow-to-disable-libssh2.patch \ diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb index 53f5ec87e..79fc67582 100644 --- a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.16.2.imx.bb @@ -5,7 +5,7 @@ FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/${PN}: FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" GST1.0-PLUGINS-BASE_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-base.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRCREV = "3c4aa2a58576d68f6e684efa58609665679c9969" SRC_URI = " \ ${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} \ diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.2.imx.bb b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.2.imx.bb index 78c8a60bc..9e0173925 100644 --- a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.2.imx.bb +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.16.2.imx.bb @@ -4,8 +4,8 @@ FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/${PN}: FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/files:" GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-good.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" -SRCREV = "a1ba15d53aab342dd921261148562f47eeed7d98" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" +SRCREV = "6005e8199ea19878f269b058ffbbbcaa314472d8" SRC_URI = " \ ${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} \ diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb index d3bcaec46..17e2aa0ac 100644 --- a/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb +++ b/meta-digi-dey/recipes-multimedia/gstreamer/gstreamer1.0_1.16.2.imx.bb @@ -4,7 +4,7 @@ FILESEXTRAPATHS_prepend := "${COREBASE}/meta/recipes-multimedia/gstreamer/files: # Use i.MX fork of GST for customizations GST1.0_SRC ?= "gitsm://source.codeaurora.org/external/imx/gstreamer.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRCREV = "8514bc61ccab208a65e387eab9347276a8e770e7" SRC_URI = " \ ${GST1.0_SRC};branch=${SRCBRANCH} \ diff --git a/meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.6.bb b/meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb similarity index 97% rename from meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.6.bb rename to meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb index 7c253c13a..df36f0098 100644 --- a/meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.6.bb +++ b/meta-digi-dey/recipes-multimedia/gstreamer/imx-gst1.0-plugin_4.5.7.bb @@ -21,12 +21,12 @@ LIC_FILES_CHKSUM = "file://COPYING-LGPL-2;md5=5f30f0716dfdd0d91eb439ebec522ec2 \ file://COPYING-LGPL-2.1;md5=fbc093901857fcd118f065f900982c24" IMXGST_SRC ?= "git://source.codeaurora.org/external/imx/imx-gst1.0-plugin.git;protocol=https" -SRCBRANCH = "MM_04.05.06_2008_L5.4.47" +SRCBRANCH = "MM_04.05.07_2011_L5.4.70" SRC_URI = "${IMXGST_SRC};branch=${SRCBRANCH} \ file://0001-imx-gst1.0-plugin-Update-KERNEL_VERSION-check.patch \ " -SRCREV = "a4373418f5884de7d2da63581d3905f0e3a5d842" +SRCREV = "659ec4947d6b1903d26e4ec9e40ae251a659935d" S = "${WORKDIR}/git" From 6d4cb5ab7a5041dcb7cb611e1d66f97c3508efe9 Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 5 Feb 2021 15:25:42 +0100 Subject: [PATCH 40/54] recipes-graphics: wayland: Update recipes to new BSP release imx_5.4.70_2.3.0 Signed-off-by: Mike Engel --- .../wayland/wayland-protocols_1.18.imx.bb | 7 - .../wayland/wayland-protocols_1.20.imx.bb | 26 ++++ ...build-Fix-strndup-detection-on-MinGW.patch | 34 +++++ ...missing-dependencies-on-protocol-hea.patch | 115 +++++++++++++++ ...hardcode-the-path-to-wayland-scanner.patch | 26 ++++ ...-the-native-wayland-scanner-directly.patch | 27 ++++ .../wayland/wayland/run-ptest | 17 +++ .../wayland/wayland_1.18.0.bb | 60 +++++++- .../wayland/weston-init.bbappend | 6 + .../wayland/weston-init/weston.ini | 6 +- ...ntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch | 47 +++++++ ...ovide-a-default-version-that-doesn-t.patch | 54 ++++---- .../weston/dont-use-plane-add-prop.patch | 23 +++ .../recipes-graphics/wayland/weston_9.0.0.bb | 131 ++++++++++++++++++ ...eston_8.0.0.imx.bb => weston_9.0.0.imx.bb} | 6 +- 15 files changed, 546 insertions(+), 39 deletions(-) delete mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.18.imx.bb create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/run-ptest create mode 100644 meta-digi-dey/recipes-graphics/wayland/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/weston/dont-use-plane-add-prop.patch create mode 100644 meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.bb rename meta-digi-dey/recipes-graphics/wayland/{weston_8.0.0.imx.bb => weston_9.0.0.imx.bb} (91%) diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.18.imx.bb b/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.18.imx.bb deleted file mode 100644 index 8ba8f9ee8..000000000 --- a/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.18.imx.bb +++ /dev/null @@ -1,7 +0,0 @@ -require recipes-graphics/wayland/wayland-protocols_1.17.imx.bb - -WAYLAND_PROTOCOLS_SRC ?= "git://source.codeaurora.org/external/imx/wayland-protocols-imx.git;protocol=https" -SRCBRANCH = "wayland-protocols-imx-1.18" -SRC_URI = "${WAYLAND_PROTOCOLS_SRC};branch=${SRCBRANCH} " -SRCREV = "ee18c1f66877f7fb652467c349108395c20d4f9a" -S = "${WORKDIR}/git" diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb b/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb new file mode 100644 index 000000000..7928ec16f --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland-protocols_1.20.imx.bb @@ -0,0 +1,26 @@ +SUMMARY = "Collection of additional Wayland protocols" +DESCRIPTION = "Wayland protocols that add functionality not \ +available in the Wayland core protocol. Such protocols either add \ +completely new functionality, or extend the functionality of some other \ +protocol either in Wayland core, or some other protocol in \ +wayland-protocols." +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \ + file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53" + +WAYLAND_PROTOCOLS_SRC ?= "git://source.codeaurora.org/external/imx/wayland-protocols-imx.git;protocol=https" +SRCBRANCH = "wayland-protocols-imx-1.20" +SRC_URI = "${WAYLAND_PROTOCOLS_SRC};branch=${SRCBRANCH} " +SRCREV = "9cacf108d0ee5863c7a656da5d2271bc2396e43d" +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit autotools pkgconfig + +PACKAGES = "${PN}" +FILES_${PN} += "${datadir}/pkgconfig/wayland-protocols.pc" + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" +COMPATIBLE_MACHINE = "(imxfbdev|imxgpu)" diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch b/meta-digi-dey/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch new file mode 100644 index 000000000..c2ceae4a4 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland/0001-build-Fix-strndup-detection-on-MinGW.patch @@ -0,0 +1,34 @@ +From e6783c99f051c6d8252db5f388d805cef0e16357 Mon Sep 17 00:00:00 2001 +From: Joshua Watt +Date: Thu, 20 Feb 2020 15:20:45 -0600 +Subject: [PATCH] build: Fix strndup detection on MinGW + +GCC and meson conspire together to incorrectly detect that strndup() +exists on MinGW as __builtin_strndup, when no such function exists. As a +work around, meson will skip looking for __builtin functions if an +'#include' is in the prefix, so add '#include ' when looking +for strndup(). + +See: https://github.com/mesonbuild/meson/issues/3672 + +Signed-off-by: Joshua Watt +Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/wayland/merge_requests/63] +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/meson.build ++++ b/meson.build +@@ -36,11 +36,11 @@ have_funcs = [ + 'posix_fallocate', + 'prctl', + 'memfd_create', +- 'strndup', + ] + foreach f: have_funcs + config_h.set('HAVE_' + f.underscorify().to_upper(), cc.has_function(f)) + endforeach ++config_h.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup')) + + if get_option('libraries') + ffi_dep = dependency('libffi') diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch b/meta-digi-dey/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch new file mode 100644 index 000000000..61de0e04e --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland/0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch @@ -0,0 +1,115 @@ +From b2c74f6a3dbe0aee2413800837314136947a4985 Mon Sep 17 00:00:00 2001 +From: Jan Beich +Date: Sat, 15 Feb 2020 02:03:45 +0000 +Subject: [PATCH] meson/tests: add missing dependencies on protocol headers + +In file included from ../tests/connection-test.c:43: +In file included from ../tests/test-compositor.h:30: +../src/wayland-client.h:40:10: fatal error: 'wayland-client-protocol.h' file not found + #include "wayland-client-protocol.h" + ^~~~~~~~~~~~~~~~~~~~~~~~~~~ +In file included from ../tests/display-test.c:45: +In file included from ../src/wayland-server.h:104: +src/wayland-server-protocol.h:4454:2: error: unterminated /* comment + /** + ^ +In file included from ../tests/cpp-compile-test.cpp:2: +In file included from src/wayland-server-protocol.h:8: +In file included from ../src/wayland-server.h:104: +src/wayland-server-protocol.h:3:2: error: unterminated conditional directive + #ifndef WAYLAND_SERVER_PROTOCOL_H + ^ +../tests/headers-protocol-test.c:33:2: error: including wayland-server-protocol.h did not include wayland-server.h! + #error including wayland-server-protocol.h did not include wayland-server.h! + ^ +In file included from ../tests/headers-protocol-test.c:26: +In file included from src/wayland-client-protocol.h:8: +In file included from ../src/wayland-client.h:40: +src/wayland-client-protocol.h:1358:2: error: unterminated conditional directive + #ifndef WL_SHM_FORMAT_ENUM + ^ +In file included from ../tests/protocol-logger-test.c:34: +In file included from ../src/wayland-client.h:40: +src/wayland-client-protocol.h:2613:1: error: unterminated /* comment +/** +^ +../tests/resources-test.c:49:36: error: use of undeclared identifier 'wl_seat_interface' + res = wl_resource_create(client, &wl_seat_interface, 4, 0); + ^ +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin +--- + tests/meson.build | 26 ++++++++++++++++++-------- + 1 file changed, 18 insertions(+), 8 deletions(-) + +diff --git a/tests/meson.build b/tests/meson.build +index c28a2a3..f1af7b4 100644 +--- a/tests/meson.build ++++ b/tests/meson.build +@@ -69,7 +69,7 @@ test( + executable( + 'cpp-compile-test', + 'cpp-compile-test.cpp', +- wayland_server_protocol_core_h, ++ wayland_server_protocol_h, + include_directories: src_inc + ) + ) +@@ -91,17 +91,25 @@ tests = { + 'array-test': [], + 'client-test': [ wayland_server_protocol_h ], + 'display-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + tests_server_protocol_h, + tests_client_protocol_c, + tests_protocol_c, + ], +- 'connection-test': [ wayland_server_protocol_h ], ++ 'connection-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, ++ ], + 'event-loop-test': [ wayland_server_protocol_h ], + 'fixed-test': [], + 'interface-test': [ wayland_client_protocol_h ], + 'list-test': [], + 'map-test': [], +- 'sanity-test' : [ wayland_server_protocol_h ], ++ 'sanity-test' : [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, ++ ], + 'socket-test': [ + wayland_client_protocol_h, + wayland_server_protocol_h, +@@ -116,7 +124,7 @@ tests = { + files('../src/wayland-server.c'), + wayland_server_protocol_h, + ], +- 'resources-test': [ wayland_server_protocol_core_h ], ++ 'resources-test': [ wayland_server_protocol_h ], + 'message-test': [ + wayland_client_protocol_h, + wayland_server_protocol_h, +@@ -126,14 +134,16 @@ tests = { + wayland_server_protocol_h, + ], + 'protocol-logger-test': [ +- wayland_server_protocol_core_h, +- wayland_client_protocol_core_h, ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + ], + 'headers-test': [ ++ wayland_client_protocol_h, ++ wayland_server_protocol_h, + 'headers-protocol-test.c', +- 'headers-protocol-core-test.c', +- wayland_server_protocol_core_h, + wayland_client_protocol_core_h, ++ wayland_server_protocol_core_h, ++ 'headers-protocol-core-test.c', + ], + 'os-wrappers-test': [], + } diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch b/meta-digi-dey/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch new file mode 100644 index 000000000..2199548bd --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland/0002-Do-not-hardcode-the-path-to-wayland-scanner.patch @@ -0,0 +1,26 @@ +From cbb28635a1079d68e62dbaa1e21791a20dbbbaf4 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 17 Feb 2020 21:46:18 +0100 +Subject: [PATCH] Do not hardcode the path to wayland-scanner + +This results in host contamination during builds. + +Upstream-Status: Inappropriate [oe-core specific] +Signed-off-by: Alexander Kanavin +--- + src/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/meson.build b/src/meson.build +index 294aee0..7e410fa 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -49,7 +49,7 @@ pkgconfig.generate( + 'datarootdir=' + join_paths('${prefix}', get_option('datadir')), + 'pkgdatadir=' + join_paths('${datarootdir}', meson.project_name()), + 'bindir=' + join_paths('${prefix}', get_option('bindir')), +- 'wayland_scanner=${bindir}/wayland-scanner' ++ 'wayland_scanner=wayland-scanner' + ], + filebase: 'wayland-scanner' + ) diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch b/meta-digi-dey/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch new file mode 100644 index 000000000..f98037a85 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland/0002-meson.build-find-the-native-wayland-scanner-directly.patch @@ -0,0 +1,27 @@ +From 2582d2653ba80917d7bc47088e1a5f49530fddaa Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Sun, 16 Feb 2020 16:29:53 +0100 +Subject: [PATCH] meson.build: find the native wayland-scanner directly in PATH + +Otherwise, meson attempts to use the target pkg-config and fails. + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + src/meson.build | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/meson.build b/src/meson.build +index 3e8c9bf..294aee0 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -55,8 +55,7 @@ pkgconfig.generate( + ) + + if meson.is_cross_build() +- scanner_dep = dependency('wayland-scanner', native: true, version: '>=1.14.0') +- wayland_scanner_for_build = find_program(scanner_dep.get_pkgconfig_variable('wayland_scanner')) ++ wayland_scanner_for_build = find_program('wayland-scanner') + else + wayland_scanner_for_build = wayland_scanner + endif diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/run-ptest b/meta-digi-dey/recipes-graphics/wayland/wayland/run-ptest new file mode 100644 index 000000000..7e8d9de04 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/wayland/run-ptest @@ -0,0 +1,17 @@ +#!/bin/sh + +export WAYLAND_SCANNER=wayland-scanner +export TEST_DATA_DIR=tests/data +export TEST_OUTPUT_DIR=tests/output +export SED=sed +export WAYLAND_EGL_LIB=/usr/lib/libwayland-egl.so.1 +export NM=nm + +for i in `ls tests/*-test tests/wayland-egl-symbols-check tests/scanner-test.sh`; do + $i + if [ $? -eq 0 ]; then + echo "PASS: $i" + else + echo "FAIL: $i" + fi +done diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland_1.18.0.bb b/meta-digi-dey/recipes-graphics/wayland/wayland_1.18.0.bb index 19bcdf1fe..00be3aac2 100644 --- a/meta-digi-dey/recipes-graphics/wayland/wayland_1.18.0.bb +++ b/meta-digi-dey/recipes-graphics/wayland/wayland_1.18.0.bb @@ -1,4 +1,62 @@ -require recipes-graphics/wayland/wayland_1.17.0.bb +SUMMARY = "Wayland, a protocol between a compositor and clients" +DESCRIPTION = "Wayland is a protocol for a compositor to talk to its clients \ +as well as a C library implementation of that protocol. The compositor can be \ +a standalone display server running on Linux kernel modesetting and evdev \ +input devices, an X application, or a wayland client itself. The clients can \ +be traditional applications, X servers (rootless or fullscreen) or other \ +display servers." +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b31d8f53b6aaf2b4985d7dd7810a70d1 \ + file://src/wayland-server.c;endline=24;md5=b8e046164a766bb1ede8ba38e9dcd7ce" +DEPENDS = "expat libffi wayland-native" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://run-ptest \ + file://0002-meson.build-find-the-native-wayland-scanner-directly.patch \ + file://0002-Do-not-hardcode-the-path-to-wayland-scanner.patch \ + file://0001-build-Fix-strndup-detection-on-MinGW.patch \ + file://0001-meson-tests-add-missing-dependencies-on-protocol-hea.patch \ + " SRC_URI[md5sum] = "23317697b6e3ff2e1ac8c5ba3ed57b65" SRC_URI[sha256sum] = "4675a79f091020817a98fd0484e7208c8762242266967f55a67776936c2e294d" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit meson pkgconfig ptest + +PACKAGECONFIG ??= "dtd-validation" +PACKAGECONFIG[dtd-validation] = "-Ddtd_validation=true,-Ddtd_validation=false,libxml2,," + +EXTRA_OEMESON = "-Ddocumentation=false" +EXTRA_OEMESON_class-native = "-Ddocumentation=false -Dlibraries=false" + +# Wayland installs a M4 macro for other projects to use, which uses the target +# pkg-config to find files. Replace pkg-config with pkg-config-native. +do_install_append_class-native() { + sed -e 's,PKG_CHECK_MODULES(.*),,g' \ + -e 's,$PKG_CONFIG,pkg-config-native,g' \ + -i ${D}/${datadir}/aclocal/wayland-scanner.m4 +} + +do_install_ptest() { + mkdir -p ${D}${PTEST_PATH}/tests/data + cp -rf ${B}/tests/*-test ${B}/tests/*-checker ${D}${PTEST_PATH}/tests + cp -rf ${B}/tests/*-checker ${D}${PTEST_PATH} + cp -rf ${S}/tests/scanner-test.sh ${D}${PTEST_PATH}/tests + cp -rf ${S}/tests/data/* ${D}${PTEST_PATH}/tests/data/ + cp -rf ${S}/egl/wayland-egl-symbols-check ${D}${PTEST_PATH}/tests/ +} + +sysroot_stage_all_append_class-target () { + rm ${SYSROOT_DESTDIR}/${datadir}/aclocal/wayland-scanner.m4 + cp ${STAGING_DATADIR_NATIVE}/aclocal/wayland-scanner.m4 ${SYSROOT_DESTDIR}/${datadir}/aclocal/ +} + +FILES_${PN} = "${libdir}/*${SOLIBS}" +FILES_${PN}-dev += "${bindir} ${datadir}/wayland" + +BBCLASSEXTEND = "native nativesdk" + +RDEPENDS_${PN}-ptest += "binutils sed" diff --git a/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend b/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend index 2b3e593bd..6673d4b18 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend +++ b/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend @@ -15,6 +15,12 @@ SRC_URI += " \ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mp = " \ use-g2d=1 \ " +INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \ + drm-device=card0 \ +" +INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \ + repaint-window=16 \ +" # Digi: use g2d on ccimx6sbc to fix desktop window issue # Also needed to workaround an HDMI hotplug issue on the ccimx6qpsbc diff --git a/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini b/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini index 9e8bde4d3..1fec1d696 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini +++ b/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini @@ -3,6 +3,8 @@ idle-time=0 #use-g2d=1 #xwayland=true +#drm-device=card0 +#repaint-window=16 #enable-overlay-view=1 #[shell] @@ -14,7 +16,7 @@ touchscreen_calibrator=true #[output] #name=HDMI-A-1 #mode=1920x1080@60 -#transform=90 +#transform=rotate-90 #[output] #name=HDMI-A-2 @@ -23,7 +25,7 @@ touchscreen_calibrator=true # off Disables the output # preferred Uses the preferred mode # current Uses the current crt controller mode -#transform=90 +#transform=rotate-90 [screen-share] command=@bindir@/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize diff --git a/meta-digi-dey/recipes-graphics/wayland/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch b/meta-digi-dey/recipes-graphics/wayland/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch new file mode 100644 index 000000000..6fe86ff3f --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/weston/0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch @@ -0,0 +1,47 @@ +From 58760e09eed662a72da939ff4802d605489cff8e Mon Sep 17 00:00:00 2001 +From: Denys Dmytriyenko +Date: Tue, 8 Sep 2020 19:37:42 -0400 +Subject: [PATCH] tests: include fcntl.h for open(), O_RDWR, O_CLOEXEC and + O_CREAT + +musl libc (unlike glibc) requires explicitly incuding fcntl.h to define open(), +O_RDWR, O_CLOEXEC and O_CREAT. Otherwise the build fails with the errors: + +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c: In function 'wait_for_lock': +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:7: warning: implicit declaration of function 'open'; did you mean 'popen'? [-Wimplicit-function-declaration] +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~ +| | popen +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:23: error: 'O_RDWR' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~ +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:23: note: each undeclared identifier is reported only once for each function it appears in +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:32: error: 'O_CLOEXEC' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~~~~ +| ../weston-9.0.0/tests/weston-test-fixture-compositor.c:135:44: error: 'O_CREAT' undeclared (first use in this function) +| 135 | fd = open(lock_path, O_RDWR | O_CLOEXEC | O_CREAT, 00700); +| | ^~~~~~~ + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/493/diffs?commit_id=b10c0e843dcb8148bbe869bb15261955b94ac98c] + +Signed-off-by: Denys Dmytriyenko +--- + tests/weston-test-fixture-compositor.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/weston-test-fixture-compositor.c b/tests/weston-test-fixture-compositor.c +index 0c9855f..e0e32c9 100644 +--- a/tests/weston-test-fixture-compositor.c ++++ b/tests/weston-test-fixture-compositor.c +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + + #include "shared/helpers.h" + #include "weston-test-fixture-compositor.h" +-- +2.7.4 + diff --git a/meta-digi-dey/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/meta-digi-dey/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch index 1e24abf82..3279a728c 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch +++ b/meta-digi-dey/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch @@ -1,7 +1,8 @@ -From 682b7d79a7b81ec8e38760381104b24ad549e8c0 Mon Sep 17 00:00:00 2001 +From a1548c742bf2dedbb47282d8a00407b60bbab669 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Wed, 22 Feb 2017 15:53:30 +0200 Subject: [PATCH] weston-launch: Provide a default version that doesn't require + PAM weston-launch requires PAM for starting weston as a non-root user. @@ -16,17 +17,18 @@ Signed-off-by: Tom Hochstein Signed-off-by: Jussi Kukkonen Signed-off-by: Denys Dmytriyenko Signed-off-by: Ming Liu + --- libweston/meson.build | 16 ++++++++++++---- libweston/weston-launch.c | 21 +++++++++++++++++++++ meson_options.txt | 7 +++++++ 3 files changed, 40 insertions(+), 4 deletions(-) -Index: git/libweston/meson.build -=================================================================== ---- git.orig/libweston/meson.build -+++ git/libweston/meson.build -@@ -224,16 +224,24 @@ dep_vertex_clipping = declare_dependency +diff --git a/libweston/meson.build b/libweston/meson.build +index 08d23ec..cb9fd3f 100644 +--- a/libweston/meson.build ++++ b/libweston/meson.build +@@ -216,16 +216,24 @@ dep_vertex_clipping = declare_dependency( ) if get_option('weston-launch') @@ -55,10 +57,10 @@ Index: git/libweston/meson.build include_directories: common_inc, install: true ) -Index: git/libweston/weston-launch.c -=================================================================== ---- git.orig/libweston/weston-launch.c -+++ git/libweston/weston-launch.c +diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c +index 521cb2c..2d42d33 100644 +--- a/libweston/weston-launch.c ++++ b/libweston/weston-launch.c @@ -51,7 +51,9 @@ #include @@ -80,7 +82,7 @@ Index: git/libweston/weston-launch.c int tty; int ttynr; int sock[2]; -@@ -192,6 +196,7 @@ weston_launch_allowed(struct weston_laun +@@ -192,6 +196,7 @@ weston_launch_allowed(struct weston_launch *wl) return false; } @@ -96,7 +98,7 @@ Index: git/libweston/weston-launch.c static int setup_launcher_socket(struct weston_launch *wl) -@@ -431,6 +437,7 @@ quit(struct weston_launch *wl, int statu +@@ -466,6 +472,7 @@ quit(struct weston_launch *wl, int status) close(wl->signalfd); close(wl->sock[0]); @@ -104,15 +106,15 @@ Index: git/libweston/weston-launch.c if (wl->new_user) { err = pam_close_session(wl->ph, 0); if (err) -@@ -438,6 +445,7 @@ quit(struct weston_launch *wl, int statu +@@ -473,6 +480,7 @@ quit(struct weston_launch *wl, int status) err, pam_strerror(wl->ph, err)); pam_end(wl->ph, err); } +#endif - if (ioctl(wl->tty, KDSKBMUTE, 0) && - ioctl(wl->tty, KDSKBMODE, wl->kb_mode)) -@@ -666,6 +674,7 @@ setup_session(struct weston_launch *wl, + /* + * Get a fresh handle to the tty as the previous one is in +@@ -710,6 +718,7 @@ setup_session(struct weston_launch *wl, char **child_argv) setenv("HOME", wl->pw->pw_dir, 1); setenv("SHELL", wl->pw->pw_shell, 1); @@ -120,7 +122,7 @@ Index: git/libweston/weston-launch.c env = pam_getenvlist(wl->ph); if (env) { for (i = 0; env[i]; ++i) { -@@ -674,6 +683,7 @@ setup_session(struct weston_launch *wl, +@@ -718,6 +727,7 @@ setup_session(struct weston_launch *wl, char **child_argv) } free(env); } @@ -128,7 +130,7 @@ Index: git/libweston/weston-launch.c /* * We open a new session, so it makes sense -@@ -745,8 +755,10 @@ static void +@@ -789,8 +799,10 @@ static void help(const char *name) { fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name); @@ -139,7 +141,7 @@ Index: git/libweston/weston-launch.c fprintf(stderr, " -t, --tty Start session on alternative tty,\n" " e.g. -t /dev/tty4, requires -u option.\n"); fprintf(stderr, " -v, --verbose Be verbose\n"); -@@ -760,7 +772,9 @@ main(int argc, char *argv[]) +@@ -804,7 +816,9 @@ main(int argc, char *argv[]) int i, c; char *tty = NULL; struct option opts[] = { @@ -149,7 +151,7 @@ Index: git/libweston/weston-launch.c { "tty", required_argument, NULL, 't' }, { "verbose", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, -@@ -772,11 +786,16 @@ main(int argc, char *argv[]) +@@ -816,11 +830,16 @@ main(int argc, char *argv[]) while ((c = getopt_long(argc, argv, "u:t:vh", opts, &i)) != -1) { switch (c) { case 'u': @@ -166,7 +168,7 @@ Index: git/libweston/weston-launch.c break; case 't': tty = optarg; -@@ -828,8 +847,10 @@ main(int argc, char *argv[]) +@@ -872,8 +891,10 @@ main(int argc, char *argv[]) if (setup_tty(&wl, tty) < 0) exit(EXIT_FAILURE); @@ -177,11 +179,11 @@ Index: git/libweston/weston-launch.c if (setup_launcher_socket(&wl) < 0) exit(EXIT_FAILURE); -Index: git/meson_options.txt -=================================================================== ---- git.orig/meson_options.txt -+++ git/meson_options.txt -@@ -101,6 +101,13 @@ option( +diff --git a/meson_options.txt b/meson_options.txt +index 239bd2d..99e4ec3 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -73,6 +73,13 @@ option( ) option( diff --git a/meta-digi-dey/recipes-graphics/wayland/weston/dont-use-plane-add-prop.patch b/meta-digi-dey/recipes-graphics/wayland/weston/dont-use-plane-add-prop.patch new file mode 100644 index 000000000..a4444e5d1 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/weston/dont-use-plane-add-prop.patch @@ -0,0 +1,23 @@ +Fix atomic modesetting with musl + +atomic modesetting seems to fail with drm weston backend and this patch fixes +it, below errors are seen before weston exits + +atomic: couldn't commit new state: Invalid argument + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/wayland/weston/-/issues/158] +Signed-off-by: Khem Raj + +--- a/libweston/backend-drm/kms.c ++++ b/libweston/backend-drm/kms.c +@@ -1168,8 +1168,8 @@ drm_pending_state_apply_atomic(struct dr + wl_list_for_each(plane, &b->plane_list, link) { + drm_debug(b, "\t\t[atomic] starting with plane %lu disabled\n", + (unsigned long) plane->plane_id); +- plane_add_prop(req, plane, WDRM_PLANE_CRTC_ID, 0); +- plane_add_prop(req, plane, WDRM_PLANE_FB_ID, 0); ++ //plane_add_prop(req, plane, WDRM_PLANE_CRTC_ID, 0); ++ //plane_add_prop(req, plane, WDRM_PLANE_FB_ID, 0); + } + + flags |= DRM_MODE_ATOMIC_ALLOW_MODESET; diff --git a/meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.bb b/meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.bb new file mode 100644 index 000000000..0b037a377 --- /dev/null +++ b/meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.bb @@ -0,0 +1,131 @@ +SUMMARY = "Weston, a Wayland compositor" +DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ + file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://weston.png \ + file://weston.desktop \ + file://xwayland.weston-start \ + file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ + file://0001-tests-include-fcntl.h-for-open-O_RDWR-O_CLOEXEC-and-.patch \ +" + +SRC_URI_append_libc-musl = " file://dont-use-plane-add-prop.patch " + +SRC_URI[sha256sum] = "5cf5d6ce192e0eb15c1fc861a436bf21b5bb3b91dbdabbdebe83e1f83aa098fe" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit meson pkgconfig useradd features_check +# depends on virtual/egl +REQUIRED_DISTRO_FEATURES = "opengl" + +DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0" +DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" + +WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" + +EXTRA_OEMESON += "-Dbackend-default=auto -Dbackend-rdp=false -Dpipewire=false" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl clients', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ + ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ + launch \ + image-jpeg \ + screenshare \ + shell-desktop \ + shell-fullscreen \ + shell-ivi" + +# +# Compositor choices +# +# Weston on KMS +PACKAGECONFIG[kms] = "-Dbackend-drm=true,-Dbackend-drm=false,drm udev virtual/egl virtual/libgles2 virtual/libgbm mtdev" +# Weston on Wayland (nested Weston) +PACKAGECONFIG[wayland] = "-Dbackend-wayland=true,-Dbackend-wayland=false,virtual/egl virtual/libgles2" +# Weston on X11 +PACKAGECONFIG[x11] = "-Dbackend-x11=true,-Dbackend-x11=false,virtual/libx11 libxcb libxcb libxcursor cairo" +# Headless Weston +PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" +# Weston on framebuffer +PACKAGECONFIG[fbdev] = "-Dbackend-fbdev=true,-Dbackend-fbdev=false,udev mtdev" +# weston-launch +PACKAGECONFIG[launch] = "-Dweston-launch=true,-Dweston-launch=false,drm" +# VA-API desktop recorder +PACKAGECONFIG[vaapi] = "-Dbackend-drm-screencast-vaapi=true,-Dbackend-drm-screencast-vaapi=false,libva" +# Weston with EGL support +PACKAGECONFIG[egl] = "-Drenderer-gl=true,-Drenderer-gl=false,virtual/egl" +# Weston with lcms support +PACKAGECONFIG[lcms] = "-Dcolor-management-lcms=true,-Dcolor-management-lcms=false,lcms" +# Weston with webp support +PACKAGECONFIG[webp] = "-Dimage-webp=true,-Dimage-webp=false,libwebp" +# Weston with systemd-login support +PACKAGECONFIG[systemd] = "-Dsystemd=true -Dlauncher-logind=true,-Dsystemd=false -Dlauncher-logind=false,systemd dbus" +# Weston with Xwayland support (requires X11 and Wayland) +PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false" +# colord CMS support +PACKAGECONFIG[colord] = "-Dcolor-management-colord=true,-Dcolor-management-colord=false,colord" +# Clients support +PACKAGECONFIG[clients] = "-Dsimple-clients=all -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" +# Virtual remote output with GStreamer on DRM backend +PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer-1.0" +# Weston with PAM support +PACKAGECONFIG[pam] = "-Dpam=true,-Dpam=false,libpam" +# Weston with screen-share support +PACKAGECONFIG[screenshare] = "-Dscreenshare=true,-Dscreenshare=false" +# Traditional desktop shell +PACKAGECONFIG[shell-desktop] = "-Dshell-desktop=true,-Dshell-desktop=false" +# Fullscreen shell +PACKAGECONFIG[shell-fullscreen] = "-Dshell-fullscreen=true,-Dshell-fullscreen=false" +# In-Vehicle Infotainment (IVI) shell +PACKAGECONFIG[shell-ivi] = "-Dshell-ivi=true,-Dshell-ivi=false" +# JPEG image loading support +PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg" + +do_install_append() { + # Weston doesn't need the .la files to load modules, so wipe them + rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la + + # If X11, ship a desktop file to launch it + if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then + install -d ${D}${datadir}/applications + install ${WORKDIR}/weston.desktop ${D}${datadir}/applications + + install -d ${D}${datadir}/icons/hicolor/48x48/apps + install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then + install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'launch', 'yes', 'no', d)}" = "yes" ]; then + chmod u+s ${D}${bindir}/weston-launch + fi +} + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ + libweston-${WESTON_MAJOR_VERSION} ${PN}-examples" + +FILES_${PN}-dev += "${libdir}/${BPN}/libexec_weston.so" +FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so* ${datadir}" + +FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" +SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." + +FILES_${PN}-examples = "${bindir}/*" + +FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" +RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" + +RDEPENDS_${PN} += "xkeyboard-config" +RRECOMMENDS_${PN} = "weston-init liberation-fonts" +RRECOMMENDS_${PN}-dev += "wayland-protocols" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/meta-digi-dey/recipes-graphics/wayland/weston_8.0.0.imx.bb b/meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.imx.bb similarity index 91% rename from meta-digi-dey/recipes-graphics/wayland/weston_8.0.0.imx.bb rename to meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.imx.bb index 244651044..6276359b8 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston_8.0.0.imx.bb +++ b/meta-digi-dey/recipes-graphics/wayland/weston_9.0.0.imx.bb @@ -1,9 +1,9 @@ -require recipes-graphics/wayland/weston_7.0.0.bb +require weston_9.0.0.bb SRC_URI_remove = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz" WESTON_SRC ?= "git://source.codeaurora.org/external/imx/weston-imx.git;protocol=https" -SRC_URI_prepend = "${WESTON_SRC};branch=weston-imx-8.0 " -SRCREV = "f13d40a3a0504a00baf2f28abe83b65dab8b2e10" +SRC_URI_prepend = "${WESTON_SRC};branch=weston-imx-9.0 " +SRCREV = "a1823f20a1d6e24d2f56e98c5576eda34a94f567" S = "${WORKDIR}/git" # Disable OpenGL for parts with GPU support for 2D but not 3D From fa801e1e9f57bb0d8087a3dd0d96df2804a8868e Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Tue, 9 Feb 2021 16:25:07 +0100 Subject: [PATCH 41/54] linux: Update kernel sources to new master Signed-off-by: Mike Engel --- meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc b/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc index 017651043..43449189a 100644 --- a/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc +++ b/meta-digi-arm/recipes-kernel/linux/linux-dey-src.inc @@ -4,7 +4,7 @@ LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" LOCALVERSION = "-dey" -SRCBRANCH = "v5.4.47/master" +SRCBRANCH = "v5.4.70/master" SRCREV = "${AUTOREV}" # Select internal or Github Linux repo From a308f0245201381f26556daf4181fbbe756e2eb7 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Thu, 11 Feb 2021 17:26:45 +0100 Subject: [PATCH 42/54] digi-sc-firmware: update to v1.7.0 This includes NXP's code from the SCFW porting kit v1.7.0 and a DCD update using RPA v16. Signed-off-by: Gabriel Valcazar --- ...{digi-sc-firmware_1.6.0.bb => digi-sc-firmware_1.7.0.bb} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename meta-digi-arm/recipes-bsp/digi-sc-firmware/{digi-sc-firmware_1.6.0.bb => digi-sc-firmware_1.7.0.bb} (84%) diff --git a/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.6.0.bb b/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb similarity index 84% rename from meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.6.0.bb rename to meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb index 98f431c1a..7b160a326 100644 --- a/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.6.0.bb +++ b/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb @@ -4,15 +4,15 @@ DESCRIPTION = "i.MX System Controller Firmware, customized for Digi platforms" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=983e4c77621568488dd902b27e0c2143" +LIC_FILES_CHKSUM = "file://COPYING;md5=e9e880185bda059c90c541d40ceca922" SECTION = "BSP" inherit pkgconfig deploy SRC_URI = "${DIGI_PKG_SRC}/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "0059e04701ba4fe4436610eef680907d" -SRC_URI[sha256sum] = "1776a5eeae3641cff8fe8dc16d78219e758cd30b12efdb7223bc31c34ae1580d" +SRC_URI[md5sum] = "d66fa41a77fb5b6f5ed5d542db3bef57" +SRC_URI[sha256sum] = "e65d77d4e6a703d9e586b3a6f115a1638c1867e61cd4a8a8f9e41b39b05124e0" S = "${WORKDIR}/${PN}-${PV}" From daae78b60ce3a1d431e303dbea076519f2576e11 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Thu, 11 Feb 2021 13:24:07 +0100 Subject: [PATCH 43/54] trustfence-sign-tools: add ccimx8mm support to the artifact signing script https://jira.digi.com/browse/DEL-7420 Signed-off-by: Gabriel Valcazar --- .../trustfence-sign-tools/trustfence-sign-artifact.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools/trustfence-sign-artifact.sh b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools/trustfence-sign-artifact.sh index 45e1b1b26..cff9ccf89 100755 --- a/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools/trustfence-sign-artifact.sh +++ b/meta-digi-arm/recipes-digi/trustfence/trustfence-sign-tools/trustfence-sign-artifact.sh @@ -57,7 +57,7 @@ Usage: ${SCRIPT_NAME} [OPTIONS] input-unsigned-image output-signed-image -i sign/encrypt initramfs -l sign/encrypt Linux image -Supported platforms: ccimx6, ccimx6ul, ccimx8x, ccimx8mn +Supported platforms: ccimx6, ccimx6ul, ccimx8x, ccimx8mn, ccimx8mm EOF } @@ -98,14 +98,14 @@ elif [ "${PLATFORM}" = "ccimx8x" ]; then CONFIG_FDT_LOADADDR="0x82000000" CONFIG_RAMDISK_LOADADDR="0x82100000" CONFIG_KERNEL_LOADADDR="0x80280000" -elif [ "${PLATFORM}" = "ccimx8mn" ]; then +elif [ "${PLATFORM}" = "ccimx8mn" ] || [ "${PLATFORM}" = "ccimx8mm" ]; then CONFIG_FDT_LOADADDR="0x43000000" CONFIG_RAMDISK_LOADADDR="0x43800000" CONFIG_KERNEL_LOADADDR="0x40480000" CONFIG_CSF_SIZE="0x2000" else echo "Invalid platform: ${PLATFORM}" - echo "Supported platforms: ccimx6, ccimx6ul, ccimx8x, ccimx8mn" + echo "Supported platforms: ccimx6, ccimx6ul, ccimx8x, ccimx8mn, ccimx8mm" exit 1 fi @@ -125,7 +125,7 @@ fi # Get DEK key if [ -n "${CONFIG_DEK_PATH}" ]; then if [ ! -f "${CONFIG_DEK_PATH}" ]; then - if [ "${PLATFORM}" = "ccimx8mn" ]; then + if [ "${PLATFORM}" = "ccimx8mn" ] || [ "${PLATFORM}" = "ccimx8mm" ]; then echo "DEK not found. Generating random 128 bit DEK." [ -d $(dirname ${CONFIG_DEK_PATH}) ] || mkdir -p $(dirname ${CONFIG_DEK_PATH}) dd if=/dev/urandom of="${CONFIG_DEK_PATH}" bs=16 count=1 >/dev/null 2>&1 From 358f98dd4f8172d096a59b922ffe5690878b5adf Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Thu, 11 Feb 2021 13:24:52 +0100 Subject: [PATCH 44/54] imx-boot: apply ccimx8mn patch to the ccimx8mm as well Otherwise, mkimage will delete the device trees between imx-boot builds, causing the build to fail when generating a signed imx-boot. https://jira.digi.com/browse/DEL-7420 Signed-off-by: Gabriel Valcazar --- meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend index 9bdb730c3..a0408703f 100644 --- a/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend +++ b/meta-digi-arm/recipes-bsp/imx-mkimage/imx-boot_1.0.bbappend @@ -1,7 +1,7 @@ # Copyright 2019,2020 Digi International, Inc. inherit boot-artifacts -SRC_URI_append_ccimx8mn = " file://0001-imx8m-soc.mak-preserve-dtbs-after-build.patch" +SRC_URI_append_ccimx8m = " file://0001-imx8m-soc.mak-preserve-dtbs-after-build.patch" IMX_EXTRA_FIRMWARE_ccimx8x = "digi-sc-firmware imx-seco" From e3f6955cc176f0d4ac01f1b3b28bca1ef89b6242 Mon Sep 17 00:00:00 2001 From: Hector Palacios Date: Tue, 16 Feb 2021 17:19:48 +0100 Subject: [PATCH 45/54] ccimx8m: remove quad core device tree overlay This overlay added cooling devices for all quad cores. On the latest BSP, the SoC device tree include contains all four cooling devices and the newest U-Boot is able to delete the nodes for non-existing cores, so there's no need for this overlay anymore. Signed-off-by: Hector Palacios --- meta-digi-arm/conf/machine/ccimx8mm-dvk.conf | 1 - meta-digi-arm/conf/machine/ccimx8mn-dvk.conf | 1 - .../recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt | 5 ----- .../recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt | 5 ----- 4 files changed, 12 deletions(-) diff --git a/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf b/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf index ff88e92d7..ca61086b9 100644 --- a/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf +++ b/meta-digi-arm/conf/machine/ccimx8mm-dvk.conf @@ -25,7 +25,6 @@ KERNEL_DEVICETREE ?= " \ digi/_ov_board_user-leds_ccimx8m-dvk.dtbo \ digi/_ov_som_bt_ccimx8m.dtbo \ digi/_ov_som_mca-keypad_ccimx8m.dtbo \ - digi/_ov_som_quad_ccimx8m.dtbo \ digi/_ov_som_wifi_ccimx8m.dtbo \ " diff --git a/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf b/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf index 310671277..ab9379155 100644 --- a/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf +++ b/meta-digi-arm/conf/machine/ccimx8mn-dvk.conf @@ -26,7 +26,6 @@ KERNEL_DEVICETREE ?= " \ digi/_ov_board_v1-v2_ccimx8mn-dvk.dtbo \ digi/_ov_som_bt_ccimx8m.dtbo \ digi/_ov_som_mca-keypad_ccimx8m.dtbo \ - digi/_ov_som_quad_ccimx8m.dtbo \ digi/_ov_som_v1_ccimx8mn.dtbo \ digi/_ov_som_wifi_ccimx8m.dtbo \ " diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt index 3e921656f..6b16fb857 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mm-dvk/boot.txt @@ -33,11 +33,6 @@ if test -n "${module_ram}"; then fi fi -# Apply quad overlay if the SOC type is "imx8mm" -if test "${soc_type}" = "imx8mm"; then - setenv overlays _ov_som_quad_ccimx8m.dtbo,${overlays} -fi - # Get the UUID of the configured boot partition. part uuid mmc ${mmcbootdev}:${mmcpart} bootpart # Check the boot source. diff --git a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt index 79b2feb04..39da49773 100644 --- a/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt +++ b/meta-digi-arm/recipes-bsp/u-boot/u-boot-dey/ccimx8mn-dvk/boot.txt @@ -37,11 +37,6 @@ if test -n "${module_ram}"; then fi fi -# Apply quad overlay if the SOC type is "imx8mn" -if test "${soc_type}" = "imx8mn"; then - setenv overlays _ov_som_quad_ccimx8m.dtbo,${overlays} -fi - # Apply DVK v1-v2 overlay if the board version is < 3 if test "${board_version}" -lt "3"; then setenv overlays _ov_board_v1-v2_ccimx8mn-dvk.dtbo,${overlays} From 0bf51d5b7d7e88a951778e8eb49e47b023947a82 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 16 Feb 2021 14:12:05 +0100 Subject: [PATCH 46/54] digi-sc-firmware: update to v1.7.1 This includes NXP's code from the SCFW porting kit v1.7.1 Signed-off-by: Gabriel Valcazar --- .../{digi-sc-firmware_1.7.0.bb => digi-sc-firmware_1.7.1.bb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename meta-digi-arm/recipes-bsp/digi-sc-firmware/{digi-sc-firmware_1.7.0.bb => digi-sc-firmware_1.7.1.bb} (89%) diff --git a/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb b/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.1.bb similarity index 89% rename from meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb rename to meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.1.bb index 7b160a326..ac05ab565 100644 --- a/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.0.bb +++ b/meta-digi-arm/recipes-bsp/digi-sc-firmware/digi-sc-firmware_1.7.1.bb @@ -11,8 +11,8 @@ inherit pkgconfig deploy SRC_URI = "${DIGI_PKG_SRC}/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "d66fa41a77fb5b6f5ed5d542db3bef57" -SRC_URI[sha256sum] = "e65d77d4e6a703d9e586b3a6f115a1638c1867e61cd4a8a8f9e41b39b05124e0" +SRC_URI[md5sum] = "79da2ab3833c5969bec9aeb155f50fd3" +SRC_URI[sha256sum] = "c1d03907a2f0c1c0881a42fef3b5450886542d7b18855b5ab9c021278d727ac7" S = "${WORKDIR}/${PN}-${PV}" From 0095d8c415c2485c49e6b3d8fd4ad1b4e5b613ac Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 16 Feb 2021 14:16:35 +0100 Subject: [PATCH 47/54] imx-seco: Update recipes to new NXP BSP release imx_5.4.70_2.3.1 Update imx-seco to v3.7.5, update imx-seco-libs revision and add a new patch. Signed-off-by: Gabriel Valcazar --- ...001-Makefile-Fix-LIBDIR-for-multilib.patch | 2 +- ...tall-to-clear-host-user-contaminated.patch | 33 +++++++++++++++++++ .../recipes-bsp/imx-seco/imx-seco-libs_git.bb | 5 +-- .../{imx-seco_3.7.4.bb => imx-seco_3.7.5.bb} | 4 +-- 4 files changed, 39 insertions(+), 5 deletions(-) create mode 100644 meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch rename meta-digi-arm/recipes-bsp/imx-seco/{imx-seco_3.7.4.bb => imx-seco_3.7.5.bb} (80%) diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch index d1784e255..772b6610b 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0001-Makefile-Fix-LIBDIR-for-multilib.patch @@ -12,7 +12,7 @@ diff --git a/Makefile b/Makefile index b16cebf..492d700 100644 --- a/Makefile +++ b/Makefile -@@ -4,7 +4,8 @@ all: she_test hsm_test v2x_test she_lib.a seco_nvm_manager.a sm_lib.a +@@ -4,7 +4,8 @@ all: she_test hsm_test v2x_test she_lib.a seco_nvm_manager.a hsm_lib.a CFLAGS = -O1 -Werror -fPIC DESTDIR ?= export BINDIR ?= /usr/bin diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch new file mode 100644 index 000000000..7988cdaea --- /dev/null +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs/0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch @@ -0,0 +1,33 @@ +From 59608dcb0f0a6f6d8154b1d331c2403d7c1143eb Mon Sep 17 00:00:00 2001 +From: Cristinel Panfir +Date: Fri, 5 Feb 2021 19:27:00 +0200 +Subject: [PATCH] Makefile: Fix install to clear host-user-contaminated + warnings [HSM-483] + +WARNING: imx-seco-libs-git-r0 do_package_qa: QA Issue: +imx-seco-libs: /usr/lib/hsm_lib.a is owned by uid 26292, which is the same as the user running bitbake. This may be due to host contamination +imx-seco-libs: /usr/lib/she_lib.a is owned by uid 26292, which is the same as the user running bitbake. This may be due to host contamination +imx-seco-libs: /usr/lib/seco_nvm_manager.a is owned by uid 26292, which is the same as the user running bitbake. +This may be due to host contamination [host-user-contaminated] + +Signed-off-by: Cristinel Panfir +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 492d700..25ad333 100644 +--- a/Makefile ++++ b/Makefile +@@ -63,7 +63,7 @@ hsm_doc: include/hsm/hsm_api.h + + install: hsm_test she_test she_lib.a seco_nvm_manager.a hsm_lib.a + mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(LIBDIR) $(DESTDIR)$(INCLUDEDIR) +- cp -a seco_nvm_manager.a hsm_lib.a she_lib.a $(DESTDIR)$(LIBDIR) ++ cp seco_nvm_manager.a hsm_lib.a she_lib.a $(DESTDIR)$(LIBDIR) + cp hsm_test she_test $(DESTDIR)$(BINDIR) + cp -a include/* $(DESTDIR)$(INCLUDEDIR) + +-- +2.25.1 + diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb index 60bd483c8..6091952f7 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco-libs_git.bb @@ -8,12 +8,13 @@ LIC_FILES_CHKSUM = "file://EULA.txt;md5=228c72f2a91452b8a03c4cab30f30ef9" DEPENDS = "zlib" -SRCBRANCH = "imx_5.4.70_2.3.0" +SRCBRANCH = "imx_5.4.70_2.3.1" SECO_LIB_SRC ?= "git://github.com/NXP/imx-seco-libs.git;protocol=https" SRC_URI = "${SECO_LIB_SRC};branch=${SRCBRANCH} \ file://0001-Makefile-Fix-LIBDIR-for-multilib.patch \ + file://0002-Makefile-Fix-install-to-clear-host-user-contaminated.patch \ " -SRCREV = "b730ba5975644094f224faee20942f63d0d24ccd" +SRCREV = "79e5fb5d096c61b1c3163c9fa8e42719509d95a0" S = "${WORKDIR}/git" diff --git a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.5.bb similarity index 80% rename from meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb rename to meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.5.bb index 2b7441d6e..f6e9bad83 100644 --- a/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.4.bb +++ b/meta-digi-arm/recipes-bsp/imx-seco/imx-seco_3.7.5.bb @@ -11,8 +11,8 @@ inherit fsl-eula-unpack deploy SRC_URI = "${FSL_MIRROR}/${BP}.bin;fsl-eula=true" -SRC_URI[md5sum] = "f0e20216f27f2f44ac809634c5291be5" -SRC_URI[sha256sum] = "2ed8177e48c8e33f742b3a642805be56a5ef56df78b1b29e10518552154da2bc" +SRC_URI[md5sum] = "d4faca131abfc51a1dd0278d7d201159" +SRC_URI[sha256sum] = "08cf25a4be6841ca7264a50b29c311b386eae1c02fced8a3b55fd04213acb4bc" do_compile[noexec] = "1" From de7d43a6f06fa3598f58568ca9f5baf97719e364 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 16 Feb 2021 14:19:01 +0100 Subject: [PATCH 48/54] systemd-gpuconfig: Update recipe to new NXP BSP release imx_5.4.70_2.3.1 Add missing gpuconfig script elements Signed-off-by: Gabriel Valcazar --- .../recipes-core/systemd/systemd-gpuconfig/gpuconfig | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/meta-digi-dey/recipes-core/systemd/systemd-gpuconfig/gpuconfig b/meta-digi-dey/recipes-core/systemd/systemd-gpuconfig/gpuconfig index 9da22000b..bc073e81d 100644 --- a/meta-digi-dey/recipes-core/systemd/systemd-gpuconfig/gpuconfig +++ b/meta-digi-dey/recipes-core/systemd/systemd-gpuconfig/gpuconfig @@ -1,19 +1,28 @@ #!/bin/sh CPUREV=$(cat /sys/devices/soc0/soc_id) FILEVG=/usr/lib/libOpenVG.so +FILEVGLIB=/usr/lib/libOpenVG.so.1 FILEVG3D=/usr/lib/libOpenVG.3d.so.1.1.0 FILEVG355=/usr/lib/libOpenVG.2d.so.1.1.0 + if [ -e $FILEVG3D ] && [ -e $FILEVG355 ] then if [ -e $FILEVG ] then rm -f $FILEVG fi + if [ -e $FILEVGLIB ] + then + rm -f $FILEVGLIB + fi + if [ $CPUREV == "i.MX6QP" ] || [ $CPUREV == "i.MX6Q" ] || [ $CPUREV == "i.MX6SL" ] then # Use GC355 VG ln -s $FILEVG355 $FILEVG + ln -s $FILEVG355 $FILEVGLIB else ln -s $FILEVG3D $FILEVG + ln -s $FILEVG3D $FILEVGLIB fi fi From ae8927fb381961f4cbc77521c45716ee6c5f7806 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 16 Feb 2021 14:26:03 +0100 Subject: [PATCH 49/54] wayland: Update recipes to new NXP BSP release imx_5.4.70_2.3.1 Remove outdated wayland patch and remove NXP workaround for mx8mq platforms in the weston-init recipe. These changes don't affect our platforms, but it's to make sure that we're in sync with the latest version of NXP's recipes. Signed-off-by: Gabriel Valcazar --- .../wayland/wayland/fixpathinpcfiles.patch | 32 ------------------- .../wayland/weston-init.bbappend | 3 -- .../wayland/weston-init/weston.ini | 1 - 3 files changed, 36 deletions(-) delete mode 100644 meta-digi-dey/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch diff --git a/meta-digi-dey/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch b/meta-digi-dey/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch deleted file mode 100644 index ad3526d98..000000000 --- a/meta-digi-dey/recipes-graphics/wayland/wayland/fixpathinpcfiles.patch +++ /dev/null @@ -1,32 +0,0 @@ -Fix wayland-client and wayland-scanner pc files - -Upstream-Status: Pending - -Signed-off-by: Fabien Lahoudere - -Index: wayland-1.14.0/src/wayland-client.pc.in -=================================================================== ---- wayland-1.14.0.orig/src/wayland-client.pc.in -+++ wayland-1.14.0/src/wayland-client.pc.in -@@ -1,7 +1,7 @@ - prefix=@prefix@ - exec_prefix=@exec_prefix@ - datarootdir=@datarootdir@ --pkgdatadir=@datadir@/@PACKAGE@ -+pkgdatadir=${pc_sysrootdir}@datadir@/@PACKAGE@ - libdir=@libdir@ - includedir=@includedir@ - -Index: wayland-1.14.0/src/wayland-scanner.pc.in -=================================================================== ---- wayland-1.14.0.orig/src/wayland-scanner.pc.in -+++ wayland-1.14.0/src/wayland-scanner.pc.in -@@ -2,7 +2,7 @@ prefix=@prefix@ - exec_prefix=@exec_prefix@ - datarootdir=@datarootdir@ - pkgdatadir=@datadir@/@PACKAGE@ --wayland_scanner=@bindir@/wayland-scanner -+wayland_scanner=wayland-scanner - - Name: Wayland Scanner - Description: Wayland scanner diff --git a/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend b/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend index 6673d4b18..e4604503d 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend +++ b/meta-digi-dey/recipes-graphics/wayland/weston-init.bbappend @@ -15,9 +15,6 @@ SRC_URI += " \ INI_UNCOMMENT_ASSIGNMENTS_append_mx8mp = " \ use-g2d=1 \ " -INI_UNCOMMENT_ASSIGNMENTS_append_mx8mq = " \ - drm-device=card0 \ -" INI_UNCOMMENT_ASSIGNMENTS_append_mx8 = " \ repaint-window=16 \ " diff --git a/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini b/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini index 1fec1d696..916e621ab 100644 --- a/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini +++ b/meta-digi-dey/recipes-graphics/wayland/weston-init/weston.ini @@ -3,7 +3,6 @@ idle-time=0 #use-g2d=1 #xwayland=true -#drm-device=card0 #repaint-window=16 #enable-overlay-view=1 From a3fd375f259bb4e31072b7c594881e93f91d6d21 Mon Sep 17 00:00:00 2001 From: Gabriel Valcazar Date: Tue, 16 Feb 2021 14:29:22 +0100 Subject: [PATCH 50/54] opencv: Update recipe to new NXP BSP release imx_5.4.70_2.3.1 Remove outdated patch and update source revision Signed-off-by: Gabriel Valcazar --- .../opencv/opencv/uselocalxfeatures.patch | 21 ------------------- .../opencv/opencv_4.4.0.imx.bb | 2 +- 2 files changed, 1 insertion(+), 22 deletions(-) delete mode 100644 meta-digi-dey/recipes-support/opencv/opencv/uselocalxfeatures.patch diff --git a/meta-digi-dey/recipes-support/opencv/opencv/uselocalxfeatures.patch b/meta-digi-dey/recipes-support/opencv/opencv/uselocalxfeatures.patch deleted file mode 100644 index 8ffee51dd..000000000 --- a/meta-digi-dey/recipes-support/opencv/opencv/uselocalxfeatures.patch +++ /dev/null @@ -1,21 +0,0 @@ -Index: contrib/modules/xfeatures2d/CMakeLists.txt -=================================================================== ---- contrib.orig/modules/xfeatures2d/CMakeLists.txt -+++ contrib/modules/xfeatures2d/CMakeLists.txt -@@ -5,11 +5,11 @@ ocv_define_module(xfeatures2d opencv_cor - include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_vgg.cmake) - include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/download_boostdesc.cmake) - set(DOWNLOAD_DIR "${OpenCV_BINARY_DIR}/downloads/xfeatures2d") --download_boost_descriptors("${DOWNLOAD_DIR}" boost_status) --download_vgg_descriptors("${DOWNLOAD_DIR}" vgg_status) --if(NOT boost_status OR NOT vgg_status) -- ocv_module_disable(xfeatures2d) --endif() -+#download_boost_descriptors("${DOWNLOAD_DIR}" boost_status) -+#download_vgg_descriptors("${DOWNLOAD_DIR}" vgg_status) -+#if(NOT boost_status OR NOT vgg_status) -+# ocv_module_disable(xfeatures2d) -+#endif() - - ocv_module_include_directories("${DOWNLOAD_DIR}") - diff --git a/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb index 9a35573fd..77af844d0 100644 --- a/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb +++ b/meta-digi-dey/recipes-support/opencv/opencv_4.4.0.imx.bb @@ -2,7 +2,7 @@ require opencv_4.4.0.bb LIC_FILES_CHKSUM = "file://LICENSE;md5=19598330421859a6dd353a4318091ac7" -SRCREV_opencv = "3dbe28a38b6f7d1e24572e2533044adfe4287a40" +SRCREV_opencv = "e39e6eded2d365a5dc370e1a72717e132166cf07" SRCREV_contrib = "5fae4082cc493efa5cb7a7486f9e009618a5198b" SRCREV_extra = "65796edadce27ed013e3deeedb3c081ff527e4ec" SRC_URI[tinydnn.md5sum] = "adb1c512e09ca2c7a6faef36f9c53e59" From 3c74232d0f4f40a68697e5a37e5629cfec780636 Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Thu, 18 Feb 2021 15:31:02 +0100 Subject: [PATCH 51/54] wpa-supplicant: sync defconfig with v2.9 https://jira.digi.com/browse/DEL-7301 Signed-off-by: Arturo Buzarra --- .../wpa-supplicant/wpa-supplicant/defconfig | 119 +++++++----------- 1 file changed, 46 insertions(+), 73 deletions(-) diff --git a/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig b/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig index b79c600bf..3631b134f 100644 --- a/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig +++ b/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig @@ -1,9 +1,9 @@ # Example wpa_supplicant build time configuration # # This file lists the configuration options that are used when building the -# hostapd binary. All lines starting with # are ignored. Configuration option -# lines must be commented out complete, if they are not to be included, i.e., -# just setting VARIABLE=n is not disabling that variable. +# wpa_supplicant binary. All lines starting with # are ignored. Configuration +# option lines must be commented out complete, if they are not to be included, +# i.e., just setting VARIABLE=n is not disabling that variable. # # This file is included in Makefile, so variables like CFLAGS and LIBS can also # be modified from here. In most cases, these lines should use += in order not @@ -20,63 +20,6 @@ # used to fix build issues on such systems (krb5.h not found). #CFLAGS += -I/usr/include/kerberos -# Example configuration for various cross-compilation platforms - -#### sveasoft (e.g., for Linksys WRT54G) ###################################### -#CC=mipsel-uclibc-gcc -#CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc -#CFLAGS += -Os -#CPPFLAGS += -I../src/include -I../../src/router/openssl/include -#LIBS += -L/opt/brcm/hndtools-mipsel-uclibc-0.9.19/lib -lssl -############################################################################### - -#### openwrt (e.g., for Linksys WRT54G) ####################################### -#CC=mipsel-uclibc-gcc -#CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc -#CFLAGS += -Os -#CPPFLAGS=-I../src/include -I../openssl-0.9.7d/include \ -# -I../WRT54GS/release/src/include -#LIBS = -lssl -############################################################################### - - -# Driver interface for Host AP driver -CONFIG_DRIVER_HOSTAP=y - -# Driver interface for Agere driver -#CONFIG_DRIVER_HERMES=y -# Change include directories to match with the local setup -#CFLAGS += -I../../hcf -I../../include -I../../include/hcf -#CFLAGS += -I../../include/wireless - -# Driver interface for madwifi driver -# Deprecated; use CONFIG_DRIVER_WEXT=y instead. -#CONFIG_DRIVER_MADWIFI=y -# Set include directory to the madwifi source tree -#CFLAGS += -I../../madwifi - -# Driver interface for ndiswrapper -# Deprecated; use CONFIG_DRIVER_WEXT=y instead. -#CONFIG_DRIVER_NDISWRAPPER=y - -# Driver interface for Atmel driver -# CONFIG_DRIVER_ATMEL=y - -# Driver interface for old Broadcom driver -# Please note that the newer Broadcom driver ("hybrid Linux driver") supports -# Linux wireless extensions and does not need (or even work) with the old -# driver wrapper. Use CONFIG_DRIVER_WEXT=y with that driver. -#CONFIG_DRIVER_BROADCOM=y -# Example path for wlioctl.h; change to match your configuration -#CFLAGS += -I/opt/WRT54GS/release/src/include - -# Driver interface for Intel ipw2100/2200 driver -# Deprecated; use CONFIG_DRIVER_WEXT=y instead. -#CONFIG_DRIVER_IPW=y - -# Driver interface for Ralink driver -#CONFIG_DRIVER_RALINK=y - # Driver interface for generic Linux wireless extensions # Note: WEXT is deprecated in the current Linux kernel version and no new # functionality is added to it. nl80211-based interface is the new @@ -127,12 +70,15 @@ CONFIG_LIBNL32=y # wpa_supplicant. # CONFIG_USE_NDISUIO=y -# Driver interface for development testing -#CONFIG_DRIVER_TEST=y - # Driver interface for wired Ethernet drivers #CONFIG_DRIVER_WIRED=y +# Driver interface for MACsec capable Qualcomm Atheros drivers +#CONFIG_DRIVER_MACSEC_QCA=y + +# Driver interface for Linux MACsec drivers +#CONFIG_DRIVER_MACSEC_LINUX=y + # Driver interface for the Broadcom RoboSwitch family #CONFIG_DRIVER_ROBOSWITCH=y @@ -143,8 +89,8 @@ CONFIG_LIBNL32=y #LIBS += -lsocket -ldlpi -lnsl #LIBS_c += -lsocket -# Enable IEEE 802.1X Supplicant (automatically included if any EAP method is -# included) +# Enable IEEE 802.1X Supplicant (automatically included if any EAP method or +# MACsec is included) CONFIG_IEEE8021X_EAPOL=y # EAP-MD5 @@ -163,11 +109,18 @@ CONFIG_EAP_PEAP=y CONFIG_EAP_TTLS=y # EAP-FAST -# Note: If OpenSSL is used as the TLS library, OpenSSL 1.0 or newer is needed -# for EAP-FAST support. Older OpenSSL releases would need to be patched, e.g., -# with openssl-0.9.8x-tls-extensions.patch, to add the needed functions. CONFIG_EAP_FAST=y +# EAP-TEAP +# Note: The current EAP-TEAP implementation is experimental and should not be +# enabled for production use. The IETF RFC 7170 that defines EAP-TEAP has number +# of conflicting statements and missing details and the implementation has +# vendor specific workarounds for those and as such, may not interoperate with +# any other implementation. This should not be used for anything else than +# experimentation and interoperability testing until those issues has been +# resolved. +#CONFIG_EAP_TEAP=y + # EAP-GTC CONFIG_EAP_GTC=y @@ -177,6 +130,9 @@ CONFIG_EAP_OTP=y # EAP-SIM (enable CONFIG_PCSC, if EAP-SIM is used) CONFIG_EAP_SIM=y +# Enable SIM simulator (Milenage) for EAP-SIM +#CONFIG_SIM_SIMULATOR=y + # EAP-PSK (experimental; this is _not_ needed for WPA-PSK) CONFIG_EAP_PSK=y @@ -212,8 +168,6 @@ CONFIG_EAP_GPSK=y # Wi-Fi Protected Setup (WPS) CONFIG_WPS=y -# Enable WSC 2.0 support -#CONFIG_WPS2=y # Enable WPS external registrar functionality #CONFIG_WPS_ER=y # Disable credentials for an open network by default when acting as a WPS @@ -228,6 +182,9 @@ CONFIG_EAP_IKEV2=y # EAP-EKE #CONFIG_EAP_EKE=y +# MACsec +#CONFIG_MACSEC=y + # PKCS#12 (PFX) support (used to read private key and certificate file from # a file that usually has extension .p12 or .pfx) CONFIG_PKCS12=y @@ -288,6 +245,9 @@ CONFIG_WPA_CLI_EDIT=y # wpa_passphrase). This saves about 0.5 kB in code size. #CONFIG_NO_WPA_PASSPHRASE=y +# Simultaneous Authentication of Equals (SAE), WPA3-Personal +#CONFIG_SAE=y + # Disable scan result processing (ap_mode=1) to save code size by about 1 kB. # This can be used if ap_scan=1 mode is never enabled. #CONFIG_NO_SCAN_PROCESSING=y @@ -357,10 +317,14 @@ CONFIG_PEERKEY=y # Driver support is also needed for IEEE 802.11w. #CONFIG_IEEE80211W=y +# Support Operating Channel Validation +#CONFIG_OCV=y + # Select TLS implementation # openssl = OpenSSL (default) # gnutls = GnuTLS # internal = Internal TLSv1 implementation (experimental) +# linux = Linux kernel AF_ALG and internal TLSv1 implementation (experimental) # none = Empty template #CONFIG_TLS=openssl @@ -378,6 +342,10 @@ CONFIG_PEERKEY=y # will be used) #CONFIG_TLSV12=y +# Select which ciphers to use by default with OpenSSL if the user does not +# specify them. +#CONFIG_TLS_DEFAULT_CIPHERS="DEFAULT:!EXP:!LOW" + # If CONFIG_TLS=internal is used, additional library and include paths are # needed for LibTomMath. Alternatively, an integrated, minimal version of # LibTomMath can be used. See beginning of libtommath.c for details on benefits @@ -428,7 +396,7 @@ CONFIG_CTRL_IFACE_DBUS_NEW=y # amount of memory/flash. #CONFIG_DYNAMIC_EAP_METHODS=y -# IEEE Std 802.11r-2008 (Fast BSS Transition) +# IEEE Std 802.11r-2008 (Fast BSS Transition) for station mode CONFIG_IEEE80211R=y # Add support for writing debug log to a file (/tmp/wpa_supplicant-log-#.txt) @@ -505,6 +473,11 @@ CONFIG_IEEE80211R=y # that meet the requirements described above. #CONFIG_NO_RANDOM_POOL=y +# Should we attempt to use the getrandom(2) call that provides more reliable +# yet secure randomness source than /dev/random on Linux 3.17 and newer. +# Requires glibc 2.25 to build, falls back to /dev/random if unavailable. +#CONFIG_GETRANDOM=y + # IEEE 802.11n (High Throughput) support (mainly for AP mode) CONFIG_IEEE80211N=y @@ -548,8 +521,8 @@ CONFIG_P2P=y # Enable TDLS support #CONFIG_TDLS=y -# Wi-Fi Direct -# This can be used to enable Wi-Fi Direct extensions for P2P using an external +# Wi-Fi Display +# This can be used to enable Wi-Fi Display extensions for P2P using an external # program to control the additional information exchanges in the messages. #CONFIG_WIFI_DISPLAY=y From fdb84dbebf088030a268102e6935a7685c4adcae Mon Sep 17 00:00:00 2001 From: Arturo Buzarra Date: Thu, 18 Feb 2021 15:34:20 +0100 Subject: [PATCH 52/54] wpa-supplicant: defconfig: add support to WPA3-Personal Include by default support to Simultaneous Authentication of Equals (SAE) and the standard IEEE 802.11w to Protected Management Frames, both required to support the standard WPA3. https://jira.digi.com/browse/DEL-7301 Signed-off-by: Arturo Buzarra --- .../wpa-supplicant/wpa-supplicant/defconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig b/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig index 3631b134f..82379eff9 100644 --- a/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig +++ b/meta-digi-dey/recipes-connectivity/wpa-supplicant/wpa-supplicant/defconfig @@ -246,7 +246,7 @@ CONFIG_WPA_CLI_EDIT=y #CONFIG_NO_WPA_PASSPHRASE=y # Simultaneous Authentication of Equals (SAE), WPA3-Personal -#CONFIG_SAE=y +CONFIG_SAE=y # Disable scan result processing (ap_mode=1) to save code size by about 1 kB. # This can be used if ap_scan=1 mode is never enabled. @@ -315,7 +315,7 @@ CONFIG_PEERKEY=y # IEEE 802.11w (management frame protection), also known as PMF # Driver support is also needed for IEEE 802.11w. -#CONFIG_IEEE80211W=y +CONFIG_IEEE80211W=y # Support Operating Channel Validation #CONFIG_OCV=y From c29c718827dc06b14a5b654b64c234a8bfc83837 Mon Sep 17 00:00:00 2001 From: Francisco Gil Date: Fri, 19 Feb 2021 12:20:53 +0100 Subject: [PATCH 53/54] firmware-qualcomm: bluetooth: allow users to use Bluetooth 4.1 Allow users to select Certified Bluetooth 4.1, rather than the default not-certified Bluetooth 5, through the use of variable BT_FW_VERSION="4" md5sums: nvm_tlv_3.2.bin ==> 9621f50172f2bfb4f65f8e5c6528b614 rampatch_tlv_3.2.tlv ==> 769e1fc9e5a2061bb3aaa1f32dac3804 Signed-off-by: Francisco Gil --- .../firmware-qualcomm/firmware-qualcomm.bb | 12 ++++++++++-- .../qca65X4_bt_4/nvm_tlv_3.2.bin | Bin 0 -> 1968 bytes .../qca65X4_bt_4/rampatch_tlv_3.2.tlv | Bin 0 -> 54228 bytes 3 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/nvm_tlv_3.2.bin create mode 100644 meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/rampatch_tlv_3.2.tlv diff --git a/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm.bb b/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm.bb index c2b7c0bab..9bd3028a9 100644 --- a/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm.bb +++ b/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm.bb @@ -13,12 +13,20 @@ BT_INTCLOCK_WORKAROUND ?= "0" BT_INTCLOCK_WORKAROUND_ccimx6ul = "1" BT_INTCLOCK_WORKAROUND_ccimx6qpsbc = "1" -# Bluetooth firmware files -FW_QUALCOMM_BT = " \ +# Bluetooth 5.0 firmware files +FW_QUALCOMM_BT_5 = " \ file://qca65X4_bt/nvm_tlv_3.2.bin \ file://qca65X4_bt/rampatch_tlv_3.2.tlv \ " +# Bluetooth 4.1 firmware files +FW_QUALCOMM_BT_4 = " \ + file://qca65X4_bt_4/nvm_tlv_3.2.bin \ + file://qca65X4_bt_4/rampatch_tlv_3.2.tlv \ +" + +FW_QUALCOMM_BT = "${@oe.utils.conditional('BT_FW_VERSION', '4', '${FW_QUALCOMM_BT_4}', '${FW_QUALCOMM_BT_5}', d)}" + # Firmware files for QCA6564 (Qualcomm proprietary driver) FW_QCA65X4_SDIO_PROPRIETARY = " \ file://bdwlan30_US.bin \ diff --git a/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/nvm_tlv_3.2.bin b/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/nvm_tlv_3.2.bin new file mode 100644 index 0000000000000000000000000000000000000000..2715082decbf74920ab8efa2a2f98a062ed81acc GIT binary patch literal 1968 zcmZuyYiv|S6#mZ4y}P%!+ugg}?OM9Eg_f2rMM}B|yUS~7cWEgCHMSK>uvKV%1eJ$U zB7!9-)E|nEKx|D+)j;Bck0=s@i6Qb*Fbc*5Vj@9Ne;5*@sYW2Sp1YU5U01(z&&-)K zb7s!WJ!eK7azem?4BqZEB?q*O0%N0lMlUW{wa1&K6XezuJ%k|09*0u+#~TJPjR^h` zAk1uHA}^GIv%V6uGY!NSHZ&%Zi<(xfbh`tAKv{LytnK4cevz*t7VlWRdd;{LEFtx~ z$#B_Ij7cpoFAvCb5~>ie^?)FfQo>{?m>Co*P>lk6go7T)TMv|*3Uvw($-u{F5JF+5 ziF(yp@PoI}cgz(xE*Czh%+qS{p50r^(x1G+&2Xbel;K|J*oIcT$cOn7Bo0t3QdEJ1 z(66VYFaB zdNBt=5L7Bb6B0-Y4|XDoXAnb^$U_HnSSXmzJGe|5HXtf(QopS6BwdtsIljHR8NbcF+=E5 z=PxvTpIl31sWCj}wbXKYRw%4vr>EIdNOmhLjG*gcIca1_m7|G>-j@zcl#+CZ@zGo) zZM**KqTb|VZ(_pv(rfs5?+xs@5yKxHb=by#yq81V&7(gr`4w09kKpUaS0T1$2|i=r z!WGd-svAOf(iABvVcPwk|?CyPJ{l>>OZ+YTp z;GS`-jHG}TvZE24bDnb!_!jc%XF!Tj6irbCM3c2{x<^r5N&>28wBeh~PzayDva)(g zB!b#BYSOqZjZhkOX%rXVQXD`q7%VLfPVjPlYmvW@>!JYHhTrcm@_7x9q9{_TPPeM6 zQula$s;U>bJ>Ei(;o(-H517Ao>!uB@t*wZ6chAr`q;BT776@qOl`y-jxhB$3!7)OL z#4e7Icj*lML_!3_?V>~M5c|bh@w=#!ck-eBKict^-7z*c2Z{PUbcBAPN#ZW?vbZAZ z*zyherE*=ZcIwnFMqGpu_M@xcfvIJe(zY&_i#MZKCFg;e31(%wTVC!r3`1HaJpTgQ zIUEjHWv*R`TjNby<$vu=!<**jdc2fX@_K0#tIV;3!>=}d)pzJgi%#^je`Sh-4wz|X zL00Kbt$zEi=l8vK;GH9%*g|L4g`2*ec=#$D&X{pF@TCT+Ksq6HNEaL~=x*c}!0o~D zNG^REG0D=Ni00Dqs7aRgWHgtu^{1ES(y686ba8nuU080CrCp6-+y6us+LDPji<5~& zk{ijk_FVL|xA*jPSX!=obJ3TD`}_L%+r7o+-Fo;kw!p94mCQ#fosn^bv0UZrpOatZrJ`Qey_N!-hi26XbT z)v=LkYZEO^$z-xIvEuIbw$7DR@lYr_FB*%*BGE*mu_2k9JZnPp3z;-C&t_lFlXKFj P_Vv5EjorQ(Zn*yerAcWx literal 0 HcmV?d00001 diff --git a/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/rampatch_tlv_3.2.tlv b/meta-digi-arm/recipes-bsp/firmware-qualcomm/firmware-qualcomm/qca65X4_bt_4/rampatch_tlv_3.2.tlv new file mode 100644 index 0000000000000000000000000000000000000000..def7cc30a2af7eba36e4c5856856ba71d1a7de19 GIT binary patch literal 54228 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 literal 0 HcmV?d00001 From ba7da3142154d7ec4988f8dc27419ae205f7d32d Mon Sep 17 00:00:00 2001 From: Mike Engel Date: Fri, 26 Feb 2021 12:43:55 +0100 Subject: [PATCH 54/54] openssl: enable devcrypto engine support This commit adds the support for the cryptodev engine into OpenSSL. So OpenSSL can use hardware accelerated support through the CAAM driver. Signed-off-by: Mike Engel https://jira.digi.com/browse/DEL-7439 --- meta-digi-dey/recipes-connectivity/openssl/openssl_%.bbappend | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta-digi-dey/recipes-connectivity/openssl/openssl_%.bbappend b/meta-digi-dey/recipes-connectivity/openssl/openssl_%.bbappend index e87c828c6..80d5ebada 100644 --- a/meta-digi-dey/recipes-connectivity/openssl/openssl_%.bbappend +++ b/meta-digi-dey/recipes-connectivity/openssl/openssl_%.bbappend @@ -17,3 +17,5 @@ SRC_URI += " \ # Add the openssl binary whenever the base package is pulled in via a dependency RRECOMMENDS_libcrypto += "openssl-bin" + +PACKAGECONFIG += "cryptodev-linux"