From 74fd3be7c0d23cdf0fe227a50b18f3d506f06ce6 Mon Sep 17 00:00:00 2001 From: Valentin Jec Date: Fri, 26 Jul 2024 18:14:51 +0300 Subject: imx-dpu-g2d: Upgrade imxdpu-g2d from 2.1.12 to 2.1.14 imx-gpu-g2d: Upgrade from 6.4.11.p2.4 to 6.4.11.p2.6 imx-g2d-samples: Update to latest 431f311a imx-pxp-g2d: Update to latest edd234c4e Signed-off-by: Valentin Jec --- recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.12.bb | 45 -------------------- recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.14.bb | 49 ++++++++++++++++++++++ recipes-graphics/imx-g2d/imx-g2d-samples_git.bb | 2 +- .../imx-g2d/imx-gpu-g2d_6.4.11.p2.4.bb | 44 ------------------- .../imx-g2d/imx-gpu-g2d_6.4.11.p2.6.bb | 44 +++++++++++++++++++ recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb | 5 ++- 6 files changed, 97 insertions(+), 92 deletions(-) delete mode 100644 recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.12.bb create mode 100644 recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.14.bb delete mode 100644 recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.4.bb create mode 100644 recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.6.bb diff --git a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.12.bb b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.12.bb deleted file mode 100644 index b10cd997a..000000000 --- a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.12.bb +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright (C) 2016 Freescale Semiconductor -# Copyright 2017-2024 NXP -# Released under the MIT license (see COPYING.MIT for the terms) - -DESCRIPTION = "G2D library using i.MX DPU" -LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=44a8052c384584ba09077e85a3d1654f" - -DEPENDS = "libdrm ${LIBGAL_IMX}" -LIBGAL_IMX = "libgal-imx" -LIBGAL_IMX:mx95-nxp-bsp = "" - -PROVIDES += "virtual/libg2d" - -SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;fsl-eula=true;name=${IMX_SRC_URI_NAME}" -IMX_BIN_NAME = "${BPN}-${IMX_SRC_URI_NAME}-${PV}-${IMX_SRCREV_ABBREV}" - -IMX_SRCREV_ABBREV = "ee47ef7" -IMX_SRC_URI_NAME = "v1" -SRC_URI[v1.md5sum] = "4150f09e27178101fdccb792b7cbc526" -SRC_URI[v1.sha256sum] = "bd7849376564f7e2eb55210f156afae00b49451de6de80cfbc5fbda15be6a2b0" - -IMX_SRCREV_ABBREV:mx95-nxp-bsp = "ee47ef7" -IMX_SRC_URI_NAME:mx95-nxp-bsp = "v2" -SRC_URI[v2.md5sum] = "031396e175c432eb6c84aad8e0a6fc7d" -SRC_URI[v2.sha256sum] = "0646d8cc8e53f22fc15a61f0b78cd5f73460520f91949bc1d29c10ecbf77307b" - -S = "${WORKDIR}/${IMX_BIN_NAME}" - -inherit fsl-eula-unpack - -do_install () { - install -d ${D}${libdir} - install -d ${D}${includedir} - cp -d ${S}/g2d/usr/lib/*.so* ${D}${libdir} - cp -Pr ${S}/g2d/usr/include/* ${D}${includedir} -} - -# 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" - -COMPATIBLE_MACHINE = "(imxdpu)" diff --git a/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.14.bb b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.14.bb new file mode 100644 index 000000000..23168ae16 --- /dev/null +++ b/recipes-graphics/imx-g2d/imx-dpu-g2d_2.1.14.bb @@ -0,0 +1,49 @@ +# Copyright (C) 2016 Freescale Semiconductor +# Copyright 2017-2024 NXP +# Released under the MIT license (see COPYING.MIT for the terms) + +DESCRIPTION = "G2D library using i.MX DPU" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://COPYING;md5=10c0fda810c63b052409b15a5445671a" + +DEPENDS = "libdrm ${LIBGAL_IMX}" +LIBGAL_IMX = "libgal-imx" +LIBGAL_IMX:mx95-nxp-bsp = "" + +PROVIDES += "virtual/libg2d" + +SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;fsl-eula=true;name=${IMX_SRC_URI_NAME}" +IMX_BIN_NAME = "${BPN}-${IMX_SRC_URI_NAME}-${PV}-${IMX_SRCREV_ABBREV}" + +IMX_SRCREV_ABBREV = "6a00326" +IMX_SRC_URI_NAME = "v1" +SRC_URI[v1.md5sum] = "470ad0bdef7dec171395991d47b39e2c" +SRC_URI[v1.sha256sum] = "4d8e4b536bd24eedfbce375a06c19ab74603291b8b5a5be36b03fbf6e016e940" + +IMX_SRCREV_ABBREV:mx95-nxp-bsp = "6a00326" +IMX_SRC_URI_NAME:mx95-nxp-bsp = "v2" +SRC_URI[v2.md5sum] = "cf807c38a110763c19a12d6d595b4b09" +SRC_URI[v2.sha256sum] = "1b86d4fecd5026e871da0de8ed6382c962460468d8151ae2f95b72d00bca17ee" + +S = "${WORKDIR}/${IMX_BIN_NAME}" + +inherit fsl-eula-unpack + +do_install () { + install -d ${D}${libdir} + install -d ${D}${includedir} + cp -d ${S}/g2d/usr/lib/*.so* ${D}${libdir} + cp -Pr ${S}/g2d/usr/include/* ${D}${includedir} +} + +INSANE_SKIP:append:libc-musl = " file-rdeps" +RDEPENDS:${PN}:append:libc-musl = " gcompat" + +# 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" + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" +COMPATIBLE_MACHINE = "(imxdpu)" diff --git a/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb index 55f88da39..0f0c18967 100644 --- a/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb +++ b/recipes-graphics/imx-g2d/imx-g2d-samples_git.bb @@ -10,7 +10,7 @@ PV = "2.1+git${SRCPV}" SRC_URI = "${GPU_G2D_SAMPLES_SRC};branch=${SRCBRANCH}" GPU_G2D_SAMPLES_SRC ?= "git://github.com/nxp-imx/g2d-samples.git;protocol=https" SRCBRANCH = "imx_2.1" -SRCREV = "bec2f3839737b0e83b68b1c976373d9a78e5762f" +SRCREV = "431f311a41ca052902ea0d6445e74defe0a4df2d" S = "${WORKDIR}/git" diff --git a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.4.bb b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.4.bb deleted file mode 100644 index 3ebb8f884..000000000 --- a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.4.bb +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (C) 2016 Freescale Semiconductor -# Copyright 2017-2024 NXP -# Copyright 2018 (C) O.S. Systems Software LTDA. -# Released under the MIT license (see COPYING.MIT for the terms) - -DESCRIPTION = "G2D library using i.MX GPU" -LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://COPYING;md5=44a8052c384584ba09077e85a3d1654f" -DEPENDS = "libgal-imx" -PROVIDES = "virtual/libg2d" - -SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;name=${TARGET_ARCH};fsl-eula=true" -IMX_BIN_NAME = "${BP}-${TARGET_ARCH}-${IMX_SRCREV_ABBREV}" -IMX_SRCREV_ABBREV = "b07999b" -SRC_URI[aarch64.md5sum] = "fa30ce75803697d5131d707b300258ee" -SRC_URI[aarch64.sha256sum] = "2dff0279ead132ec5fa61dbe9b2b1969135e8ce9fe7487957371327357d70ac7" -SRC_URI[arm.md5sum] = "c81be7c93b60c7d3f3eb5b7bfeda42a4" -SRC_URI[arm.sha256sum] = "e17ac373193622ec0c9aa490ef1b93551d22a2e88ee9f1098ed984e62f02a06c" - -S = "${WORKDIR}/${IMX_BIN_NAME}" - -inherit fsl-eula-unpack - -SOC_INSTALL_DIR = "SOC_INSTALL_DIR_NOT_SET" -SOC_INSTALL_DIR:mx8mm-nxp-bsp = "mx8mm" - -do_install () { - install -d ${D}${libdir} - install -d ${D}${includedir} - cp -d ${S}/g2d/usr/lib/*.so* ${D}${libdir} - if [ -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR} ]; then - cp -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR}/*.so* ${D}${libdir} - fi - cp -Pr ${S}/g2d/usr/include/* ${D}${includedir} -} - -# 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" - -PACKAGE_ARCH = "${MACHINE_SOCARCH}" -COMPATIBLE_MACHINE = "(imxgpu2d)" diff --git a/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.6.bb b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.6.bb new file mode 100644 index 000000000..d12d9c1a8 --- /dev/null +++ b/recipes-graphics/imx-g2d/imx-gpu-g2d_6.4.11.p2.6.bb @@ -0,0 +1,44 @@ +# Copyright (C) 2016 Freescale Semiconductor +# Copyright 2017-2024 NXP +# Copyright 2018 (C) O.S. Systems Software LTDA. +# Released under the MIT license (see COPYING.MIT for the terms) + +DESCRIPTION = "G2D library using i.MX GPU" +LICENSE = "Proprietary" +LIC_FILES_CHKSUM = "file://COPYING;md5=10c0fda810c63b052409b15a5445671a" +DEPENDS = "libgal-imx" +PROVIDES = "virtual/libg2d" + +SRC_URI = "${FSL_MIRROR}/${IMX_BIN_NAME}.bin;name=${TARGET_ARCH};fsl-eula=true" +IMX_BIN_NAME = "${BP}-${TARGET_ARCH}-${IMX_SRCREV_ABBREV}" +IMX_SRCREV_ABBREV = "bc7b6a2" +SRC_URI[aarch64.md5sum] = "4b12d0434d612b57ff4d7df690c3154f" +SRC_URI[aarch64.sha256sum] = "b2e4c580bf887042f479fde7c8b07c6215794d8123263d10ff0c167af7ba5918" +SRC_URI[arm.md5sum] = "4bead15838f47793f59cb374c10c2dd2" +SRC_URI[arm.sha256sum] = "413610ce4730eb9adbde30c8ad4a72df3edd69d84e1154a0c29efa7f33a30663" + +S = "${WORKDIR}/${IMX_BIN_NAME}" + +inherit fsl-eula-unpack + +SOC_INSTALL_DIR = "SOC_INSTALL_DIR_NOT_SET" +SOC_INSTALL_DIR:mx8mm-nxp-bsp = "mx8mm" + +do_install () { + install -d ${D}${libdir} + install -d ${D}${includedir} + cp -d ${S}/g2d/usr/lib/*.so* ${D}${libdir} + if [ -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR} ]; then + cp -d ${S}/g2d/usr/lib/${SOC_INSTALL_DIR}/*.so* ${D}${libdir} + fi + cp -Pr ${S}/g2d/usr/include/* ${D}${includedir} +} + +# 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" + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" +COMPATIBLE_MACHINE = "(imxgpu2d)" diff --git a/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb index 50c37a2c5..4481188b1 100644 --- a/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb +++ b/recipes-graphics/imx-g2d/imx-pxp-g2d_git.bb @@ -4,7 +4,7 @@ DESCRIPTION = "G2D library using i.MX PXP" LICENSE = "Proprietary" -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=44a8052c384584ba09077e85a3d1654f" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=10c0fda810c63b052409b15a5445671a" PROVIDES += "virtual/libg2d" @@ -13,7 +13,7 @@ PV = "2.1.0+git${SRCPV}" SRC_URI = "${IMX_PXP_G2D_SRC};branch=${SRCBRANCH}" IMX_PXP_G2D_SRC ?= "git://github.com/nxp-imx/imx-g2d-pxp.git;protocol=https" SRCBRANCH = "imx_2.1" -SRCREV = "9f9f41fa0e86757f856e1ec7824f56022fe94586" +SRCREV = "edd234c4e1c58cd2453963d19155d4d5d3800d07" S = "${WORKDIR}/git" @@ -25,4 +25,5 @@ do_install() { oe_runmake install } +PACKAGE_ARCH = "${MACHINE_SOCARCH}" COMPATIBLE_MACHINE = "(mx93-nxp-bsp)" -- cgit v1.2.3-54-g00ecf From 46949846a64108f4fec63b33c4d64cfe7415009a Mon Sep 17 00:00:00 2001 From: Valentin Jec Date: Fri, 26 Jul 2024 18:16:56 +0300 Subject: imx-gpu-viv: Upgrade from 6.4.11.p2.4-* to 6.4.11.p2.6-* Signed-off-by: Valentin Jec --- .../imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch32.bb | 10 ---------- .../imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch64.bb | 10 ---------- .../imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch32.bb | 10 ++++++++++ .../imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch64.bb | 10 ++++++++++ 4 files changed, 20 insertions(+), 20 deletions(-) delete mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch32.bb delete mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch64.bb create mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch32.bb create mode 100644 recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch64.bb diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch32.bb deleted file mode 100644 index 2b1724664..000000000 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch32.bb +++ /dev/null @@ -1,10 +0,0 @@ -require imx-gpu-viv-6.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=44a8052c384584ba09077e85a3d1654f" - -IMX_SRCREV_ABBREV = "b07999b" - -SRC_URI[md5sum] = "eae60321ac971293d3213c88b9198ca0" -SRC_URI[sha256sum] = "ef9be89d3dd3b6448c720e061a8b81bdd26f7a5ff70de1786a5feef2e4836474" - -COMPATIBLE_MACHINE = "(mx6q-nxp-bsp|mx6dl-nxp-bsp|mx6sx-nxp-bsp|mx6sl-nxp-bsp|mx7ulp-nxp-bsp)" diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch64.bb deleted file mode 100644 index b3c397362..000000000 --- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.4-aarch64.bb +++ /dev/null @@ -1,10 +0,0 @@ -require imx-gpu-viv-6.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=44a8052c384584ba09077e85a3d1654f" - -IMX_SRCREV_ABBREV = "b07999b" - -SRC_URI[md5sum] = "142d9b9ef6f440b8e307569873bdb6b5" -SRC_URI[sha256sum] = "ba86656c357c5d9793058695f320e4cf650d4693e84321870bad392f2a622807" - -COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch32.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch32.bb new file mode 100644 index 000000000..db99b1c71 --- /dev/null +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch32.bb @@ -0,0 +1,10 @@ +require imx-gpu-viv-6.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=10c0fda810c63b052409b15a5445671a" + +IMX_SRCREV_ABBREV = "bc7b6a2" + +SRC_URI[md5sum] = "d921b6daf89eba252b0b5b59abe0d690" +SRC_URI[sha256sum] = "cf6e42c9c9a903cd933b767d411131390d237a4b92ecad579db57d54538707f3" + +COMPATIBLE_MACHINE = "(mx6q-nxp-bsp|mx6dl-nxp-bsp|mx6sx-nxp-bsp|mx6sl-nxp-bsp|mx7ulp-nxp-bsp)" diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch64.bb b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch64.bb new file mode 100644 index 000000000..fb73322ae --- /dev/null +++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv_6.4.11.p2.6-aarch64.bb @@ -0,0 +1,10 @@ +require imx-gpu-viv-6.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=10c0fda810c63b052409b15a5445671a" + +IMX_SRCREV_ABBREV = "bc7b6a2" + +SRC_URI[md5sum] = "e6ac75617944d9a9dbba90f863f07e0f" +SRC_URI[sha256sum] = "5fe828113b9b2801b3fd60cd15eadfd0ac747e5897ef7db7fa22f80e7dd8a8e1" + +COMPATIBLE_MACHINE = "(mx8-nxp-bsp)" -- cgit v1.2.3-54-g00ecf From 6204783c642c92e3d59d0cbea494df59d5958cd7 Mon Sep 17 00:00:00 2001 From: Valentin Jec Date: Fri, 26 Jul 2024 18:25:22 +0300 Subject: mesa-demos: Add patch for egl clear backgrounds black color mesa: Add patches for video showing wrong frame and fix virgl driver assert issue Signed-off-by: Valentin Jec --- .../0001-egl-clear-backgrounds-black.patch | 30 ++++++++++++++ recipes-graphics/mesa/mesa-demos_%.bbappend | 3 +- ...GS-7599-cso-fix-virgl-driver-assert-issue.patch | 47 ++++++++++++++++++++++ ...73-egl-dri2-fix-video-showing-wrong-frame.patch | 33 +++++++++++++++ recipes-graphics/mesa/mesa_%.bbappend | 3 ++ 5 files changed, 115 insertions(+), 1 deletion(-) create mode 100644 recipes-graphics/mesa/mesa-demos/0001-egl-clear-backgrounds-black.patch create mode 100644 recipes-graphics/mesa/mesa/0001-MGS-7599-cso-fix-virgl-driver-assert-issue.patch create mode 100644 recipes-graphics/mesa/mesa/0001-MGS-7673-egl-dri2-fix-video-showing-wrong-frame.patch diff --git a/recipes-graphics/mesa/mesa-demos/0001-egl-clear-backgrounds-black.patch b/recipes-graphics/mesa/mesa-demos/0001-egl-clear-backgrounds-black.patch new file mode 100644 index 000000000..fa46823f1 --- /dev/null +++ b/recipes-graphics/mesa/mesa-demos/0001-egl-clear-backgrounds-black.patch @@ -0,0 +1,30 @@ +From cad7eb0f0487aea64c4460bd6ad95b5c9537d35a Mon Sep 17 00:00:00 2001 +From: Jiyu Yang +Date: Thu, 11 Apr 2024 16:30:50 +0800 +Subject: [PATCH] egl: clear backgrounds black + +if 50% translucency used, the application render result can vary +depending on the format chosen, such as R10G10B10A2 or RGB24. + +Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/demos/-/merge_requests/174] +Signed-off-by: Jiyu Yang +--- + src/egl/opengles2/es2gears.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/egl/opengles2/es2gears.c b/src/egl/opengles2/es2gears.c +index db67f3a9..4e81afe7 100644 +--- a/src/egl/opengles2/es2gears.c ++++ b/src/egl/opengles2/es2gears.c +@@ -515,7 +515,7 @@ gears_draw(void) + GLfloat transform[16]; + identity(transform); + +- glClearColor(0.0, 0.0, 0.0, 0.0); ++ glClearColor(0.0, 0.0, 0.0, 1.0); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + /* Translate and rotate the view */ +-- +2.34.1 + diff --git a/recipes-graphics/mesa/mesa-demos_%.bbappend b/recipes-graphics/mesa/mesa-demos_%.bbappend index ff5d71ae1..1c5dd3daf 100644 --- a/recipes-graphics/mesa/mesa-demos_%.bbappend +++ b/recipes-graphics/mesa/mesa-demos_%.bbappend @@ -2,7 +2,8 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" SRC_URI:append:imxgpu = " \ file://Replace-glWindowPos2iARB-calls-with-glWindowPos2i.patch \ - file://fix-clear-build-break.patch" + file://fix-clear-build-break.patch \ + file://0001-egl-clear-backgrounds-black.patch" REQUIRED_DISTRO_FEATURES:remove:imxgpu = "x11" diff --git a/recipes-graphics/mesa/mesa/0001-MGS-7599-cso-fix-virgl-driver-assert-issue.patch b/recipes-graphics/mesa/mesa/0001-MGS-7599-cso-fix-virgl-driver-assert-issue.patch new file mode 100644 index 000000000..3dc8db099 --- /dev/null +++ b/recipes-graphics/mesa/mesa/0001-MGS-7599-cso-fix-virgl-driver-assert-issue.patch @@ -0,0 +1,47 @@ +From 612c3dc98d5d050b9cfee16ec77ca3c8358caa0d Mon Sep 17 00:00:00 2001 +From: Wujian Sun +Date: Mon, 29 Apr 2024 17:29:16 +0800 +Subject: [PATCH] MGS-7599 cso: fix virgl driver assert issue + +A workaround that remove PIPE_MAX_SAMPLERS and +PIPE_MAX_CONSTANT_BUFFERS assert. + +Upstream-Status: Inappropriate [i.MX-specific] + +Signed-off-by: Wujian Sun +--- + src/gallium/auxiliary/cso_cache/cso_context.c | 2 -- + src/gallium/drivers/virgl/virgl_screen.c | 2 +- + 2 files changed, 1 insertion(+), 3 deletions(-) + +diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c b/src/gallium/auxiliary/cso_cache/cso_context.c +index 3e86def31c5..ffc6d22da9c 100644 +--- a/src/gallium/auxiliary/cso_cache/cso_context.c ++++ b/src/gallium/auxiliary/cso_cache/cso_context.c +@@ -403,10 +403,8 @@ cso_unbind_context(struct cso_context *ctx) + PIPE_SHADER_CAP_MAX_CONST_BUFFERS); + int maximg = scr->get_shader_param(scr, sh, + PIPE_SHADER_CAP_MAX_SHADER_IMAGES); +- assert(maxsam <= PIPE_MAX_SAMPLERS); + assert(maxview <= PIPE_MAX_SHADER_SAMPLER_VIEWS); + assert(maxssbo <= PIPE_MAX_SHADER_BUFFERS); +- assert(maxcb <= PIPE_MAX_CONSTANT_BUFFERS); + assert(maximg <= PIPE_MAX_SHADER_IMAGES); + if (maxsam > 0) { + ctx->base.pipe->bind_sampler_states(ctx->base.pipe, sh, 0, maxsam, zeros); +diff --git a/src/gallium/drivers/virgl/virgl_screen.c b/src/gallium/drivers/virgl/virgl_screen.c +index 389a1935cc3..7c7f8ba576b 100644 +--- a/src/gallium/drivers/virgl/virgl_screen.c ++++ b/src/gallium/drivers/virgl/virgl_screen.c +@@ -435,7 +435,7 @@ virgl_get_shader_param(struct pipe_screen *screen, + return 1; + case PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERS: + return MIN2(vscreen->caps.caps.v2.max_shader_sampler_views, +- PIPE_MAX_SHADER_SAMPLER_VIEWS); ++ PIPE_MAX_SAMPLERS); + case PIPE_SHADER_CAP_INTEGERS: + return vscreen->caps.caps.v1.glsl_level >= 130; + case PIPE_SHADER_CAP_MAX_CONTROL_FLOW_DEPTH: +-- +2.17.1 + diff --git a/recipes-graphics/mesa/mesa/0001-MGS-7673-egl-dri2-fix-video-showing-wrong-frame.patch b/recipes-graphics/mesa/mesa/0001-MGS-7673-egl-dri2-fix-video-showing-wrong-frame.patch new file mode 100644 index 000000000..0cdcbfca6 --- /dev/null +++ b/recipes-graphics/mesa/mesa/0001-MGS-7673-egl-dri2-fix-video-showing-wrong-frame.patch @@ -0,0 +1,33 @@ +From 188d7b01037e5a0249e63c2600cf15a288a9ff3f Mon Sep 17 00:00:00 2001 +From: Wujian Sun +Date: Fri, 19 Apr 2024 18:38:17 +0800 +Subject: [PATCH] MGS-7673 egl/dri2: fix video showing wrong frame + +Softpipe driver doesn't support EGL_EXT_image_dma_buf_import_modifiers +extension. +Should not report the extension. + +Upstream-Status: Pending + +Signed-off-by: Wujian Sun +--- + src/egl/drivers/dri2/egl_dri2.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c +index 992f0e3d46d..6ee209d4b47 100644 +--- a/src/egl/drivers/dri2/egl_dri2.c ++++ b/src/egl/drivers/dri2/egl_dri2.c +@@ -942,7 +942,8 @@ dri2_setup_screen(_EGLDisplay *disp) + + #ifdef HAVE_LIBDRM + if (dri2_dpy->image->base.version >= 8 && +- dri2_dpy->image->createImageFromDmaBufs) { ++ dri2_dpy->image->createImageFromDmaBufs && ++ strcmp("softpipe", pscreen->get_name(pscreen))) { + disp->Extensions.EXT_image_dma_buf_import = EGL_TRUE; + disp->Extensions.EXT_image_dma_buf_import_modifiers = EGL_TRUE; + } +-- +2.17.1 + diff --git a/recipes-graphics/mesa/mesa_%.bbappend b/recipes-graphics/mesa/mesa_%.bbappend index acddfbc66..f2375a55c 100644 --- a/recipes-graphics/mesa/mesa_%.bbappend +++ b/recipes-graphics/mesa/mesa_%.bbappend @@ -1,6 +1,9 @@ PROVIDES:remove:imxgpu = "virtual/egl" PROVIDES:remove:imxgpu3d = "virtual/libgl virtual/libgles1 virtual/libgles2" +SRC_URI:append:mx93-nxp-bsp = " file://0001-MGS-7673-egl-dri2-fix-video-showing-wrong-frame.patch" +SRC_URI:append:imx-nxp-bsp = " file://0001-MGS-7599-cso-fix-virgl-driver-assert-issue.patch" + PACKAGECONFIG:remove:imxgpu = "egl gbm" PACKAGECONFIG:remove:imxgpu3d = "gles" -- cgit v1.2.3-54-g00ecf From 4297c9d7b0799b48527efa990b8b5e8b35e41596 Mon Sep 17 00:00:00 2001 From: Valentin Jec Date: Mon, 29 Jul 2024 10:04:07 +0300 Subject: weston: Upgrade from 12.0.3.imx to 12.0.4.imx Signed-off-by: Valentin Jec --- recipes-graphics/wayland/weston_12.0.3.imx.bb | 194 ------------------------- recipes-graphics/wayland/weston_12.0.4.imx.bb | 195 ++++++++++++++++++++++++++ 2 files changed, 195 insertions(+), 194 deletions(-) delete mode 100644 recipes-graphics/wayland/weston_12.0.3.imx.bb create mode 100644 recipes-graphics/wayland/weston_12.0.4.imx.bb diff --git a/recipes-graphics/wayland/weston_12.0.3.imx.bb b/recipes-graphics/wayland/weston_12.0.3.imx.bb deleted file mode 100644 index 14b79f18c..000000000 --- a/recipes-graphics/wayland/weston_12.0.3.imx.bb +++ /dev/null @@ -1,194 +0,0 @@ -# This recipe is for the i.MX fork of weston. For ease of -# maintenance, the top section is a verbatim copy of an OE-core -# recipe. The second section customizes the recipe for i.MX. - -########### OE-core copy ################## -# Upstream hash: 92a460b55e7290ec0006365219189761f7226f7c - -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=eb6d5297798cabe2ddc65e2af519bcf0 \ - " - -SRC_URI = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz \ - file://weston.png \ - file://weston.desktop \ - file://xwayland.weston-start \ - file://systemd-notify.weston-start \ - " - -SRC_URI[sha256sum] = "eb686a7cf00992a23b17f192fca9a887313e92c346ee35d8575196983d656b4a" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" -UPSTREAM_CHECK_REGEX = "weston-(?P\d+\.\d+\.(?!9\d+)\d+)" - -inherit meson pkgconfig useradd - -# depends on virtual/egl -# -require ${THISDIR}/required-distro-features.inc - -DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0" -DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" - -LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '', d)}" - -WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" - -EXTRA_OEMESON += "-Dpipewire=false" - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms wayland egl clients', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)} \ - ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ - launcher-libseat \ - image-jpeg \ - screenshare \ - shell-desktop \ - shell-fullscreen \ - shell-ivi \ - shell-kiosk \ - " - -# Can be 'damage', 'im', 'egl', 'shm', 'touch', 'dmabuf-feedback', 'dmabuf-v4l', 'dmabuf-egl' or 'all' -SIMPLECLIENTS ?= "all" - -# -# 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 libxcursor" -# Headless Weston -PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" -# Weston on RDP -PACKAGECONFIG[rdp] = "-Dbackend-rdp=true,-Dbackend-rdp=false,freerdp" -# 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 support -PACKAGECONFIG[systemd] = "-Dsystemd=true,-Dsystemd=false,systemd dbus" -# Weston with Xwayland support (requires X11 and Wayland) -PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcb libxcursor xcb-util-cursor xwayland" -# colord CMS support -PACKAGECONFIG[colord] = "-Ddeprecated-color-management-colord=true,-Ddeprecated-color-management-colord=false,colord" -# Clients support -PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLECLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" -# Virtual remote output with GStreamer on DRM backend -PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0 gstreamer1.0-plugins-base" -# 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" -# Kiosk shell -PACKAGECONFIG[shell-kiosk] = "-Dshell-kiosk=true,-Dshell-kiosk=false" -# JPEG image loading support -PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg" -# support libseat based launch -PACKAGECONFIG[launcher-libseat] = "-Dlauncher-libseat=true,-Dlauncher-libseat=false,seatd" -# deprecated and superseded by libseat launcher -PACKAGECONFIG[launcher-logind] = "-Ddeprecated-launcher-logind=true,-Ddeprecated-launcher-logind=false," -# screencasting via PipeWire -PACKAGECONFIG[pipewire] = "-Dbackend-pipewire=true,-Dbackend-pipewire=false,pipewire" -# VNC remote screensharing -PACKAGECONFIG[vnc] = "-Dbackend-vnc=true,-Dbackend-vnc=false,neatvnc" - - -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 ${UNPACKDIR}/weston.desktop ${D}${datadir}/applications - - install -d ${D}${datadir}/icons/hicolor/48x48/apps - install ${UNPACKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps - fi - - if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then - install -Dm 644 ${UNPACKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland - fi - - if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then - install -Dm 644 ${UNPACKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify - 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} = "${sysconfdir} ${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 += "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" - -########### End of OE-core copy ########### - -########### i.MX overrides ################ - -SUMMARY = "Weston, a Wayland compositor, i.MX fork" -LIC_FILES_CHKSUM:remove = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70" -LIC_FILES_CHKSUM += "file://LICENSE;md5=d79ee9e66bb0f95d3386a7acae780b70" - -DEFAULT_PREFERENCE = "-1" - -SRC_URI:remove = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz" -SRC_URI:prepend = "git://github.com/nxp-imx/weston-imx.git;protocol=https;branch=${SRCBRANCH} " -SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch" -SRCBRANCH = "weston-imx-12.0.3" -SRCREV = "b0d890915ee191ceb10e79ea9a830281f5c6258f" -S = "${WORKDIR}/git" - -PACKAGECONFIG_IMX_REMOVALS ?= "wayland x11" -PACKAGECONFIG:remove = "${PACKAGECONFIG_IMX_REMOVALS}" - -PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}" -PACKAGECONFIG_G2D ??= "" -PACKAGECONFIG_G2D:imxgpu2d ??= "imxg2d" -PACKAGECONFIG_G2D:mx93-nxp-bsp ??= "imxg2d" - -# Weston with i.MX G2D renderer -PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d" - -# links with imx-gpu libs which are pre-built for glibc -# gcompat will address it during runtime -LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" - -PACKAGE_ARCH = "${MACHINE_SOCARCH}" -COMPATIBLE_MACHINE = "(imx-nxp-bsp)" - -########### End of i.MX overrides ######### diff --git a/recipes-graphics/wayland/weston_12.0.4.imx.bb b/recipes-graphics/wayland/weston_12.0.4.imx.bb new file mode 100644 index 000000000..db0bfc4e5 --- /dev/null +++ b/recipes-graphics/wayland/weston_12.0.4.imx.bb @@ -0,0 +1,195 @@ +# This recipe is for the i.MX fork of weston. For ease of +# maintenance, the top section is a verbatim copy of an OE-core +# recipe. The second section customizes the recipe for i.MX. + +########### OE-core copy ################## +# Upstream hash: 92a460b55e7290ec0006365219189761f7226f7c + +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=eb6d5297798cabe2ddc65e2af519bcf0 \ + " + +SRC_URI = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz \ + file://weston.png \ + file://weston.desktop \ + file://xwayland.weston-start \ + file://systemd-notify.weston-start \ + " + +SRC_URI[sha256sum] = "eb686a7cf00992a23b17f192fca9a887313e92c346ee35d8575196983d656b4a" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" +UPSTREAM_CHECK_REGEX = "weston-(?P\d+\.\d+\.(?!9\d+)\d+)" + +inherit meson pkgconfig useradd + +# depends on virtual/egl +# +require ${THISDIR}/required-distro-features.inc + +DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0" +DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" + +LDFLAGS += "${@bb.utils.contains('DISTRO_FEATURES', 'lto', '-Wl,-z,undefs', '', d)}" + +WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" + +EXTRA_OEMESON += "-Dpipewire=false" + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms wayland egl clients', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'systemd x11', d)} \ + ${@bb.utils.contains_any('DISTRO_FEATURES', 'wayland x11', '', 'headless', d)} \ + launcher-libseat \ + image-jpeg \ + screenshare \ + shell-desktop \ + shell-fullscreen \ + shell-ivi \ + shell-kiosk \ + " + +# Can be 'damage', 'im', 'egl', 'shm', 'touch', 'dmabuf-feedback', 'dmabuf-v4l', 'dmabuf-egl' or 'all' +SIMPLECLIENTS ?= "all" + +# +# 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 libxcursor" +# Headless Weston +PACKAGECONFIG[headless] = "-Dbackend-headless=true,-Dbackend-headless=false" +# Weston on RDP +PACKAGECONFIG[rdp] = "-Dbackend-rdp=true,-Dbackend-rdp=false,freerdp" +# 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 support +PACKAGECONFIG[systemd] = "-Dsystemd=true,-Dsystemd=false,systemd dbus" +# Weston with Xwayland support (requires X11 and Wayland) +PACKAGECONFIG[xwayland] = "-Dxwayland=true,-Dxwayland=false,libxcb libxcursor xcb-util-cursor xwayland" +# colord CMS support +PACKAGECONFIG[colord] = "-Ddeprecated-color-management-colord=true,-Ddeprecated-color-management-colord=false,colord" +# Clients support +PACKAGECONFIG[clients] = "-Dsimple-clients=${SIMPLECLIENTS} -Ddemo-clients=true,-Dsimple-clients= -Ddemo-clients=false" +# Virtual remote output with GStreamer on DRM backend +PACKAGECONFIG[remoting] = "-Dremoting=true,-Dremoting=false,gstreamer1.0 gstreamer1.0-plugins-base" +# 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" +# Kiosk shell +PACKAGECONFIG[shell-kiosk] = "-Dshell-kiosk=true,-Dshell-kiosk=false" +# JPEG image loading support +PACKAGECONFIG[image-jpeg] = "-Dimage-jpeg=true,-Dimage-jpeg=false, jpeg" +# support libseat based launch +PACKAGECONFIG[launcher-libseat] = "-Dlauncher-libseat=true,-Dlauncher-libseat=false,seatd" +# deprecated and superseded by libseat launcher +PACKAGECONFIG[launcher-logind] = "-Ddeprecated-launcher-logind=true,-Ddeprecated-launcher-logind=false," +# screencasting via PipeWire +PACKAGECONFIG[pipewire] = "-Dbackend-pipewire=true,-Dbackend-pipewire=false,pipewire" +# VNC remote screensharing +PACKAGECONFIG[vnc] = "-Dbackend-vnc=true,-Dbackend-vnc=false,neatvnc" + + +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 ${UNPACKDIR}/weston.desktop ${D}${datadir}/applications + + install -d ${D}${datadir}/icons/hicolor/48x48/apps + install ${UNPACKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then + install -Dm 644 ${UNPACKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'yes', 'no', d)}" = "yes" ]; then + install -Dm 644 ${UNPACKDIR}/systemd-notify.weston-start ${D}${datadir}/weston-start/systemd-notify + 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} = "${sysconfdir} ${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 += "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" + +########### End of OE-core copy ########### + +########### i.MX overrides ################ + +SUMMARY = "Weston, a Wayland compositor, i.MX fork" +LIC_FILES_CHKSUM:remove = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70" +LIC_FILES_CHKSUM += "file://LICENSE;md5=d79ee9e66bb0f95d3386a7acae780b70" + +DEFAULT_PREFERENCE = "-1" + +SRC_URI:remove = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${PV}/downloads/${BPN}-${PV}.tar.xz" +SRC_URI:prepend = "${WESTON_SRC};branch=${SRCBRANCH} " +WESTON_SRC ?= "git://github.com/nxp-imx/weston-imx.git;protocol=https" +SRC_URI += "file://0001-Revert-protocol-no-found-wayland-scanner-with-Yocto-.patch" +SRCBRANCH = "weston-imx-12.0.4" +SRCREV = "461c49d20677cfd36d01a95dafbd9eedf2a4b09c" +S = "${WORKDIR}/git" + +PACKAGECONFIG_IMX_REMOVALS ?= "wayland x11" +PACKAGECONFIG:remove = "${PACKAGECONFIG_IMX_REMOVALS}" + +PACKAGECONFIG:append = " ${PACKAGECONFIG_G2D}" +PACKAGECONFIG_G2D ??= "" +PACKAGECONFIG_G2D:imxgpu2d ??= "imxg2d" +PACKAGECONFIG_G2D:mx93-nxp-bsp ??= "imxg2d" + +# Weston with i.MX G2D renderer +PACKAGECONFIG[imxg2d] = "-Drenderer-g2d=true,-Drenderer-g2d=false,virtual/libg2d" + +# links with imx-gpu libs which are pre-built for glibc +# gcompat will address it during runtime +LDFLAGS:append:imxgpu:libc-musl = " -Wl,--allow-shlib-undefined" + +PACKAGE_ARCH = "${MACHINE_SOCARCH}" +COMPATIBLE_MACHINE = "(imx-nxp-bsp)" + +########### End of i.MX overrides ######### -- cgit v1.2.3-54-g00ecf From 6338d5bda5b55ae8e2df2a6f30b45b02ebf5f153 Mon Sep 17 00:00:00 2001 From: Valentin Jec Date: Mon, 29 Jul 2024 10:04:27 +0300 Subject: wayland-protocols: Replace hardcoded SRC_URI with WAYLAND_PROTOCOLS_SRC variable Signed-off-by: Valentin Jec --- recipes-graphics/wayland/wayland-protocols_1.32.imx.bb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/recipes-graphics/wayland/wayland-protocols_1.32.imx.bb b/recipes-graphics/wayland/wayland-protocols_1.32.imx.bb index 6b2a70917..131f227de 100644 --- a/recipes-graphics/wayland/wayland-protocols_1.32.imx.bb +++ b/recipes-graphics/wayland/wayland-protocols_1.32.imx.bb @@ -9,7 +9,9 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=c7b12b6702da38ca028ace54aae3d484 \ file://stable/presentation-time/presentation-time.xml;endline=26;md5=4646cd7d9edc9fa55db941f2d3a7dc53" -SRC_URI = "git://github.com/nxp-imx/wayland-protocols-imx.git;protocol=https;branch=wayland-protocols-imx-${@oe.utils.trim_version("${PV}", 2)}" +SRC_URI = "${WAYLAND_PROTOCOLS_SRC};branch=${SRCBRANCH}" +WAYLAND_PROTOCOLS_SRC ?= "git://github.com/nxp-imx/wayland-protocols-imx.git;protocol=https" +SRCBRANCH = "wayland-protocols-imx-${@oe.utils.trim_version("${PV}", 2)}" SRCREV = "7ece577d467f8afb2f5a2f7fff3761a1e0ee9dad" S = "${WORKDIR}/git" -- cgit v1.2.3-54-g00ecf