subtree updates

meta-security: 30e755c592..283a773f24:
  Armin Kuster (2):
        meta-security: Drop ${PYTHON_PN}
        openscap: update to tip to fix new build issue.

  Jeremy A. Puhlman (4):
        arpwatch: fix misspelling of PACKAGECONFIG
        aprwatch: Add path for sendmail
        Check for usrmerge before removing /usr/lib
        arpwatch: install man8 dir

  Kevin Hao (4):
        docs: dm-verity.txt: Fix a typo
        dm-verity: Adjust the image names according to the oe-core change
        dm-verity: Set the IMAGE_FSTYPES correctly when dm-verity is enabled
        dm-verity-image-initramfs: Set IMAGE_NAME_SUFFIX to empty

  Max Krummenacher (1):
        layer.conf: Update for the scarthgap release series

  Mingli Yu (1):
        python3-pyinotify: Make asyncore support optional for Python 3

poky: 7165c23237..110ee701b3:
  Alejandro Hernandez Samaniego (1):
        python3-manifest: Sync RDEPENDS with latest version

  Alexander Kanavin (11):
        meson: correct upstream version check (exclude pre-releases)
        cargo-c-native: convert from git fetcher to crate fetcher
        cargo-c-native: update 0.9.18 -> 0.9.30
        man-pages: use env from coreutils-native
        sdk-manual: correctly describe separate build-sysroots tasks in direct sdk workflows
        dev/ref-manual: document conf-summary.txt together with conf-notes.txt
        dev-manual: improve descriptions of 'bitbake -S printdiff'
        wayland: fix upstream version check by asking gitlab directly
        python3: correct upstream version check
        bitbake: bitbake: improve descriptions of '-S printdiff'
        selftest/sstatetests: run CDN check twice, ignoring errors the first time

  Alexandre Truong (1):
        oeqa/selftest/devtool: fix test_devtool_add_git_style2

  Anibal Limon (1):
        wic: bootimg-partition allow to set var to get boot files

  BELOUARGA Mohamed (1):
        ref-manual: add documentation of the variable SPDX_NAMESPACE_PREFIX

  Bartosz Golaszewski (1):
        linux-firmware: update to 20240312

  Baruch Siach (1):
        oeqa/selftest/overlayfs: test read-only rootfs

  Bruce Ashfield (16):
        linux-yocto/6.6: cfg: generic arm64
        linux-yocto/6.6: cfg: riscv XHCI
        linux-yocto/6.6: update to v6.6.21
        linux-yocto/6.6: update CVE exclusions (6.6.21)
        linux-yocto/6.6: cfg: drop unsettable options
        linux-yocto/6.6: drm/tilcdc: Set preferred depth
        linux-yocto/6.6: update to v6.6.22
        linux-yocto/6.6: update CVE exclusions (6.6.22)
        yocto-bsps: update to v6.6.21
        linux-yocto/6.6: cfg: genericarm64 platform/peripheral support
        linux-yocto/6.6: cfg: genericarm64 configuration updates
        linux-yocto/6.6: nftables: ptest and cleanup tweaks
        linux-yocto/6.6: update to v6.6.23
        linux-yocto/6.6: update CVE exclusions (6.6.23)
        linux-yocto-dev: bump to v6.9
        lttng-modules: update to v2.13.12

  Changqing Li (1):
        dnf: fix Exception handling for class ProcessLock

  Chen Qi (1):
        ovmf: set CVE_PRODUCT and CVE_VERSION

  Christian Taedcke (1):
        kernel-fitImage: only include valid compatible line

  Derek Erdmann (1):
        bitbake: fetch2/git: Install Git LFS in local repository config

  Enrico Jörns (3):
        cml1: remove needless check for write_taint attribute
        cml1: prompt location of updated .config after do_menuconfig()
        perf: fix TMPDIR contamination for recent mainline kernels

  Enrico Scholz (1):
        shadow: fix copydir operation with 'pseudo'

  Felix Moessbauer (1):
        bitbake: utils: better estimate number of available cpus

  Harish Sadineni (3):
        gcc: Oe-selftest failure analysis - fix for tcl errors
        gcc: Oe-selftest failure analysis - fix for vect-simd test failures
        binutils: gprofng - change use of bignum to use of bignint

  Jermain Horsman (1):
        bblayers/makesetup.py: Move git utility functions to oe.buildcfg module

  Joe Slater (1):
        systemd: enable mac based names in NamePolicy

  Jose Quaresma (5):
        go.bbclass: set GOPROXY
        elfutils: fix unused variable BUFFER_SIZE
        go: keep the patches in order
        go: upgrade 1.22.1 -> 1.22.2
        sstatesig: fix netrc.NetrcParseError exception

  Joshua Watt (4):
        sstatesig: Set hash server credentials from bitbake variables
        bitbake: siggen: Add support for hashserve credentials
        sstatesig: Warn on bad .netrc
        bitbake: bitbake-hashclient: Warn on bad .netrc

  Jörg Sommer (1):
        autotools: update link in comment for cross compiling

  Kevin Hao (1):
        image-live.bbclass: Adjust the default value for INITRD_LIVE

  Khem Raj (13):
        systemd: Check for directory before chmod'ing it
        llvm: Update to 18.1.1 release
        elfutils: Fix build break with clang
        glibc: Update to tip of 2.39 branch
        pam: Fix build with musl
        piglit: Switch to upstreamed patch for musl fix
        qemuriscv: Fix kbd and mouse emulation for qemuriscv64
        llvm: Upgrade to 18.1.2 bugfix release
        glibc: Repace aarch configure patch fix with a backport
        valgrind: Backport fixes from 3.22 branch
        tcl: Forward port skip logic for musl ptests
        readline: Apply patches from readline-8.2-patches
        mesa: Drop LLVM-17 patch

  Lee Chee Yang (1):
        migration-guides: add release notes for 4.0.17

  Marcel Ziswiler (1):
        mesa: enable imagination powervr support

  Markus Volk (11):
        mesa: fix opencl-spirv build
        vala: merge bb and inc files
        vala: fix for gtk4 prior to 4.14
        libsoup: enable vapi support
        gsettings-desktop-schemas: update 45.0 -> 46.0
        libadwaita: update 1.4.4 -> 1.5.0
        gtk4: update 4.12.5 -> 4.14.1
        systemd: disable mdns feature in resolved for zeroconf
        webkitgtk: update 2.42.5 -> 2.44.0
        gtk+3: disable wayland without opengl
        epiphany: update 45.3 -> 46.0

  Martin Jansa (2):
        contributor-guide: be more specific about meta-* trees
        pixman: explicitly disable openmp in native builds

  Max Krummenacher (1):
        git: git-replacement-native: depend on ca-certificate

  Michael Opdenacker (8):
        manuals: add initial stylechecks with Vale
        profile-manual: usage.rst: formatting fixes
        manuals: use "manual page(s)"
        profile-manual: usage.rst: fix reference to bug report
        documentation: Makefile: remove releases.rst in "make clean"
        migration-guides: draft notes for upcoming release 5.0
        manuals: add initial stylechecks with Vale
        profile-manual: usage.rst: further style improvements

  Oleh Matiusha (3):
        bash: improve reproducibility
        curl: improve reproducibility
        gmp: improve reproducibility

  Paul Barker (1):
        kernel: Fix check_oldest_kernel

  Peter A. Bigot (1):
        bitbake: lib/bb: support NO_COLOR

  Peter Kjellerstedt (1):
        util-linux: Set the license for util-linux-fcntl-lock to MIT

  Philippe Rivest (1):
        bitbake: bitbake: fetch2/git: Escape parentheses in git src name

  Quentin Schulz (1):
        u-boot: fix externalsrc not triggering do_configure on defconfig changes

  Randy MacLeod (1):
        gstreamer: upgrade 1.22.10 -> 1.22.11

  Richard Purdie (10):
        poky: Update to prepare for scarthgap release
        layer.conf: Prepare for release, drop nanbield LAYERSERIES
        expat: Upgrade 2.6.1 -> 2.6.2
        bash/flex: Ensure BUILD_FLAGS doesn't leak onto target
        uninative: Add pthread linking workaround
        poky-altcfg: Default to ipk packaging
        util-linux: Add missing MIT license
        util-linux: Add fcntl-lock
        run-postinsts: Add workaround for locking deadlock issue
        oeqa/sstatetests: Fix race issue

  Ross Burton (22):
        genericarm64.wks: reorder partitions
        genericarm64: clean up kernel modules and firmware
        linux-firmware: add support for deduplicating the firmware
        linux-firmware: set LICENSE field for -liquidui and -mellanox
        linux-firmware: remove pointless linux-firmware-gplv2-license package
        curl: improve run-ptest
        curl: increase test timeouts
        gstreamer1.0: improve test reliability
        linux-yocto: put COMPATIBLE_MACHINE first
        linux-yocto: implicitly track oe-core's kernel version for genericarm64
        bitbake: fetch2: handle URIs with single-valued query parameters
        python3_pip517: just count wheels in the directory, not subdirectories
        python-*: don't set PYPI_ARCHIVE_NAME and S when PYPI_PACKAGE is sufficient
        tcl: improve run-ptest
        tcl: skip I/O channel 46.1
        genericarm64: add qemuboot configuration
        classes/qemuboot: add depends on qemu-system-native and qemu-helper-native
        README.hardware.md: fix Markdown formatting
        README.hardware.md: add section on genericarm64 on qemu
        glib-2.0: skip a timing sensitive ptest
        openssl: fix crash on aarch64 if BTI is enabled but no Crypto instructions
        curl: fix quoting when disabling flaky tests

  Ryan Eatmon (1):
        perf: Fix QA error due to most recent kernel

  Sam Van Den Berge (1):
        shadow: don't install libattr.so.* when xattr not in DISTRO_FEATURES

  Sava Jakovljev (1):
        bitbake: bitbake-worker: Fix bug where umask 0 was not being applied to a task

  Simone Weiß (1):
        gnutls: upgrade 3.8.3 -> 3.8.4

  Soumya Sambu (1):
        go: Upgrade 1.22.0 -> 1.22.1

  Sourav Kumar Pramanik (1):
        libseccomp: Add back in PTESTS_SLOW list

  Sundeep KOKKONDA (1):
        rust: reproducibility issue fix with v1.75

  Tim Orling (2):
        coreutils: drop obsolete liberror-perl RDEPENDS
        liberror-perl: move to meta-perl

  Timon Bergelt (1):
        populate_sdk_ext.bbclass: only overwirte lsb string if uninative is used

  Tom Hochstein (2):
        bmaptool: Add bmap-tools runtime alias for compatibility
        toolchain-shar-relocate.sh: Add check for missing command 'file'

  Trevor Woerner (1):
        bmaptool: update to latest

  Ulrich Ölmann (1):
        ref-manual: classes: update description of class 'image_types'

  Viswanath Kraleti (1):
        bitbake: fetch2: Fix misleading "no output" msg

  Wang Mingyu (1):
        libadwaita: upgrade 1.4.3 -> 1.4.4

  William Lyu (1):
        openssh: Add a workaround for ICE on powerpc64le

  Xiangyu Chen (3):
        lttng-tools: skip kernel tests if no kernel modules present
        ltp: fix missing connectors tests in scenario_groups/default
        lttng-tools: fix rotation-destroy-flush test fails if no kernel module present

  Yang Xu (1):
        bitbake: bitbake-worker: Fix silent hang issue caused by unexpected stdout content

  Yannick Rodriguez (1):
        linux-firmware: Move Intel 9260 modules firmware.

  Yash Shinde (1):
        glibc: Skip 2 qemu tests that can hang in oe-selftest

  Yi Zhao (1):
        libtirpc: drop redundant PACKAGECONFIG

  Yoann Congal (6):
        cve-update-nvd2-native: Fix typo in comment
        cve-update-nvd2-native: Add an age threshold for incremental update
        cve-update-nvd2-native: Remove duplicated CVE_CHECK_DB_FILE definition
        cve-update-nvd2-native: nvd_request_next: Improve comment
        cve-update-nvd2-native: Fix CVE configuration update
        cve-update-nvd2-native: Remove rejected CVE from database

  Yogesh Tyagi (1):
        lttng-modules: fix v6.8+ build

  david d zuhn (1):
        bitbake: bitbake-worker: allow '=' in environment variable values

  lixiaoyong (3):
        kernel-module-split.bbclass: enhance objcopy command call for kernel compilation with llvm
        utils: enhance readelf command call with llvm
        oe/package: enhance objdump command call with llvm

meta-raspberrypi: 92a9b7a012..d072cc8a48:
  Khem Raj (9):
        linux-raspberrypi: Add recipe for 6.6 LTS kernel
        bluez-firmware-rpidistro: Upgrade to 1.2-9+rpt3 release
        linux-firmware-rpidistro: Upgrade to bookworm/20230625-2+rpt2
        raspberrypi-firmware: Fetch using git URI
        rpi-base: Add missing broadcom/ prefix to find DTB files
        rpi-default-versions: Switch default kernel to 6.6
        linux-raspberrypi_6.6: Bump to 6.6.22
        rpi-bootfiles: Resort to github APIs for tarballs
        raspberrypi-firmware: Revert to debian archive

  Martin Jansa (1):
        userland: fix installed-vs-shipped in multilib builds

  jdavidsson (1):
        rpi-base: Add hifiberry-dacplusadc overlay

meta-arm: aba9250494..d9e18ce792:
  Abdellatif El Khlifi (1):
        arm-bsp/corstone1000: add documentation disclaimer

  Alexander Sverdlin (1):
        optee-ftpm: fix EARLY_TA_PATHS passed to optee-os

  Ali Can Ozaslan (4):
        arm-bsp/trusted-firmware-m: corstone1000: update to 2.0
        arm-bsp/trusted-services: corstone1000: Client Id adjustments after TF-M 2.0
        arm/trusted-firmware-m: Change GNU Arm compiler version for TF-M 2.0
        arm-bsp/trusted-firmware-a: n1sdp: update to 2.10

  Anusmita Dutta Mazumder (2):
        arm-bsp/n1sdp: Update scp-firmware version
        arm-bsp/n1sdp: Update EDK2 version

  Bence Balogh (2):
        arm-bsp/u-boot: corstone1000: fix SMCCC_ARCH_FEATURES detection in the PSCI driver
        arm-bsp/trusted-firmware-a: corstone1000: remove SMCCC_ARCH_FEATURES discovery workaround

  Delane Brandy (1):
        arm/trusted-firmware-a: fix mbedTLS version

  Drew Reed (2):
        kas: Corstone-1000 kas files updated
        bsp: Corstone-1000 userguide updates

  Emekcan Aras (2):
        arm-bsp/trusted-firmware-a: Upgrade Corstone1000 to TF-A v2.10
        arm/trusted-services: Add recipe for block storage service

  Jon Mason (17):
        README: Add information about release process and mailing list
        arm/linux-yocto: remove unreferenced patch
        arm/optee: disable clang due to breakage
        arm-bsp/tf-a-tests: remove corstone1000 intermediate SHA
        arm-bsp/tfa-tests: move n1sdp patch to platform directory
        CI: update kas to 4.3.1
        arm/edk2: update to 202402
        arm/trusted-firmware-a: update to 2.10.2
        arm/sbsa-acs: update to 7.1.4
        arm/scp-firmware: update to v2.14.0
        arm-toolchain/gcc-arm-none-eabi: remove 11.2
        CI: reduce coverage of dev kernel
        arm/sbsa-acs: remove unreferenced patch
        arm-toolchain: correct UPSTREAM_CHECK
        Revert "arm/rmm: Add bitbake, include and patch file for RMM firmware"
        arm/sbsa-acs: use UPSTREAM_CHECK_URI for version checking
        arm: use UPSTREAM_CHECK_COMMITS for git versioned recipes

  Mathieu Poirier (1):
        arm/rmm: Add bitbake, include and patch file for RMM firmware

  Ross Burton (3):
        arm arm-bsp: enable patch-status warnings
        Add SECURITY.md
        CI: ignore netrc warnings caused by Kas

meta-openembedded: a0237019f5..a6bcdca5b4:
  Bartosz Golaszewski (1):
        libgpiod: update to v2.1.1

  Chad Rockey (1):
        cppzmq-dev expects /usr/lib/libzmq.a

  Changqing Li (1):
        postgresql: fix a runtime error

  Chen Qi (1):
        tcprelay: fix a minor cross compilation do_configure issue

  Christophe Chapuis (9):
        lvgl: fix typo in lv-conf.inc
        lvgl: install lv_conf.h
        lvgl: remove useless FILES include
        lvgl: cleanup sed instructions in lv-conf.inc
        lvgl: add more variables to lv-conf.inc
        lvgl: fix libdrm include
        lvgl: lv-conf.inc: generalize sed instructions
        lvgl: make libdrm include conditional
        lvgl: cleanup sed expression

  Dan McGregor (2):
        python3-pylint: Update to 3.1.0
        python3-pylint: Fix ptest failures

  Derek Straka (1):
        python3-dbus: re-add recipe with latest patches and add ptest

  Etienne Cordonnier (1):
        uutils-coreutils: upgrade 0.0.24 -> 0.0.25

  Fathi Boudra (1):
        python3-django: upgrade 4.2.10 -> 4.2.11

  Guðni Már Gilbert (2):
        python3-ecdsa: remove python3-pbr
        python3-ecdsa: cleanup DEPENDS

  Jaeyoon Jung (1):
        lvgl: Set resolution prior to buffer

  Joe Slater (1):
        googletest: allow for shared libraries

  Jose Quaresma (1):
        ostree: Upgrade 2024.4 -> 2024.5

  Jörg Sommer (3):
        sngrep: new recipe for ncurses SIP Messages flow viewer
        spandsp: new telephony DSP library
        bluez-tools: New recipe for bluez5 tools

  Kai Kang (2):
        Packages depends on libadwaita should require distro feature opengl
        thin-provisioning-tools: install binary to ${sbindir}

  Khem Raj (55):
        squid: Upgrade to 6.8
        libosinfo: Fix build with libxml2 v2.12
        xmlstarlet: Fix build with API breakage in libxml2 2.12
        mariadb: Fix build with libxml2 2.12 ABI changes
        libmusicbrainz: Update to tip of trunk
        gnome-commander: Fix build with taglib 2.0
        gnome-online-accounts: Fix build with libxml2 2.12
        vlc: Upgrade to 3.0.20
        netcf: Fix build with latest gnulib
        php: Upgrade to 8.2.16
        vlc: Fix build on 32bit x86
        libtinyxml2: Extend for nativesdk
        lvgl: Fix dev-elf build QA
        layer.conf: Update for the scarthgap release series
        dietsplash: Update and fix build with musl
        frr: Upgrade to latest on 9.1 stable
        frr: Fix build on newer musl
        layer.conf: Prepare for release, drop nanbield LAYERSERIES
        libcamera: Fix clang support patches
        plocate: Fix sys/stat.h and linux/stat.h conflicts with musl
        liburing: Upgrade to 2.5
        openflow: Delete recipe for 1.0
        openflow: Merge .inc into .bb
        openflow: Fix build with musl
        tracker-miners: Disable seccomp support on musl
        libcamera: Fix build on musl systems
        ipset: Update to 7.21
        ot-daemon: Update to tip of trunk
        ot-br-posix: Update to latest
        wpantund: Update to latest
        xfsdump: Fix build with musl >= 1.2.5
        xfstests: Fix build with musl >= 1.2.5
        net-snmp: Fix build with musl
        rdma-core: Fix build with musl >= 1.2.5
        ssmtp: Fix build with musl >= 1.2.5
        autofs: Fix build with musl >= 1.2.5
        lvm2: Fix build with musl 1.5.2+
        sanlock: Fix build with musl >= 1.2.5
        ndctl: Fix build issues seen with musl 1.2.5
        sdbus-c++-libsystemd: Upgrade to 255.4 release of systemd
        sdbus-c++,sdbus-c++-tools: Upgrade to 1.5.0 release
        wtmpdb: Upgrade to 0.11.0 release
        uftrace: Fix build with musl >= 1.2.5
        fio: Upgrade to 3.36+git
        i2cdev: Include libgen.h on musl
        directfb: Fix build with musl >= 1.2.5
        iwd: Upgrade to 2.16
        minifi-cpp: Fix libsodium build on aarch64/clang
        multipath-tools: Fix build with musl >= 1.2.5
        aer-inject: Fix build with latest musl
        aer-inject: Replace hardcoded /usr with ${prefix}
        microsoft-gsl: Disable disabled-macro-expansion warning as error on clang/musl
        meta-python-image-ptest: Use 2G RAM for some demanding tests
        python3-pydbus: Add bash dependency for ptests
        highway,libjxl: Remove -mfp16-format=ieee when using clang compiler

  Leon Anavi (7):
        python3-anyio: Upgrade 4.2.0 -> 4.3.0
        python3-httpx: Upgrade 0.26.0 -> 0.27.0
        python3-multidict: Upgrade 6.0.4 -> 6.0.5
        python3-croniter: Upgrade 2.0.1 -> 2.0.3
        python3-paho-mqtt: Upgrade 1.6.1 -> 2.0.0
        python3-typeguard: Upgrade 4.1.5 -> 4.2.1
        python3-cachetools: Upgrade 5.3.2 -> 5.3.3

  Marek Vasut (14):
        lvgl: Drop dialog-lvgl
        lvgl: Upgrade to LVGL 9 series
        lvgl: Rename lv-drivers.inc to lv-conf.inc
        lvgl: Add SDL2 fullscreen mode configuration option
        lvgl: Configure assertions based on DEBUG_BUILD
        lvgl: Default to XRGB8888 DRM framebuffer
        lvgl: Build shared library
        lvgl: Replace sed patching with real patches
        lvgl: Generate proper shared libraries with version suffix
        lvgl: Reinstate demo configuration settings
        lvgl: Update to 9.1.0
        lvgl: Drop superfluous ALLOW_EMPTY
        lvgl: Drop unnecessary PV append
        lvgl: Deduplicate PACKAGECONFIG into lv-conf

  Markus Volk (66):
        mozjs-115: fix reproducibility issue
        webp-pixbuf-loader: update 0.2.5 -> 0.2.7
        gnome-control-center: fix reproducibility issue
        gnome-disk-utility: fix reproducibility issue
        gnome-settings-daemon: fix reproducibility issue
        gnome-terminal: fix reproducibility issue
        libvncserver: fix reproducibility issue
        editorconfig-core-c: fix reproducibility issue
        crossguid: fix reproducibility issue
        waylandpp: fix reproducibility issue
        polkit: remove unneeded workaround
        gtk-vnc: fix reproducibility issue
        pipewire: update 1.0.3 -> 1.0.4
        mutter: remove zenity from rdepends
        mutter: update 45.4 -> 46.0
        gnome-shell: update 45.4 -> 46.0
        gnome-settings-daemon: update 45.0 -> 46.0
        gnome-software: update 45.3 -> 46.0
        evince: update 45.0 -> 46.0
        gnome-online-accounts: update 3.48.0 -> 3.50.0
        evolution-data-server: build with webkitgtk4
        folks: update 0.15.7 -> 0.15.8
        gnome-control-center: update 45.3 -> 46.0
        xdg-desktop-portal-gnome: update 45.1 -> 46.0
        tracker: update 3.6.0 -> 3.7.0
        tracker-miners: update 3.6.2 -> 3.7.0
        freerdp3: add recipe
        wireplumber: update 0.4.17 -> 0.5.0
        tecle: update 45.0 -> 46.0
        gnome-calculator: update 45.0.2 -> 46.0
        gnome-session: update 45.0 -> 46.0
        gnome-remote-desktop: update 45.1 -> 46.0
        gnome-calendar: update 45.1 -> 46.0
        libgweather4: update 4.4.0 -> 4.4.2
        gtksourceview5: update 5.10.0 -> 5.12.0
        gnome-control-center: use gcr4 variant
        libcloudproviders: update 0.3.5 -> 0.3.6
        gnome-themes-extra: build with gtk+3
        gtk4mm: add recipe
        gnome-system-monitor: update 45.0.1 -> 46.0
        gnome-boxes: update 45.0 -> 46.0
        eog: update 45.2 -> 45.3
        gparted: update 1.5.0 -> 1.6.0
        libgtop: update 2.41.1 -> 2.41.3
        gnome-bluetooth: update 42.8 -> 46.0
        gnome-text-editor: update 45.1 -> 46.0
        gnome-chess: update 43.2 -> 46.0
        gnome-disk-utility: update 45.0 -> 46.0
        gnome-shell-extensions: update 45.2 -> 46.0
        msgraph: add recipe
        gvfs: update 1.52.2 -> 1.54.0
        tracker-miners: drop buildpath from tracker-miner-fs-3
        evolution-data-server: disable tests and examples
        tracker-miners: fix reproducibility issue for landlock
        file-roller: update 43.1 -> 44.0
        apache2: preset mpm=prefork by default
        gnome-user-share: add recipe
        gnome-control-center: update 46.0 -> 46.0.1
        gdm: update 45.0.1 -> 46.0
        gnome-user-share: remove hardcoded paths
        ghex: update 45.1 -> 46.0
        libjxl: add recipe
        gnome-backgrounds: add runtime depenency for libjxl
        highway: add recipe
        webkitgtk3: update 2.42.5 -> 2.44.0
        gnome-control-center: restore Upstream-Status line

  Martin Jansa (5):
        unionfs-fuse, dropwatch, postgresql, yasm, multipath-tools, python3-pybind11: add missing Upstream-Status
        recipes: Drop remaining PR values from recipes
        freerdp3: disable shadow without x11
        xfstests: upgrade to v2024.03.03
        gtkmm4: add x11 to REQUIRED_DISTRO_FEATURES

  Maxin John (7):
        tracker: remove unused patch
        openal-soft: remove unused patches
        libio-pty-perl: remove unsed patch
        opengl-es-cts: remove unused patch
        emacs: remove unused patch
        webkitgtk3: remove unused patch
        python3-eth-utils: remove unused patches

  Michael Heimpold (1):
        ser2net: add a systemd service file

  Mingli Yu (4):
        gosu: Upgrade to 1.17
        googletest: Pass -fPIC to CFLAGS
        re2: Upgrade 2023.03.01 -> 2024.03.01
        nss: Upgrade 3.74 -> 3.98

  Ola x Nilsson (2):
        abseil-cpp: Split so-files into separate packages
        abseil-cpp: Split so-files into separate packages

  Peter Kjellerstedt (3):
        abseil-cpp: A little clean-up
        libnice: Disable the examples and the tests
        abseil-cpp: A little clean-up

  Peter Marko (5):
        jwt-cpp: fix cmake file install path
        soci: fix buildpaths warning
        libcpr: add new recipe
        python3-grpcio: cleanup dependencies
        microsoft-gsl: add new recipe including ptest

  Petr Gotthard (2):
        libmbim: Revert back to the latest stable 1.30.0
        libqmi: Revert back to the latest stable 1.34.0

  Randy MacLeod (2):
        rsyslog: update from 8.2306.0 to 8.2402.0
        nftables: Add DESCRIPTION and HOMEPAGE

  Richard Purdie (2):
        imagemagick/lcms/fftw: Allow nativesdk versions to exist
        buildtools-imagemagick: Add new recipe

  Robert P. J. Day (1):
        fmt: remove unnecessary "inherit ptest" directive

  Robert Yang (6):
        yaffs2-utils: Upgrade to 20221209
        xfsprogs: 6.5.0 -> 6.6.0
        gnulib: 2018-12-18 -> 202401
        thin-provisioning-tools: 1.0.9 -> 1.0.12
        gperftools: 2.10 -> 2.15
        freeradius: 3.0.26 -> 3.2.3

  Ross Burton (1):
        python3-pydantic-core: just set PYPI_PACKAGE

  Sam Van Den Berge (1):
        python3-aiohttp: add missing dependencies

  Samuli Piippo (1):
        geoclue: enable demo agent

  Thomas Roos (1):
        usrsctp: upgrade to latest version

  Tim Orling (1):
        liberror-perl: move recipe from oe-core

  Tomasz Żyjewski (1):
        python: python-libusb1: add recipe

  Wang Mingyu (124):
        bats: upgrade 1.10.0 -> 1.11.0
        c-ares: upgrade 1.26.0 -> 1.27.0
        ctags: upgrade 6.1.20240114.0 -> 6.1.20240225.0
        dbus-cxx: upgrade 2.5.0 -> 2.5.1
        ddrescue: upgrade 1.27 -> 1.28
        fetchmail: upgrade 6.4.37 -> 6.4.38
        libtalloc: upgrade 2.4.1 -> 2.4.2
        libtdb: upgrade 1.4.9 -> 1.4.10
        neatvnc: upgrade 0.7.2 -> 0.8.0
        ostree: upgrade 2024.3 -> 2024.4
        python3-astroid: upgrade 3.0.3 -> 3.1.0
        python3-cbor2: upgrade 5.6.1 -> 5.6.2
        python3-dnspython: upgrade 2.6.0 -> 2.6.1
        python3-eventlet: upgrade 0.35.1 -> 0.35.2
        python3-gcovr: upgrade 7.0 -> 7.2
        python3-google-api-core: upgrade 2.16.2 -> 2.17.1
        python3-google-api-python-client: upgrade 2.118.0 -> 2.120.0
        python3-grpcio(-tools): upgrade 1.60.1 -> 1.62.0
        python3-ipython: upgrade 8.21.0 -> 8.22.1
        python3-pdm: upgrade 2.12.3 -> 2.12.4
        python3-pymisp: upgrade 2.4.185 -> 2.4.186
        python3-scrypt: upgrade 0.8.20 -> 0.8.24
        python3-sentry-sdk: upgrade 1.40.4 -> 1.40.6
        smarty: upgrade 4.3.4 -> 4.4.1
        stunnel: upgrade 5.69 -> 5.72
        abseil-cpp: upgrade 20230802.1 -> 20240116.1
        dnf-plugin-tui: upgrade 1.3 -> 1.4
        boost-sml: upgrade 1.1.9 -> 1.1.11
        ctags: upgrade 6.1.20240225.0 -> 6.1.20240310.0
        dialog: upgrade 1.3-20240101 -> 1.3-20240307
        flatbuffers: upgrade 23.5.26 -> 24.3.7
        gjs: upgrade 1.78.4 -> 1.80.0
        hwdata: upgrade 0.379 -> 0.380
        iceauth: upgrade 1.0.9 -> 1.0.10
        libdnet: upgrade 1.17.0 -> 1.18.0
        libopus: upgrade 1.4 -> 1.5.1
        libreport: upgrade 2.17.11 -> 2.17.15
        libxaw: upgrade 1.0.15 -> 1.0.16
        mcelog: upgrade 196 -> 197
        networkd-dispatcher: upgrade 2.1 -> 2.2.4
        openlldp: upgrade 1.1.0 -> 1.1.1
        opensc: upgrade 0.24.0 -> 0.25.0
        pcsc-lite: upgrade 2.0.1 -> 2.0.3
        python3-a2wsgi: upgrade 1.10.2 -> 1.10.4
        python3-apiflask: upgrade 2.1.0 -> 2.1.1
        python3-argcomplete: upgrade 3.2.2 -> 3.2.3
        python3-bandit: upgrade 1.7.7 -> 1.7.8
        python3-blivet: upgrade 3.8.2 -> 3.9.1
        python3-blivetgui: upgrade 2.4.2 -> 2.5.0
        python3-django: upgrade 5.0.2 -> 5.0.3
        python3-elementpath: upgrade 4.3.0 -> 4.4.0
        python3-eth-abi: upgrade 5.0.0 -> 5.0.1
        python3-eth-rlp: upgrade 1.0.1 -> 2.0.0
        python3-flask-migrate: upgrade 4.0.5 -> 4.0.7
        python3-google-api-python-client: upgrade 2.120.0 -> 2.122.0
        python3-google-auth: upgrade 2.28.1 -> 2.28.2
        python3-googleapis-common-protos: upgrade 1.62.0 -> 1.63.0
        python3-grpcio-tools: upgrade 1.62.0 -> 1.62.1
        python3-grpcio: upgrade 1.62.0 -> 1.62.1
        python3-ipython: upgrade 8.22.1 -> 8.22.2
        python3-mypy: upgrade 1.8.0 -> 1.9.0
        python3-pydantic: upgrade 2.6.3 -> 2.6.4
        python3-pymisp: upgrade 2.4.186 -> 2.4.187
        python3-pymodbus: upgrade 3.6.4 -> 3.6.6
        python3-pyperf: upgrade 2.6.2 -> 2.6.3
        python3-pytest-lazy-fixtures: upgrade 1.0.5 -> 1.0.6
        python3-pytest-timeout: upgrade 2.2.0 -> 2.3.1
        python3-requests-oauthlib: upgrade 1.3.1 -> 1.4.0
        python3-sentry-sdk: upgrade 1.40.6 -> 1.42.0
        python3-tox: upgrade 4.13.0 -> 4.14.1
        python3-traitlets: upgrade 5.14.1 -> 5.14.2
        python3-types-psutil: upgrade 5.9.5.20240205 -> 5.9.5.20240316
        python3-types-python-dateutil: upgrade 2.8.19.20240106 -> 2.9.0.20240316
        tcsh: upgrade 6.24.10 -> 6.24.11
        thingsboard-gateway: upgrade 3.4.4 -> 3.4.5
        xmessage: upgrade 1.0.6 -> 1.0.7
        xrefresh: upgrade 1.0.7 -> 1.1.0
        gjs: upgrade 1.80.0 -> 1.80.2
        gnome-backgrounds: upgrade 45.0 -> 46.0
        gnome-font-viewer: upgrade 45.0 -> 46.0
        libblockdev: upgrade 3.1.0 -> 3.1.1
        libdeflate: upgrade 1.19 -> 1.20
        libmbim: upgrade 1.30.0 -> 1.31.2
        libqmi: upgrade 1.34.0 -> 1.35.2
        libtommath: upgrade 1.2.1 -> 1.3.0
        mcelog: upgrade 197 -> 198
        metacity: upgrade 3.50.0 -> 3.52.0
        python3-asgiref: upgrade 3.7.2 -> 3.8.1
        python3-blivet: upgrade 3.9.1 -> 3.9.2
        python3-cassandra-driver: upgrade 3.29.0 -> 3.29.1
        python3-djangorestframework: upgrade 3.14.0 -> 3.15.1
        python3-eth-rlp: upgrade 2.0.0 -> 2.1.0
        python3-eventlet: upgrade 0.35.2 -> 0.36.1
        python3-filelock: upgrade 3.13.1 -> 3.13.3
        python3-flask-marshmallow: upgrade 1.2.0 -> 1.2.1
        python3-flatbuffers: upgrade 24.3.7 -> 24.3.25
        python3-google-api-core: upgrade 2.17.1 -> 2.18.0
        python3-google-api-python-client: upgrade 2.122.0 -> 2.124.0
        python3-google-auth: upgrade 2.28.2 -> 2.29.0
        python3-graphviz: upgrade 0.20.1 -> 0.20.3
        python3-gspread: upgrade 6.0.2 -> 6.1.0
        python3-jdatetime: upgrade 4.1.1 -> 5.0.0
        python3-pdm: upgrade 2.12.4 -> 2.13.2
        python3-pyasn1-modules: upgrade 0.3.0 -> 0.4.0
        python3-pymisp: upgrade 2.4.187 -> 2.4.188
        python3-pytest-asyncio: upgrade 0.23.5 -> 0.23.6
        python3-pytest-cov: upgrade 4.1.0 -> 5.0.0
        python3-pytest-lazy-fixtures: upgrade 1.0.6 -> 1.0.7
        python3-pywbem: upgrade 1.6.2 -> 1.6.3
        python3-pywbemtools: upgrade 1.2.0 -> 1.2.1
        python3-pyzstd: upgrade 0.15.9 -> 0.15.10
        python3-requests-oauthlib: upgrade 1.4.0 -> 2.0.0
        python3-sentry-sdk: upgrade 1.42.0 -> 1.44.0
        python3-socketio: upgrade 5.11.1 -> 5.11.2
        python3-thrift: upgrade 0.16.0 -> 0.20.0
        python3-tox: upgrade 4.14.1 -> 4.14.2
        python3-web3: upgrade 6.15.1 -> 6.16.0
        st: upgrade 0.9 -> 0.9.1
        thingsboard-gateway: upgrade 3.4.5 -> 3.4.6
        thrift: upgrade 0.19.0 -> 0.20.0
        tracker-miners: upgrade 3.7.0 -> 3.7.1
        tracker: upgrade 3.7.0 -> 3.7.1
        wireshark: upgrade 4.2.3 -> 4.2.4
        wolfssl: upgrade 5.6.6 -> 5.7.0

  William Lyu (3):
        nftables: Fix ptest output format issues
        nftables: Fix ShellCheck violations in ptest wrapper script "run-ptest"
        nftables: Fix failed ptest testcases

  Yi Zhao (13):
        netplan: upgrade 0.106 -> 1.0
        networkmanager: 1.44.0 -> 1.46.0
        postfix: upgrade 3.8.5 -> 3.8.6
        net-snmp: upgrade 5.9.3 -> 5.9.4
        cryptsetup: upgrade 2.7.0 -> 2.7.1
        samba: upgrade 4.19.4 -> 4.19.5
        civetweb: remove buildpaths from civetweb-targets.cmake
        minifi-cpp: upgrade 0.7.0 -> 0.15.0
        openvpn: upgrade 2.6.9 -> 2.6.10
        rocksdb: upgrade 7.9.2 -> 9.0.0
        audit: upgrade 4.0 -> 4.0.1
        netplan: add missing config directory
        strongswan: upgrade 5.9.13 -> 5.9.14

  alperak (15):
        python3-icecream: add recipe
        python3-invoke: add recipe
        python3-traitlets: add ptest and update runtime dependencies
        python3-google-auth-oauthlib: add ptest
        python3-tomli-w: added recipe which is also include ptest
        python3-pytest-localserver: added recipe which is also include ptest
        python3-responses: add recipe
        python3-google-auth: add ptest and update runtime dependencies
        remove obsolete PIP_INSTALL_PACKAGE and PIP_INSTALL_DIST_PATH
        python3-a2wsgi: added recipe which is also include ptest
        python3-httptools: added recipe which is also include ptest
        python3-wsproto: Add recipe
        python3-portalocker: enable ptest
        python3-validators: upgrade 0.22.0 > 0.24.0 and enable ptest
        python3-pydbus: Drop ${PYTHON_PN}

  chenheyun (1):
        aer-inject:add new recipe

Change-Id: I3cf0e5c87ecdfa18c35d318cb64c0e6559348618
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
diff --git a/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash/0001-Mimic-GNU-basename-API-for-non-glibc-library-e.g.-mu.patch b/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash/0001-Mimic-GNU-basename-API-for-non-glibc-library-e.g.-mu.patch
new file mode 100644
index 0000000..aa8406e
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash/0001-Mimic-GNU-basename-API-for-non-glibc-library-e.g.-mu.patch
@@ -0,0 +1,28 @@
+From 272491297564513c4ce49a11bc1ecc523a3afd63 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 15 Mar 2024 11:05:54 -0700
+Subject: [PATCH] Mimic GNU basename() API for non-glibc library e.g. musl
+
+Upstream-Status: Submitted [https://github.com/lucasdemarchi/dietsplash/pull/7]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/util.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/util.h b/src/util.h
+index 1f4c3ef..a3ab54a 100644
+--- a/src/util.h
++++ b/src/util.h
+@@ -60,6 +60,9 @@
+  */
+ #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + _array_size_chk(arr))
+ 
++#if !defined(__GLIBC__)
++#define basename(src) (strrchr(src,'/') ? strrchr(src,'/')+1 : src)
++#endif
+ 
+ #define DIE_PREFIX "[" PACKAGE_NAME "] ERR: "
+ #define LOG_SUFFIX "\n"
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash_git.bb b/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash_git.bb
index 2c28fde..1ee2657 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash_git.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/dietsplash/dietsplash_git.bb
@@ -4,13 +4,13 @@
 
 # Really, no depends besides a C library
 
-PV = "0.3"
-PR = "r1"
+PV = "0.3+git"
 
-SRCREV = "ef2e1a390e768e21e6a6268977580ee129a96633"
+SRCREV = "8bed71d860bbb0c8792fa2a1179c9beeae84d577"
 SRC_URI = "git://github.com/lucasdemarchi/dietsplash.git;branch=master;protocol=https \
            file://0001-configure.ac-Do-not-demand-linker-hash-style.patch \
-           "
+           file://0001-Mimic-GNU-basename-API-for-non-glibc-library-e.g.-mu.patch \
+"
 
 inherit autotools
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc b/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
index 07b9864..4d38632 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
+++ b/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb.inc
@@ -23,6 +23,7 @@
            file://fix-tslib-version-check.patch \
            file://0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch \
            file://0001-os-linux-Fix-build-when-__NR_futex-is-not-available.patch \
+           file://0001-include-libgen.h-for-basename.patch \
            "
 
 S = "${WORKDIR}/DirectFB-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb/0001-include-libgen.h-for-basename.patch b/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb/0001-include-libgen.h-for-basename.patch
new file mode 100644
index 0000000..abdba18
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/directfb/directfb/0001-include-libgen.h-for-basename.patch
@@ -0,0 +1,32 @@
+From c8cf3ffd4fa14cdc6d607a09d51e898dec922348 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 25 Mar 2024 18:17:44 -0700
+Subject: [PATCH] include libgen.h for basename
+
+basename prototype has been removed from string.h from latest musl [1]
+compilers e.g. clang-18 flags the absense of prototype as error. therefore
+include libgen.h for providing it.
+
+[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
+
+Upstream-Status: Inappropriate [Upstream is dead]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ systems/fbdev/fbdev.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/systems/fbdev/fbdev.c b/systems/fbdev/fbdev.c
+index 5297358..4e6f178 100644
+--- a/systems/fbdev/fbdev.c
++++ b/systems/fbdev/fbdev.c
+@@ -42,6 +42,7 @@
+ #include <errno.h>
+ #include <string.h>
+ #include <strings.h>
++#include <libgen.h>
+ #if defined(HAVE_SYSIO)
+ # include <sys/io.h>
+ #endif
+-- 
+2.44.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
index a817d38..4fc4679 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb
@@ -10,7 +10,6 @@
 LICENSE = "LGPL-2.1-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
 
-PR = "r3"
 
 SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \
            file://libsdl-1.2.15-xdata32.patch \
diff --git a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.14.bb b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.14.bb
index 50bdad5..ce01593 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.14.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/libvncserver/libvncserver_0.9.14.bb
@@ -50,3 +50,7 @@
 S = "${WORKDIR}/git"
 
 EXTRA_OECMAKE = "-DMAKE_INSTALL_LIBDIR=${libdir}"
+
+do_install:append() {
+    sed -i -e 's|${STAGING_DIR_HOST}||g' ${D}${libdir}/cmake/LibVNCServer/LibVNCServerTargets.cmake
+}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0001-wayland-Switch-to-custom-timer-tick.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0001-wayland-Switch-to-custom-timer-tick.patch
deleted file mode 100644
index 5149002..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0001-wayland-Switch-to-custom-timer-tick.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 1d92e1854c19c06c553243d29170bb4d1a9e3863 Mon Sep 17 00:00:00 2001
-From: Marek Vasut <marex@denx.de>
-Date: Tue, 9 May 2023 02:57:30 +0200
-Subject: [PATCH 1/2] wayland: Switch to custom timer tick
-
-The OE LVGL is configured to obtain timer tick from system timer
-instead of using ad-hoc mechanisms to emulate timer tick using
-threads or such. Use system timer to provide the tick.
-
-The tick handling implementation comes from:
-https://github.com/lvgl/lv_port_linux_frame_buffer.git
-as of commit adf2c4490e17a1b9ec1902cc412a24b3b8235c8e
-
-Upstream-Status: Inappropriate [Upstream repo is archived]
-Signed-off-by: Marek Vasut <marex@denx.de>
----
- src/drivers/wayland.c | 24 ++++++++++++++++--------
- 1 file changed, 16 insertions(+), 8 deletions(-)
-
-diff --git a/src/drivers/wayland.c b/src/drivers/wayland.c
-index 633dc18..bcebf4d 100644
---- a/src/drivers/wayland.c
-+++ b/src/drivers/wayland.c
-@@ -6,6 +6,7 @@
- #if defined(USE_WAYLAND) && USE_WAYLAND
- 
- #include <pthread.h>
-+#include <sys/time.h>
- #include <unistd.h>
- 
- #include <lv_drivers/wayland/wayland.h>
-@@ -18,13 +19,22 @@
- #define WAYLAND_VER_RES      320
- #endif
- 
--static void * tick_thread(void * data)
-+uint32_t custom_tick_get(void)
- {
--    (void) data;
--    while(true) {
--        usleep(5 * 1000);
--        lv_tick_inc(5);
--    }
-+	static uint64_t start_ms = 0;
-+	if(start_ms == 0) {
-+		struct timeval tv_start;
-+		gettimeofday(&tv_start, NULL);
-+		start_ms = (tv_start.tv_sec * 1000000 + tv_start.tv_usec) / 1000;
-+	}
-+
-+	struct timeval tv_now;
-+	gettimeofday(&tv_now, NULL);
-+	uint64_t now_ms;
-+	now_ms = (tv_now.tv_sec * 1000000 + tv_now.tv_usec) / 1000;
-+
-+	uint32_t time_ms = now_ms - start_ms;
-+	return time_ms;
- }
- 
- 
-@@ -47,8 +57,6 @@ void hal_init(void)
- 
-     lv_group_t * g = lv_group_create();
-     lv_group_set_default(g);
--    static pthread_t hal_thread;
--    pthread_create(&hal_thread, NULL, tick_thread, NULL);
- }
- 
- #endif
--- 
-2.39.2
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0002-wayland-Fix-callback-data-type.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0002-wayland-Fix-callback-data-type.patch
deleted file mode 100644
index 8919a1a..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl/0002-wayland-Fix-callback-data-type.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From b7af695d79820adf53e7d612120bda12ed2886e2 Mon Sep 17 00:00:00 2001
-From: Marek Vasut <marex@denx.de>
-Date: Tue, 9 May 2023 02:57:38 +0200
-Subject: [PATCH 2/2] wayland: Fix callback data type
-
-The LVGL 8.3.y changed the callback data type, update it accordingly.
-
-Upstream-Status: Inappropriate [Upstream repo is archived]
-Signed-off-by: Marek Vasut <marex@denx.de>
----
- src/drivers/wayland.c | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/src/drivers/wayland.c b/src/drivers/wayland.c
-index bcebf4d..cfefa88 100644
---- a/src/drivers/wayland.c
-+++ b/src/drivers/wayland.c
-@@ -37,8 +37,7 @@ uint32_t custom_tick_get(void)
- 	return time_ms;
- }
- 
--
--static lv_wayland_display_close_f_t close_cb()
-+static bool close_cb(lv_disp_t * disp)
- {
- }
- 
--- 
-2.39.2
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl_git.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl_git.bb
deleted file mode 100644
index 139aa47..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/dialog-lvgl_git.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-# SPDX-License-Identifier: MIT
-
-SRC_URI = "git://git.ostc-eu.org/rzr/dialog-lvgl;destsuffix=${S};protocol=https;nobranch=1 \
-           file://0001-wayland-Switch-to-custom-timer-tick.patch \
-           file://0002-wayland-Fix-callback-data-type.patch \
-           "
-SRCREV = "cdf8d38acca87e871c3a488fd07f1e4779590f8e"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=8ce0a84e5276f01364119c873b712c4f"
-
-DEPENDS += "lvgl"
-DEPENDS += "lv-drivers"
-
-SUMMARY = "Basic UI utility to be used in scripts"
-DESCRIPTION = "Inspired by ncurses' dialog, implemented using LVGL"
-HOMEPAGE = "https://git.ostc-eu.org/rzr/dialog-lvgl/-/wikis/"
-
-REQUIRED_DISTRO_FEATURES = "wayland"
-
-inherit pkgconfig
-inherit features_check
-
-EXTRA_OEMAKE += "sysroot=${RECIPE_SYSROOT}"
-EXTRA_OEMAKE += "DESTDIR=${D}"
-EXTRA_OEMAKE += "lvgl_driver=wayland"
-
-do_install() {
-    oe_runmake install
-}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch
new file mode 100644
index 0000000..bd619b1
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch
@@ -0,0 +1,63 @@
+From 5b7f657e8ad656e0854f2252b3bd482b966d650c Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Wed, 13 Mar 2024 02:12:30 +0100
+Subject: [PATCH 2/2] fix(sdl): handle both LV_IMAGE_SRC_FILE and
+ LV_IMAGE_SRC_VARIABLE
+
+The SDL image draw code currently assumes that the image source is a
+filename and attempts to open that filename. This is not necessarily
+the case, e.g. the lv_demo_fb uses encoded images which are of type
+LV_IMAGE_SRC_VARIABLE and instead of filename, come with a buffer of
+pixels. Handle the later using SDL_CreateRGBSurfaceFrom().
+
+Upstream-Status: Submitted [https://github.com/lvgl/lvgl/pull/5852]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ src/draw/sdl/lv_draw_sdl.c | 30 +++++++++++++++++++++++++++---
+ 1 file changed, 27 insertions(+), 3 deletions(-)
+
+diff --git a/src/draw/sdl/lv_draw_sdl.c b/src/draw/sdl/lv_draw_sdl.c
+index cbb555d94..5eee5b725 100644
+--- a/src/draw/sdl/lv_draw_sdl.c
++++ b/src/draw/sdl/lv_draw_sdl.c
+@@ -224,10 +224,34 @@ static bool draw_to_texture(lv_draw_sdl_unit_t * u, cache_data_t * data)
+             break;
+         case LV_DRAW_TASK_TYPE_IMAGE: {
+                 lv_draw_image_dsc_t * image_dsc = task->draw_dsc;
+-                const char * path = image_dsc->src;
+-                SDL_Surface * surface = IMG_Load(&path[2]);
++                lv_image_src_t type = lv_image_src_get_type(image_dsc->src);
++                SDL_Surface * surface = NULL;
++                if(type == LV_IMAGE_SRC_FILE) {
++                    const char * path = image_dsc->src;
++                    surface = IMG_Load(&path[2]);
++                }
++                else if(type == LV_IMAGE_SRC_VARIABLE) {
++                    lv_image_dsc_t * lvd = image_dsc->src;
++                    surface = SDL_CreateRGBSurfaceFrom(lvd->data,
++                                                       lvd->header.w, lvd->header.h,
++                                                       LV_COLOR_FORMAT_GET_BPP(lvd->header.cf),
++                                                       lvd->header.stride,
++#if SDL_BYTEORDER == SDL_LIL_ENDIAN
++                                                       0x00FF0000,
++                                                       0x0000FF00,
++                                                       0x000000FF,
++                                                       0xFF000000
++#else
++                                                       0x0000FF00,
++                                                       0x00FF0000,
++                                                       0xFF000000,
++                                                       0x000000FF
++#endif
++                                                      );
++                }
++
+                 if(surface == NULL) {
+-                    fprintf(stderr, "could not load image: %s\n", IMG_GetError());
++                    fprintf(stderr, "could not load image\n");
+                     return false;
+                 }
+ 
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0003-Make-fbdev-device-node-runtime-configurable-via-envi.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0003-Make-fbdev-device-node-runtime-configurable-via-envi.patch
new file mode 100644
index 0000000..73c01cb
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0003-Make-fbdev-device-node-runtime-configurable-via-envi.patch
@@ -0,0 +1,45 @@
+From 85d90749a10b5f91741d37b75825935bf7cc4fb3 Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Tue, 12 Mar 2024 03:00:37 +0100
+Subject: [PATCH 3/6] Make fbdev device node runtime configurable via
+ environment variable
+
+Test whether $LV_VIDEO_CARD environment variable is non-NULL and in
+case it is, use it as the video card file in lv_linux_fbdev_set_file().
+Otherwise fall back to /dev/fb0, i.e. the current behavior. This way,
+it is possible to test LVGL on systems with multiple fbdev devices.
+
+Upstream-Status: Submitted [https://github.com/lvgl/lv_port_linux_frame_buffer/pull/47]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ main.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/main.c b/main.c
+index 9775b9c..b64a098 100644
+--- a/main.c
++++ b/main.c
+@@ -4,13 +4,19 @@
+ #include <pthread.h>
+ #include <time.h>
+ 
++static const char *lv_linux_get_video_card_node(const char *videocard_default)
++{
++    return getenv("LV_VIDEO_CARD") ? : videocard_default;
++}
++
+ int main(void)
+ {
++    const char *videocard = lv_linux_get_video_card_node("/dev/fb0");
+     lv_init();
+ 
+     /*Linux frame buffer device init*/
+     lv_display_t * disp = lv_linux_fbdev_create();
+-    lv_linux_fbdev_set_file(disp, "/dev/fb0");
++    lv_linux_fbdev_set_file(disp, videocard);
+ 
+     /*Create a Demo*/
+     lv_demo_widgets();
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0004-Factor-out-fbdev-initialization-code.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0004-Factor-out-fbdev-initialization-code.patch
new file mode 100644
index 0000000..d24d150
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0004-Factor-out-fbdev-initialization-code.patch
@@ -0,0 +1,52 @@
+From 593da8e11cc5029773ad330b5d7633ee9f2fba95 Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Tue, 12 Mar 2024 18:09:42 +0100
+Subject: [PATCH 4/6] Factor out fbdev initialization code
+
+Pull fbdev initialization code into separate function and add ifdef
+around it, so it can be conditionally compiled in. This is done in
+preparation for addition of other backend initialization example
+code.
+
+Upstream-Status: Submitted [https://github.com/lvgl/lv_port_linux_frame_buffer/pull/47]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ main.c | 18 ++++++++++++++----
+ 1 file changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/main.c b/main.c
+index b64a098..288519c 100644
+--- a/main.c
++++ b/main.c
+@@ -9,14 +9,24 @@ static const char *lv_linux_get_video_card_node(const char *videocard_default)
+     return getenv("LV_VIDEO_CARD") ? : videocard_default;
+ }
+ 
+-int main(void)
++#if LV_USE_LINUX_FBDEV
++static void lv_linux_disp_init(void)
+ {
+     const char *videocard = lv_linux_get_video_card_node("/dev/fb0");
+-    lv_init();
+-
+-    /*Linux frame buffer device init*/
+     lv_display_t * disp = lv_linux_fbdev_create();
++
+     lv_linux_fbdev_set_file(disp, videocard);
++}
++#else
++#error Unsupported configuration
++#endif
++
++int main(void)
++{
++    lv_init();
++
++    /*Linux display device init*/
++    lv_linux_disp_init();
+ 
+     /*Create a Demo*/
+     lv_demo_widgets();
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0005-Add-DRM-KMS-example-support.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0005-Add-DRM-KMS-example-support.patch
new file mode 100644
index 0000000..9ee7a7f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0005-Add-DRM-KMS-example-support.patch
@@ -0,0 +1,59 @@
+From dabf40559428733413432afa29598bc145aa6636 Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Tue, 12 Mar 2024 03:08:13 +0100
+Subject: [PATCH 5/6] Add DRM/KMS example support
+
+Extend the main.c to support both legacy fbdev and DRM/KMS initialization.
+
+To use legacy fbdev support, adjust lv_conf.h as follows:
+LV_USE_LINUX_FBDEV=1
+LV_USE_LINUX_DRM=0
+
+To use DRM/KMS support, adjust lv_conf.h as follows:
+LV_USE_LINUX_FBDEV=0
+LV_USE_LINUX_DRM=1
+
+Upstream-Status: Submitted [https://github.com/lvgl/lv_port_linux_frame_buffer/pull/47]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ CMakeLists.txt | 5 ++++-
+ main.c         | 8 ++++++++
+ 2 files changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index d91b196..c1cfb7f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -12,6 +12,9 @@ target_include_directories(lvgl PUBLIC ${PROJECT_SOURCE_DIR})
+ 
+ add_executable(main main.c mouse_cursor_icon.c)
+ 
+-target_link_libraries(main lvgl lvgl::examples lvgl::demos lvgl::thorvg ${SDL2_LIBRARIES} m pthread)
++include(${CMAKE_CURRENT_LIST_DIR}/lvgl/tests/FindLibDRM.cmake)
++include_directories(${Libdrm_INCLUDE_DIRS})
++
++target_link_libraries(main lvgl lvgl::examples lvgl::demos lvgl::thorvg ${SDL2_LIBRARIES} ${Libdrm_LIBRARIES} m pthread)
+ add_custom_target (run COMMAND ${EXECUTABLE_OUTPUT_PATH}/main DEPENDS main)
+ 
+diff --git a/main.c b/main.c
+index 288519c..ab4e936 100644
+--- a/main.c
++++ b/main.c
+@@ -17,6 +17,14 @@ static void lv_linux_disp_init(void)
+ 
+     lv_linux_fbdev_set_file(disp, videocard);
+ }
++#elif LV_USE_LINUX_DRM
++static void lv_linux_disp_init(void)
++{
++    const char *videocard = lv_linux_get_video_card_node("/dev/dri/card0");
++    lv_display_t * disp = lv_linux_drm_create();
++
++    lv_linux_drm_set_file(disp, videocard, -1);
++}
+ #else
+ #error Unsupported configuration
+ #endif
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0006-Add-SDL2-example-support.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0006-Add-SDL2-example-support.patch
new file mode 100644
index 0000000..691ee80
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0006-Add-SDL2-example-support.patch
@@ -0,0 +1,69 @@
+From b202ce51f7b68c460fcd1b6d9c3ffa8aaf2baaf6 Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Tue, 12 Mar 2024 19:05:38 +0100
+Subject: [PATCH 6/6] Add SDL2 example support
+
+Extend the main.c to support both legacy fbdev, DRM/KMS, SDL2 initialization.
+The SDL2 window resolution can be configured using environment variables
+LV_VIDEO_WIDTH and LV_VIDEO_HEIGHT and defaults to 800 x 480 .
+
+To use legacy fbdev support, adjust lv_conf.h as follows:
+LV_USE_LINUX_FBDEV=1
+LV_USE_LINUX_DRM=0
+LV_USE_SDL=0
+
+To use DRM/KMS support, adjust lv_conf.h as follows:
+LV_USE_LINUX_FBDEV=0
+LV_USE_LINUX_DRM=1
+LV_USE_SDL=0
+
+To use SDL2 support, adjust lv_conf.h as follows:
+LV_USE_LINUX_FBDEV=0
+LV_USE_LINUX_DRM=0
+LV_USE_SDL=1
+
+Upstream-Status: Submitted [https://github.com/lvgl/lv_port_linux_frame_buffer/pull/47]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ CMakeLists.txt | 6 +++++-
+ main.c         | 8 ++++++++
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c1cfb7f..658193f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -15,6 +15,10 @@ add_executable(main main.c mouse_cursor_icon.c)
+ include(${CMAKE_CURRENT_LIST_DIR}/lvgl/tests/FindLibDRM.cmake)
+ include_directories(${Libdrm_INCLUDE_DIRS})
+ 
+-target_link_libraries(main lvgl lvgl::examples lvgl::demos lvgl::thorvg ${SDL2_LIBRARIES} ${Libdrm_LIBRARIES} m pthread)
++find_package(SDL2)
++find_package(SDL2_image)
++include_directories(${SDL2_INCLUDE_DIRS} ${SDL2_IMAGE_INCLUDE_DIRS})
++
++target_link_libraries(main lvgl lvgl::examples lvgl::demos lvgl::thorvg ${SDL2_LIBRARIES} ${SDL2_IMAGE_LIBRARIES} ${Libdrm_LIBRARIES} m pthread)
+ add_custom_target (run COMMAND ${EXECUTABLE_OUTPUT_PATH}/main DEPENDS main)
+ 
+diff --git a/main.c b/main.c
+index ab4e936..4b66ebc 100644
+--- a/main.c
++++ b/main.c
+@@ -25,6 +25,14 @@ static void lv_linux_disp_init(void)
+ 
+     lv_linux_drm_set_file(disp, videocard, -1);
+ }
++#elif LV_USE_SDL
++static void lv_linux_disp_init(void)
++{
++    const int width = atoi(getenv("LV_VIDEO_WIDTH") ? : "800");
++    const int height = atoi(getenv("LV_VIDEO_HEIGHT") ? : "480");
++
++    lv_sdl_window_create(width, height);
++}
+ #else
+ #error Unsupported configuration
+ #endif
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch
new file mode 100644
index 0000000..6997d84
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0007-fix-cmake-generate-versioned-shared-libraries.patch
@@ -0,0 +1,68 @@
+From 40657a770baadfff30abfecf7638e7b1c340db4d Mon Sep 17 00:00:00 2001
+From: Marek Vasut <marex@denx.de>
+Date: Thu, 14 Mar 2024 03:23:10 +0100
+Subject: [PATCH] fix(cmake): generate versioned shared libraries
+
+Add missing version suffix to shared libraries. Currently the filename of
+generated shared libraries is only liblvgl.so, which prevents coexistence
+of different versions of LVGL on the same system. Set VERSION and SOVERSION
+to make cmake add the version suffix to generated shared libraries. That
+changes the filename to liblvgl.so.9.0.0 and includes symlink with major
+ABI version, i.e. liblvgl.so.9 .
+
+Upstream-Status: Submitted [https://github.com/lvgl/lvgl/pull/5865]
+Signed-off-by: Marek Vasut <marex@denx.de>
+---
+ env_support/cmake/custom.cmake | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/env_support/cmake/custom.cmake b/env_support/cmake/custom.cmake
+index 9800468eb..6f33f1cc8 100644
+--- a/env_support/cmake/custom.cmake
++++ b/env_support/cmake/custom.cmake
+@@ -1,3 +1,6 @@
++set(LVGL_VERSION "9.0.0")
++set(LVGL_SOVERSION "9")
++
+ # Option to define LV_LVGL_H_INCLUDE_SIMPLE, default: ON
+ option(LV_LVGL_H_INCLUDE_SIMPLE
+        "Use #include \"lvgl.h\" instead of #include \"../../lvgl.h\"" ON)
+@@ -119,6 +122,8 @@ install(
+ set_target_properties(
+   lvgl
+   PROPERTIES OUTPUT_NAME lvgl
++             VERSION ${LVGL_VERSION}
++             SOVERSION ${LVGL_SOVERSION}
+              ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+              LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+              RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+@@ -137,6 +142,8 @@ if(NOT LV_CONF_BUILD_DISABLE_THORVG_INTERNAL)
+   set_target_properties(
+     lvgl_thorvg
+     PROPERTIES OUTPUT_NAME lvgl_thorvg
++               VERSION ${LVGL_VERSION}
++               SOVERSION ${LVGL_SOVERSION}
+                ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+@@ -155,6 +162,8 @@ if(NOT LV_CONF_BUILD_DISABLE_DEMOS)
+   set_target_properties(
+     lvgl_demos
+     PROPERTIES OUTPUT_NAME lvgl_demos
++               VERSION ${LVGL_VERSION}
++               SOVERSION ${LVGL_SOVERSION}
+                ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+@@ -173,6 +182,8 @@ if(NOT LV_CONF_BUILD_DISABLE_EXAMPLES)
+   set_target_properties(
+     lvgl_examples
+     PROPERTIES OUTPUT_NAME lvgl_examples
++               VERSION ${LVGL_VERSION}
++               SOVERSION ${LVGL_SOVERSION}
+                ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
+                RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
+-- 
+2.43.0
+
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0008-fix-fbdev-set-resolution-prior-to-buffer.patch b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0008-fix-fbdev-set-resolution-prior-to-buffer.patch
new file mode 100644
index 0000000..449db53
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/files/0008-fix-fbdev-set-resolution-prior-to-buffer.patch
@@ -0,0 +1,29 @@
+From a6f822f75b3ba01b00c028608c93160d09a6ffd1 Mon Sep 17 00:00:00 2001
+From: Jaeyoon Jung <jaeyoon.jung@lge.com>
+Date: Mon, 1 Apr 2024 18:00:39 +0900
+Subject: [PATCH] fix(fbdev): set resolution prior to buffer
+
+Otherwise it ends up with using the default value 800x480 and may fail
+at lv_display_set_buffers due to incorrect resolution.
+
+Upstream-Status: Submitted [https://github.com/lvgl/lvgl/pull/6004]
+Signed-off-by: Jaeyoon Jung <jaeyoon.jung@lge.com>
+---
+
+ src/drivers/display/fb/lv_linux_fbdev.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drivers/display/fb/lv_linux_fbdev.c b/src/drivers/display/fb/lv_linux_fbdev.c
+index b3cc89199..5fb4c5c9f 100644
+--- a/src/drivers/display/fb/lv_linux_fbdev.c
++++ b/src/drivers/display/fb/lv_linux_fbdev.c
+@@ -233,8 +233,8 @@ void lv_linux_fbdev_set_file(lv_display_t * disp, const char * file)
+         draw_buf_2 = malloc(draw_buf_size);
+     }
+ 
+-    lv_display_set_buffers(disp, draw_buf, draw_buf_2, draw_buf_size, LV_LINUX_FBDEV_RENDER_MODE);
+     lv_display_set_resolution(disp, hor_res, ver_res);
++    lv_display_set_buffers(disp, draw_buf, draw_buf_2, draw_buf_size, LV_LINUX_FBDEV_RENDER_MODE);
+ 
+     if(width > 0) {
+         lv_display_set_dpi(disp, DIV_ROUND_UP(hor_res * 254, width * 10));
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-conf.inc b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-conf.inc
new file mode 100644
index 0000000..8fd3412
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-conf.inc
@@ -0,0 +1,76 @@
+PACKAGECONFIG ??= "drm"
+
+PACKAGECONFIG[drm] = ",,libdrm"
+PACKAGECONFIG[fbdev] = ",,"
+PACKAGECONFIG[sdl] = ",,virtual/libsdl2 libsdl2-image"
+
+# Add libdrm include if drm is selected in PACKAGECONFIG
+TARGET_CFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'drm', '-I${STAGING_INCDIR}/libdrm', '', d)}"
+
+LVGL_CONFIG_USE_DRM = "${@bb.utils.contains('PACKAGECONFIG', 'drm', '1', '0', d)}"
+
+LVGL_CONFIG_USE_EVDEV = "${@bb.utils.contains_any('PACKAGECONFIG', 'drm fbdev', '1', '0', d)}"
+
+LVGL_CONFIG_USE_FBDEV = "${@bb.utils.contains('PACKAGECONFIG', 'fbdev', '1', '0', d)}"
+
+LVGL_CONFIG_USE_SDL = "${@bb.utils.contains('PACKAGECONFIG', 'sdl', '1', '0', d)}"
+LVGL_CONFIG_SDL_FULLSCREEN ?= "0"
+
+LVGL_CONFIG_LV_MEM_CUSTOM ?= "0"
+LVGL_CONFIG_LV_MEM_SIZE ?= "(64 * 1024U)"
+LVGL_CONFIG_LV_COLOR_DEPTH ?= "32"
+
+LVGL_CONFIG_LV_USE_LOG    ?= "0"
+LVGL_CONFIG_LV_LOG_LEVEL  ?= "LV_LOG_LEVEL_WARN"
+LVGL_CONFIG_LV_LOG_PRINTF ?= "0"
+
+LVGL_CONFIG_LV_USE_FONT_COMPRESSED ?= "0"
+
+LVGL_CONFIG_LV_THEME_DEFAULT_DARK ?= "0"
+
+DEBUG_BUILD ??= "0"
+
+ALLOW_EMPTY:${PN} = "1"
+
+EXTRA_OECMAKE += "-Dinstall:BOOL=ON -DLIB_INSTALL_DIR=${baselib}"
+
+do_configure:append() {
+    # If there is a configuration template, start from that
+    [ -r "${S}/lv_conf_template.h" ] && cp -Lv "${S}/lv_conf_template.h" "${S}/lv_conf.h"
+
+    sed -r -e "s|#if 0 .*Set it to \"1\" to enable content.*|#if 1 // Enabled by ${PN}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_LINUX_DRM[[:space:]]).*|\1${LVGL_CONFIG_USE_DRM}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_LINUX_FBDEV[[:space:]]).*|\1${LVGL_CONFIG_USE_FBDEV}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_SDL[[:space:]]).*|\1${LVGL_CONFIG_USE_SDL}|" \
+        -e "s|^([[:space:]]*#define LV_USE_DRAW_SDL[[:space:]]).*|\1${LVGL_CONFIG_USE_SDL}|" \
+        -e "s|^([[:space:]]*#define LV_SDL_BUF_COUNT[[:space:]]).*|\1 2|" \
+        -e "s|^([[:space:]]*#define LV_SDL_FULLSCREEN[[:space:]]).*|\1${LVGL_CONFIG_SDL_FULLSCREEN}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_COLOR_DEPTH[[:space:]]).*|\1${LVGL_CONFIG_LV_COLOR_DEPTH}|" \
+        -e "s|^([[:space:]]*#define LV_MEM_CUSTOM[[:space:]]).*|\1${LVGL_CONFIG_LV_MEM_CUSTOM}|" \
+        -e "s|^([[:space:]]*#define LV_MEM_SIZE[[:space:]]).*|\1${LVGL_CONFIG_LV_MEM_SIZE}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_TICK_CUSTOM[[:space:]]).*|\1 1|" \
+        -e "s|^([[:space:]]*#define LV_TICK_CUSTOM_INCLUDE[[:space:]]).*|\1 <stdint.h>|" \
+        -e "s|^([[:space:]]*#define LV_TICK_CUSTOM_SYS_TIME_EXPR[[:space:]]).*|extern uint32_t custom_tick_get(void);\n\1 (custom_tick_get())|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_EVDEV[[:space:]]).*|\1${LVGL_CONFIG_USE_EVDEV}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_ASSERT_NULL[[:space:]]).*|\1${DEBUG_BUILD}|" \
+        -e "s|^([[:space:]]*#define LV_USE_ASSERT_MALLOC[[:space:]]).*|\1${DEBUG_BUILD}|" \
+        -e "s|^([[:space:]]*#define LV_USE_ASSERT_STYLE[[:space:]]).*|\1${DEBUG_BUILD}|" \
+        -e "s|^([[:space:]]*#define LV_USE_ASSERT_MEM_INTEGRITY[[:space:]]).*|\1${DEBUG_BUILD}|" \
+        -e "s|^([[:space:]]*#define LV_USE_ASSERT_OBJ[[:space:]]).*|\1${DEBUG_BUILD}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_LOG[[:space:]]).*|\1${LVGL_CONFIG_LV_USE_LOG}|" \
+        -e "s|^([[:space:]]*#define LV_LOG_LEVEL[[:space:]]).*|\1${LVGL_CONFIG_LV_LOG_LEVEL}|" \
+        -e "s|^([[:space:]]*#define LV_LOG_PRINTF[[:space:]]).*|\1${LVGL_CONFIG_LV_LOG_PRINTF}|" \
+        \
+        -e "s|^([[:space:]]*#define LV_USE_FONT_COMPRESSED[[:space:]]).*|\1${LVGL_CONFIG_LV_USE_FONT_COMPRESSED}|" \
+        -e "s|^([[:space:]]*#define LV_THEME_DEFAULT_DARK[[:space:]]).*|\1${LVGL_CONFIG_LV_THEME_DEFAULT_DARK}|" \
+        \
+        -i "${S}/lv_conf.h"
+}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers.inc b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers.inc
deleted file mode 100644
index 6cfb7fa..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers.inc
+++ /dev/null
@@ -1,48 +0,0 @@
-PACKAGECONFIG[drm] = ",,libdrm"
-PACKAGECONFIG[fbdev] = ",,"
-PACKAGECONFIG[sdl] = ",,virtual/libsdl2"
-PACKAGECONFIG[wayland] = ",,libxkbcommon wayland"
-
-LVGL_CONFIG_USE_DRM = "${@bb.utils.contains('PACKAGECONFIG', 'drm', '1', '0', d)}"
-LVGL_CONFIG_DRM_CARD ?= "/dev/dri/card0"
-
-LVGL_CONFIG_USE_EVDEV = "${@bb.utils.contains_any('PACKAGECONFIG', 'drm fbdev', '1', '0', d)}"
-LVGL_CONFIG_EVDEV_INPUT ?= "/dev/input/touchscreen"
-
-LVGL_CONFIG_USE_FBDEV = "${@bb.utils.contains('PACKAGECONFIG', 'fbdev', '1', '0', d)}"
-
-LVGL_CONFIG_USE_SDL = "${@bb.utils.contains('PACKAGECONFIG', 'sdl', '1', '0', d)}"
-
-LVGL_CONFIG_USE_WAYLAND = "${@bb.utils.contains('PACKAGECONFIG', 'wayland', '1', '0', d)}"
-LVGL_CONFIG_WAYLAND_HOR_RES ?= "480"
-LVGL_CONFIG_WAYLAND_VER_RES ?= "320"
-
-ALLOW_EMPTY:${PN} = "1"
-
-EXTRA_OECMAKE += "-Dinstall:BOOL=ON -DLIB_INSTALL_DIR=${baselib}"
-
-do_configure:append() {
-    # If there is a configuration template, start from that
-    [ -r "${S}/lv_drv_conf_template.h" ] && cp -Lv "${S}/lv_drv_conf_template.h" "${S}/lv_drv_conf.h"
-
-    # Configure the software using sed
-    sed -e "s|#if 0 .*Set it to \"1\" to enable the content.*|#if 1 // Enabled by ${PN}|g" \
-        \
-        -e "s|\(^#  define USE_DRM \).*|#  define USE_DRM ${LVGL_CONFIG_USE_DRM}|g" \
-        -e "s|\(^#  define DRM_CARD \).*|#  define DRM_CARD \"${LVGL_CONFIG_DRM_CARD}\"|g" \
-	\
-        -e "s|\(^#  define USE_EVDEV \).*|#  define USE_EVDEV ${LVGL_CONFIG_USE_EVDEV}|g" \
-        -e "s|\(^#  define EVDEV_NAME \).*|#  define EVDEV_NAME \"${LVGL_CONFIG_EVDEV_INPUT}\"|g" \
-        \
-        -e "s|\(^#  define USE_FBDEV \).*|#  define USE_FBDEV ${LVGL_CONFIG_USE_FBDEV}|g" \
-        \
-        -e "s|\(^# define USE_SDL \).*|#  define USE_SDL ${LVGL_CONFIG_USE_SDL}|g" \
-        -e "s|\(^#  define USE_SDL_GPU \).*|#  define USE_SDL_GPU 1|g" \
-        -e "s|\(^#  define SDL_DOUBLE_BUFFERED \).*|#  define SDL_DOUBLE_BUFFERED 1|g" \
-        \
-        -e "s|\(^#  define USE_WAYLAND \).*|#  define USE_WAYLAND ${LVGL_CONFIG_USE_WAYLAND}|g" \
-        -e "s|\(^ *# *define *WAYLAND_HOR_RES *\).*|\1${LVGL_CONFIG_WAYLAND_HOR_RES}|g" \
-        -e "s|\(^ *# *define *WAYLAND_VER_RES *\).*|\1${LVGL_CONFIG_WAYLAND_VER_RES}|g" \
-        \
-        -i "${S}/lv_drv_conf.h"
-}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers_8.3.0.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers_8.3.0.bb
deleted file mode 100644
index e2c5a34..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-drivers_8.3.0.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-#
-# SPDX-License-Identifier: MIT
-
-HOMEPAGE = "https://docs.lvgl.io/latest/en/html/porting/index.html"
-SUMMARY = "LVGL's Display and Touch pad drivers"
-DESCRIPTION = "Collection of drivers: SDL, framebuffer, wayland and more..."
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d6fc0df890c5270ef045981b516bb8f2"
-
-SRC_URI = "git://github.com/lvgl/lv_drivers;protocol=https;branch=release/v8.3"
-SRCREV = "71830257710f430b6d8d1c324f89f2eab52488f1"
-
-DEPENDS = "lvgl"
-
-PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland fbdev', d)}"
-require lv-drivers.inc
-
-inherit cmake
-
-S = "${WORKDIR}/git"
-
-TARGET_CFLAGS += "-DLV_CONF_INCLUDE_SIMPLE=1"
-TARGET_CFLAGS += "-I${STAGING_INCDIR}/lvgl"
-
-FILES:${PN}-dev += "\
-    ${includedir}/lvgl/lv_drivers/ \
-    "
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb
deleted file mode 100644
index 0049bbe..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lv-lib-png_8.0.2.bb
+++ /dev/null
@@ -1,31 +0,0 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-#
-# SPDX-License-Identifier: MIT
-
-HOMEPAGE = "https://docs.lvgl.io"
-SUMMARY = "PNG decoder for LVGL"
-DESCRIPTION = "Allow the use of PNG images in LVGL. This implementation uses lodepng"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=d6fc0df890c5270ef045981b516bb8f2"
-
-SRC_URI = "git://github.com/lvgl/lv_lib_png;;protocol=https;branch=master"
-SRCREV = "bf1531afe07c9f861107559e29ab8a2d83e4715a"
-
-S = "${WORKDIR}/git"
-
-# because of lvgl dependency
-REQUIRED_DISTRO_FEATURES = "wayland"
-
-DEPENDS += "lvgl"
-
-EXTRA_OECMAKE += "-DLIB_INSTALL_DIR=${baselib}"
-
-inherit cmake
-inherit features_check
-
-TARGET_CFLAGS += "-DLV_CONF_INCLUDE_SIMPLE=1"
-TARGET_CFLAGS += "-I${STAGING_INCDIR}/lvgl"
-
-FILES:${PN}-dev = "\
-    ${includedir}/lvgl/lv_lib_png/ \
-    "
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_8.3.0.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_8.3.0.bb
deleted file mode 100644
index 32f833a..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_8.3.0.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "LVGL Demo Application for Framebuffer"
-HOMEPAGE = "https://github.com/lvgl/lv_port_linux_frame_buffer"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=802d3d83ae80ef5f343050bf96cce3a4 \
-                    file://lv_drivers/LICENSE;md5=d6fc0df890c5270ef045981b516bb8f2 \
-                    file://lvgl/LICENCE.txt;md5=bf1198c89ae87f043108cea62460b03a"
-
-SRC_URI = "gitsm://github.com/lvgl/lv_port_linux_frame_buffer.git;branch=master;protocol=https"
-SRCREV = "adf2c4490e17a1b9ec1902cc412a24b3b8235c8e"
-
-EXTRA_OEMAKE = "DESTDIR=${D}"
-
-PACKAGECONFIG ??= "drm"
-require lv-drivers.inc
-
-inherit cmake
-
-S = "${WORKDIR}/git"
-
-TARGET_CFLAGS += "-I${STAGING_INCDIR}/libdrm"
-
-do_configure:prepend() {
-	if [ "${LVGL_CONFIG_USE_DRM}" -eq 1 ] ; then
-		# Add libdrm build dependency
-		sed -i '/^target_link_libraries/ s@lvgl::drivers@& drm@' "${S}/CMakeLists.txt"
-		# Switch from fbdev to drm usage
-		sed -i 's@fbdev@drm@g' "${S}/main.c"
-		# Pull resolution from DRM instead of hardcoding it
-		sed -i '/disp_drv.hor_res/ d' "${S}/main.c"
-		sed -i '/disp_drv.ver_res/ s@disp_drv.ver_res.*@drm_get_sizes(\&disp_drv.hor_res, \&disp_drv.ver_res, NULL);@' "${S}/main.c"
-	fi
-
-	if [ "${LVGL_CONFIG_USE_SDL}" -eq 1 ] ; then
-		# Add libsdl build dependency
-		sed -i '/^target_link_libraries/ s@lvgl::drivers@& SDL2@' "${S}/CMakeLists.txt"
-		# Switch from fbdev to sdl usage
-		sed -i 's@fbdev_flush@sdl_display_flush@g' "${S}/main.c"
-		sed -i 's@lv_drivers/display/fbdev.h@lv_drivers/sdl/sdl.h@g' "${S}/main.c"
-		sed -i 's@fbdev@sdl@g' "${S}/main.c"
-	fi
-}
-
-do_install:append() {
-	install -d ${D}${bindir}
-	install -m 0755 ${B}/lvgl_fb ${D}${bindir}/
-}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.1.0.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.1.0.bb
new file mode 100644
index 0000000..6e8371b
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl-demo-fb_9.1.0.bb
@@ -0,0 +1,45 @@
+SUMMARY = "LVGL Demo Application for Framebuffer"
+HOMEPAGE = "https://github.com/lvgl/lv_port_linux_frame_buffer"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=802d3d83ae80ef5f343050bf96cce3a4 \
+                    file://lvgl/LICENCE.txt;md5=bf1198c89ae87f043108cea62460b03a"
+
+SRC_URI = "\
+	git://github.com/lvgl/lv_port_linux_frame_buffer.git;protocol=https;branch=master;name=demo \
+	git://github.com/lvgl/lvgl;protocol=https;branch=master;name=lvgl;subdir=git/lvgl \
+	file://0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch;patchdir=lvgl \
+	file://0003-Make-fbdev-device-node-runtime-configurable-via-envi.patch \
+	file://0004-Factor-out-fbdev-initialization-code.patch \
+	file://0005-Add-DRM-KMS-example-support.patch \
+	file://0006-Add-SDL2-example-support.patch \
+	file://0007-fix-cmake-generate-versioned-shared-libraries.patch;patchdir=lvgl \
+	file://0008-fix-fbdev-set-resolution-prior-to-buffer.patch;patchdir=lvgl \
+	"
+SRCREV_demo = "dccc6a1ca48372aa993dbea7a8e17dec6f42df6a"
+SRCREV_lvgl = "e1c0b21b2723d391b885de4b2ee5cc997eccca91"
+SRCREV_FORMAT = "demo_lvgl"
+
+EXTRA_OEMAKE = "DESTDIR=${D}"
+
+LVGL_CONFIG_DRM_CARD ?= "/dev/dri/card0"
+LVGL_CONFIG_LV_USE_LOG    = "1"
+LVGL_CONFIG_LV_LOG_PRINTF = "1"
+LVGL_CONFIG_LV_MEM_SIZE = "(256 * 1024U)"
+LVGL_CONFIG_LV_USE_FONT_COMPRESSED = "1"
+require lv-conf.inc
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+do_configure:prepend() {
+	if [ "${LVGL_CONFIG_USE_SDL}" -eq 1 ] ; then
+		# Add libsdl build dependency, SDL2_image has no cmake file
+		sed -i '/^target_link_libraries/ s@pthread@& SDL2_image@' "${S}/CMakeLists.txt"
+	fi
+}
+
+do_install:append() {
+	install -d ${D}${bindir}
+	install -m 0755 ${S}/bin/main ${D}${bindir}/lvgl
+}
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_8.3.11.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_8.3.11.bb
deleted file mode 100644
index 2523680..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_8.3.11.bb
+++ /dev/null
@@ -1,44 +0,0 @@
-# SPDX-FileCopyrightText: Huawei Inc.
-#
-# SPDX-License-Identifier: MIT
-
-HOMEPAGE = "https://lvgl.io/"
-DESCRIPTION = "LVGL is an OSS graphics library to create embedded GUI"
-SUMMARY = "Light and Versatile Graphics Library"
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=bf1198c89ae87f043108cea62460b03a"
-
-SRC_URI = "git://github.com/lvgl/lvgl;protocol=https;branch=release/v8.3"
-SRCREV = "74d0a816a440eea53e030c4f1af842a94f7ce3d3"
-
-inherit cmake
-
-EXTRA_OECMAKE = "-DLIB_INSTALL_DIR=${baselib}"
-S = "${WORKDIR}/git"
-
-ALLOW_EMPTY:${PN} = "1"
-
-LVGL_CONFIG_LV_MEM_CUSTOM ?= "0"
-LVGL_CONFIG_LV_COLOR_DEPTH ?= "32"
-
-# Upstream does not support a default configuration
-# but propose a default "disabled" template, which is used as reference
-# More configuration can be done using external configuration variables
-do_configure:prepend() {
-    [ -r "${S}/lv_conf.h" ] \
-        || sed -e 's|#if 0 .*Set it to "1" to enable .*|#if 1 // Enabled|g' \
-	    -e "s|\(#define LV_COLOR_DEPTH \).*|\1 ${LVGL_CONFIG_LV_COLOR_DEPTH}|g" \
-	    \
-	    -e "s|\(#define LV_MEM_CUSTOM .*\)0|\1${LVGL_CONFIG_LV_MEM_CUSTOM}|g" \
-	    \
-	    -e "s|\(#define LV_TICK_CUSTOM \).*|\1 1|g" \
-	    -e "s|\(#define LV_TICK_CUSTOM_INCLUDE \).*|\1 <stdint.h>|g" \
-	    -e "s|\(#define LV_TICK_CUSTOM_SYS_TIME_EXPR \).*|extern uint32_t custom_tick_get(void);\n\1 (custom_tick_get())|g" \
-	    \
-            < "${S}/lv_conf_template.h" > "${S}/lv_conf.h"
-}
-
-FILES:${PN}-dev += "\
-    ${includedir}/${PN}/ \
-    ${includedir}/${PN}/lvgl/ \
-    "
diff --git a/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_9.1.0.bb b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_9.1.0.bb
new file mode 100644
index 0000000..4435c40
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/lvgl/lvgl_9.1.0.bb
@@ -0,0 +1,33 @@
+# SPDX-FileCopyrightText: Huawei Inc.
+#
+# SPDX-License-Identifier: MIT
+
+HOMEPAGE = "https://lvgl.io/"
+DESCRIPTION = "LVGL is an OSS graphics library to create embedded GUI"
+SUMMARY = "Light and Versatile Graphics Library"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=bf1198c89ae87f043108cea62460b03a"
+
+SRC_URI = "\
+	git://github.com/lvgl/lvgl;protocol=https;branch=master \
+	file://0002-fix-sdl-handle-both-LV_IMAGE_SRC_FILE-and-LV_IMAGE_S.patch \
+	file://0007-fix-cmake-generate-versioned-shared-libraries.patch \
+	file://0008-fix-fbdev-set-resolution-prior-to-buffer.patch \
+	"
+SRCREV = "e1c0b21b2723d391b885de4b2ee5cc997eccca91"
+
+inherit cmake
+
+EXTRA_OECMAKE = "-DLIB_INSTALL_DIR=${baselib} -DBUILD_SHARED_LIBS=ON"
+S = "${WORKDIR}/git"
+
+require lv-conf.inc
+
+do_install:append() {
+    install -d "${D}${includedir}/${PN}"
+    install -m 0644 "${S}/lv_conf.h" "${D}${includedir}/${PN}/lv_conf.h"
+}
+
+FILES:${PN}-dev += "\
+    ${includedir}/${PN}/ \
+    "
diff --git a/meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.7.2.bb b/meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.8.0.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.7.2.bb
rename to meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.8.0.bb
index 152409d..c9c4a6c 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.7.2.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/neatvnc/neatvnc_0.8.0.bb
@@ -4,9 +4,9 @@
 LICENSE = "ISC"
 LIC_FILES_CHKSUM = "file://COPYING;md5=94fc374e7174f41e3afe0f027ee59ff7"
 
-SRC_URI = "git://github.com/any1/neatvnc;branch=v0.7;protocol=https"
+SRC_URI = "git://github.com/any1/neatvnc;branch=master;protocol=https"
 
-SRCREV = "14619e6281136a02e376ad23e3cfaedc8de00ffb"
+SRCREV = "46432ce8cade0b54a38d4bb42eb07f96c8ff49fd"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/packagegroups/packagegroup-fonts-truetype.bb b/meta-openembedded/meta-oe/recipes-graphics/packagegroups/packagegroup-fonts-truetype.bb
index 0af6ac0..1cc2cdf 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/packagegroups/packagegroup-fonts-truetype.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/packagegroups/packagegroup-fonts-truetype.bb
@@ -3,7 +3,6 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 PV = "1.0"
-PR = "r2"
 
 inherit packagegroup
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.bb b/meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.1.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.bb
rename to meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.1.bb
index 517d467..18499cf 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/suckless/st_0.9.1.bb
@@ -7,7 +7,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[sha256sum] = "f36359799734eae785becb374063f0be833cf22f88b4f169cd251b99324e08e7"
+SRC_URI[sha256sum] = "16f43b9433ade9d70d6085c31f9fd99f2835eaade31221020f22143035dfc0d2"
 
 DEPENDS += "libx11 libxft fontconfig ncurses-native"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-arphic-uming_20080216.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-arphic-uming_20080216.bb
index 05ece8b..ea73418 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-arphic-uming_20080216.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-arphic-uming_20080216.bb
@@ -4,7 +4,6 @@
 LIC_FILES_CHKSUM = "file://license/english/ARPHICPL.TXT;md5=4555ed88e9a72fc9562af379d07c3350"
 
 RPROVIDES:${PN} = "virtual-chinese-font"
-PR = "r6"
 
 FONT_PACKAGES = "${PN}"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-dejavu_2.37.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-dejavu_2.37.bb
index 919dad8..43a387b 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-dejavu_2.37.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-dejavu_2.37.bb
@@ -13,7 +13,6 @@
 RDEPENDS:${PN}-serif-condensed = "${PN}-common"
 RDEPENDS:${PN}-mathtexgyre = "${PN}-common"
 RDEPENDS:${PN}-common = ""
-PR = "r7"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/dejavu/dejavu-fonts-ttf-${PV}.tar.bz2 \
            file://30-dejavu-aliases.conf"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-droid_git.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-droid_git.bb
index f223664..cc9213e 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-droid_git.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-droid_git.bb
@@ -6,7 +6,6 @@
 LIC_FILES_CHKSUM = "file://README.txt;md5=83544262a86f1f1ec761e75897df92bc"
 SRCREV = "21e6e2de1f0062f949fcc52d0b4559dfa3246e0e"
 PV = "0.1+git"
-PR = "r3"
 
 SRC_URI = "git://github.com/android/platform_frameworks_base.git;branch=master;protocol=https"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-gentium_1.02.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-gentium_1.02.bb
index eb13b47..2439766 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-gentium_1.02.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-gentium_1.02.bb
@@ -6,7 +6,6 @@
 LICENSE_URL = "http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=OFL"
 LIC_FILES_CHKSUM = "file://OFL;md5=33a5bf7b98a9c0ae87430760ba762295 \
 "
-PR = "r8"
 
 SRC_URI = "https://archive.debian.org/debian/pool/main/t/ttf-gentium/ttf-gentium_${PV}.orig.tar.gz "
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-hunkyfonts_0.3.1.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-hunkyfonts_0.3.1.bb
index e361ce9..8a75fe3 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-hunkyfonts_0.3.1.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-hunkyfonts_0.3.1.bb
@@ -4,7 +4,6 @@
 HOMEPAGE = "http://sourceforge.net/projects/hunkyfonts"
 LICENSE = "LGPL-2.1-or-later"
 LIC_FILES_CHKSUM = "file://../COPYRIGHT.TXT;md5=70d34478e38b1ad9995079f9921f9ef7"
-PR = "r7"
 
 SRC_URI = "${SOURCEFORGE_MIRROR}/hunkyfonts/hunkyfonts-${PV}.tar.bz2"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
index fdcfe04..6d7ba11 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-liberation_0.2.bb
@@ -7,7 +7,6 @@
                     file://License.txt;md5=5b171c5100029d884fcea21d9a2b7543 \
 "
 
-PR = "r7"
 
 SRC_URI = "http://fedorahosted.org/liberation-fonts/export/807b6dfd069b998cd9b4d3158da98817ef23c79d/F-9/liberation-fonts-ttf-3.tar.gz"
 S = "${WORKDIR}/liberation-fonts-${PV}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-mplus_027.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-mplus_027.bb
index a048075..a3babe9 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-mplus_027.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-mplus_027.bb
@@ -6,7 +6,6 @@
 LIC_FILES_CHKSUM = "file://LICENSE_E;md5=ac161e96eda00db9a3aec7870b5d9658 \
                     file://LICENSE_J;md5=a120ca8d7c8e4a475d5277c9aeb95221 \
 "
-PR = "r4"
 SRC_URI = "http://downloads.sourceforge.jp/mplus-fonts/6650/mplus-TESTFLIGHT-${PV}.tar.gz"
 S = "${WORKDIR}/mplus-TESTFLIGHT-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-sazanami_20040629.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-sazanami_20040629.bb
index c7229df..a4ad91f 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-sazanami_20040629.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-sazanami_20040629.bb
@@ -8,7 +8,6 @@
 LIC_FILES_CHKSUM = "file://README;md5=97d739900be6e852830f55aa3c07d4a0"
 
 RPROVIDES:${PN} = "virtual-japanese-font"
-PR = "r9"
 
 SRC_URI = "http://osdn.dl.sourceforge.jp/efont/10087/sazanami-20040629.tar.bz2"
 S = "${WORKDIR}/sazanami-20040629"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-ubuntu-font-family_0.83.bb b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-ubuntu-font-family_0.83.bb
index e81515f..d118769 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-ubuntu-font-family_0.83.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/ttf-fonts/ttf-ubuntu-font-family_0.83.bb
@@ -4,7 +4,6 @@
 HOMEPAGE = "http://font.ubuntu.com"
 LICENSE = "UFL"
 LIC_FILES_CHKSUM = "file://LICENCE.txt;md5=325a1a9029112a2405e743c7f816427b"
-PR = "r1"
 
 SHA1SUM = "0cef8205"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-Remove-dead-variable-984.patch b/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-Remove-dead-variable-984.patch
deleted file mode 100644
index c29d80a..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/vk-gl-cts/files/0001-Remove-dead-variable-984.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0d863b444c9a54a92dab176b1b656c116923e1ca Mon Sep 17 00:00:00 2001
-From: alan-baker <alanbaker@google.com>
-Date: Wed, 30 Mar 2022 12:59:28 -0400
-Subject: [PATCH] Remove dead variable (#984)
-
-Upstream-Status: Backport [https://github.com/google/amber/commit/627ee453d6047ced0e2dd13cde983b341d0615e3]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/vkscript/command_parser.cc | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/src/vkscript/command_parser.cc b/src/vkscript/command_parser.cc
-index 610c7e6..3429d4d 100644
---- a/src/vkscript/command_parser.cc
-+++ b/src/vkscript/command_parser.cc
-@@ -486,7 +486,6 @@ Result CommandParser::ParseValues(const std::string& name,
-                                   std::vector<Value>* values) {
-   assert(values);
- 
--  uint32_t row_index = 0;
-   auto token = tokenizer_->NextToken();
-   size_t seen = 0;
-   while (!token->IsEOL() && !token->IsEOS()) {
-@@ -515,7 +514,6 @@ Result CommandParser::ParseValues(const std::string& name,
-     values->push_back(v);
-     token = tokenizer_->NextToken();
- 
--    ++row_index;
-     ++seen;
-   }
- 
--- 
-2.37.3
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/wayland/waylandpp_1.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/wayland/waylandpp_1.0.0.bb
index eb8ec4f..c1f5f4e 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/wayland/waylandpp_1.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/wayland/waylandpp_1.0.0.bb
@@ -37,4 +37,9 @@
 	-DCMAKE_EXE_LINKER_FLAGS="-Wl,--enable-new-dtags" \
 "
 
+do_install:append:class-target() {
+    sed -i -e 's|${S}||g' ${D}${libdir}/cmake/waylandpp/waylandpp-targets.cmake
+    sed -i -e 's|${STAGING_DIR_HOST}||g' ${D}${libdir}/cmake/waylandpp/waylandpp-targets.cmake
+}
+
 BBCLASSEXTEND += "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.9.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.10.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.9.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.10.bb
index ea0ef0a..7d025de 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.9.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/iceauth_1.0.10.bb
@@ -12,5 +12,5 @@
 DEPENDS += "libice"
 
 SRC_URI_EXT = "xz"
-SRC_URI[sha256sum] = "2cb9dfcb545683af77fb1029bea3fc52dcc8a0666f7b8b2d7373b6ed4c408c05"
+SRC_URI[sha256sum] = "3deefb7da26af9dc799b5628d929d91c9af68c78575639944db3b955f29aa029"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.6.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.7.bb
similarity index 72%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.6.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.7.bb
index cb12383..6682784 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.6.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xmessage_1.0.7.bb
@@ -6,5 +6,5 @@
 
 DEPENDS += "libxaw"
 
-SRC_URI[sha256sum] = "d2eac545f137156b960877e052fcc8e29795ed735c02f7690fd7b439e6846a12"
+SRC_URI[sha256sum] = "703fccb7a0b772d61d7e603c189b9739866aa97ba985c727275420f829a30356"
 SRC_URI_EXT = "xz"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.7.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.1.0.bb
similarity index 80%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.7.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.1.0.bb
index 6f6ad73..12d05b1 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.0.7.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-app/xrefresh_1.1.0.bb
@@ -9,5 +9,5 @@
 
 BBCLASSEXTEND = "native"
 
-SRC_URI[sha256sum] = "a9f1d635f2f42283d0174e94d09ab69190c227faa5ab542bfe15ed9607771b1e"
+SRC_URI[sha256sum] = "29ed592d5ece35a3029004d8c46f3002f92970870a96c11e38baf7f1122b8b5f"
 SRC_URI_EXT = "xz"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-void_1.4.2.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-void_1.4.2.bb
index 54a6476..7a12272 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-void_1.4.2.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-input-void_1.4.2.bb
@@ -1,6 +1,5 @@
 require recipes-graphics/xorg-driver/xorg-driver-input.inc
 SUMMARY = "X.Org X server -- void input driver"
-PR = "r22"
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=4be6a915bfbf111cd88706fc6a6f141b"
 
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.15.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.16.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.15.bb
rename to meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.16.bb
index 253bb6f..ee14cf7 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.15.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-lib/libxaw_1.0.16.bb
@@ -8,7 +8,7 @@
 
 XORG_PN = "libXaw"
 
-SRC_URI[sha256sum] = "ab35f70fde9fb02cc71b342f654846a74328b74cb3a0703c02d20eddb212754a"
+SRC_URI[sha256sum] = "731d572b54c708f81e197a6afa8016918e2e06dfd3025e066ca642a5b8c39c8f"
 
 do_install:append () {
     ln -sf libXaw6.so.6 ${D}${libdir}/libXaw.so.6
diff --git a/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb b/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
index 574d259..3f577bf 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb
@@ -2,7 +2,6 @@
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
 
-PR = "r9"
 
 # we are using a gpe-style Makefile
 inherit features_check gpe